hubcio opened a new pull request, #3369: URL: https://github.com/apache/iggy/pull/3369
Every master push rebuilt and re-pushed :edge for all five DockerHub images, even for docs- or SDK-only commits. Each Rust image builds via cargo-chef over the whole workspace, so its shipped binary changes only when its crate closure does. Reuse the cargo-rail DAG (the same tool that scopes test runs) to refresh only the affected images. Per-image gate config lives in publish.yml: crate sets matched against `cargo rail plan`, plus path fallbacks for sources outside the crate graph. The gate job runs only the metadata-only `cargo rail plan`, so it skips the heavyweight build-cache restore and uses the runner's preinstalled cargo (rust-toolchain.toml pins the version). iggy-server embeds the web UI at compile time (rust-embed of web/build/static), and web/ is not a cargo crate, so the rust-server gate lists web as a path input; otherwise a web-only push would ship a stale embedded UI. Each image's Dockerfile is derived from its dockerfile: field rather than duplicated in gate.paths. Fail-open to all images on any uncertainty: a nonzero cargo-rail exit or malformed plan refreshes everything rather than aborting the publish, while a valid empty crate set (the normal docs-only push) legitimately publishes nothing. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
