Skip to content

integration-tests workflow red on main: every Citrus integration fails to resolve run.deps (camel-jackson-avro/protobuf) #2897

Description

@oscerd

Summary

The integration-tests workflow has been failing on main for a long time (and therefore shows test red on every PR). The entire CommonIT Citrus suite fails — including long-standing tests (timer-to-http, log-sink, earthquake-to-http, all the transformation/header/filter tests). Root cause: every camel jbang run fails to resolve the extra dependencies declared in run.deps, producing a mangled Maven coordinate.

Symptom

Each integration fails at the verify step, preceded by a dependency-resolution error:

CamelVerifyIntegrationAction : Failed to verify Camel integration '<name>' - exit code 1
[jbang] [ERROR] Could not read artifact descriptor for
  org.apache.camel:camel-jackson-avro:jar:camel-jackson-protobuf:4.21.0-SNAPSHOT:4.21.0-SNAPSHOT,org.apache.camel

The two run.deps coordinates (camel-jackson-avro + camel-jackson-protobuf) are mashed together into a single malformed coordinate. HTTP-based tests then time out on httpServer.inbound and log/counter tests fail verify — all downstream of the same resolution failure. The run is also preceded by WARNING: Failed to find [getAction(0 args)] for org.citrusframework.yaml.TestActions.{jbang,camel,http,...}.

Example failing run: https://github.com/apache/camel-kamelets/actions/runs/28441956715

Source

tests/camel-kamelets-itest/src/test/resources-filtered/jbang.properties (added in 68ee9d84a):

run.deps=org.apache.camel:camel-jackson-avro:${camel.version},\
org.apache.camel:camel-jackson-protobuf:${camel.version}

What I could verify locally

  • Both the comma-joined --dep "a:v,b:v" form and the exact multi-line jbang.properties resolve correctly with camel jbang 4.21.0-SNAPSHOT (route starts, exit 0). So the run.deps format is not itself broken.
  • The difference is the camel jbang version: CI installs jbang camel@apache/camel, which resolves to the latest release, 4.18.2, while the project and the run.deps coordinates are 4.21.0-SNAPSHOT. citrus.camel.jbang.version=${camel.version} (=4.21.0-SNAPSHOT) is set in citrus-application.properties, but the integrations in CI appear to run with the older CLI.

Likely cause

An older camel jbang (4.18.2) mishandling the multi-dependency run.deps value (or a camel-jbang SNAPSHOT-resolution issue), so the 4.21.0-SNAPSHOT camel-jackson-avro / -protobuf cannot be resolved and every integration fails to start.

Proposed fixes (need CI to verify)

  1. Ensure the integrations run with a camel jbang matching the build (4.21.x / SNAPSHOT) — verify citrus.camel.jbang.version is actually honored, or pin the CLI version installed in the workflow.
  2. Simplify run.deps to a single line / single coordinate to remove any parser edge case.
  3. If it turns out to be a camel-jbang run.deps parsing bug, report it upstream to apache/camel.

Notes

This is why the test check shows red on open PRs (e.g. #2883, #2886) — those changes are unrelated; #2886 was merged with test red for the same reason.

AI-generated by Claude Code on behalf of Andrea Cosentino (@oscerd)

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions