Done. For subprojects this will need to be adapted, since it is tied to container.properties at this stage, but it could be adapted once we have the new version and exclusion, inclusion in place.
Thanks for pointing this out, Aurelien. Il giorno mar 2 dic 2025 alle ore 14:44 Aurelien Pupier via dev < [email protected]> ha scritto: > Hello, > > Thanks for this work! > > Can you update this JIRA https://issues.apache.org/jira/browse/CAMEL-20915 > with the approach that you use? (And certainly have the satisfaction to > resolve it) > > I think this is also that will be beneficial to use in Camel Quarkus > codebase< > https://github.com/apache/camel-quarkus/blob/877078bbc189a57c8ee00dbc1e0f8978e2a40a2b/pom.xml#L231-L276>. > (maybe other Camel subproject?) > > ________________________________ > From: Andrea Cosentino <[email protected]> > Sent: Tuesday, December 2, 2025 2:07 PM > To: dev <[email protected]> > Subject: [EXTERNAL] [HEADS-UP] New Automated Container Version Upgrade > Workflow > > Hello team, > > I'm pleased to announce a new GitHub Actions workflow that automatically > monitors and upgrades container image versions used in our test > infrastructure. > > The workflow scans all `container.properties` files in the test-infra > modules and checks for newer versions of container images in their > respective registries. When outdated images are found, it automatically > creates individual pull requests for each container update, making it > easier to review and test changes independently. > > - How It Works > > 1. Scheduled Execution: Runs every Monday at 6:00 AM UTC (can also be > triggered manually) > 2. Registry Support: Checks Docker Hub, Quay.io, GCR, GHCR, MCR, and other > 3. Individual PRs: Creates a separate pull request for each outdated > container, allowing granular review and testing > 4. Automatic Branches: Each PR uses a unique branch name following the > pattern: `automated/upgrade-<property>-<version>-<run-number>` > 5. Each PR includes the property name, image name, file path, old/new > versions, and verification instructions > > - Version Filtering (Whitelist/Blacklist) > > To give us control over which version tags are acceptable, the workflow > supports optional version filtering using whitelist and blacklist patterns. > > - Whitelist (Include Filter) > Only versions containing specific words will be considered: > > postgres.container=postgres:17.2-alpine > postgres.container.version.include=alpine > > This ensures only Alpine-based versions are selected (e.g., 17.3-alpine, > 18.0-alpine) > > - Blacklist (Exclude Filter) > Versions containing specific words will be excluded: > > kafka.container=quay.io/strimzi/kafka:latest-kafka-3.9.1 > kafka.container.version.exclude=rc,beta,alpha,snapshot > > This excludes pre-release versions containing "rc", "beta", "alpha", or > "snapshot" > > - Common Use Cases > > Only numeric versions (no distribution suffixes): > mysql.container=mysql:8.0.35 > mysql.container.version.exclude=alpine,slim,debian,bookworm > > Specific distribution only: > redis.container=redis:7.2.4-bookworm > redis.container.version.include=bookworm > > Exclude problematic versions: > nginx.container=nginx:1.25.3 > nginx.container.version.exclude=1.26,experimental > > - Filter Rules > > - Filters are case-insensitive > - Exclude filter (blacklist) is checked first - if version contains ANY > excluded word, it's rejected > - Include filter (whitelist) is checked second - if specified, version must > contain at least ONE included word > - Multiple words are comma-separated (no spaces) > - If no filters are specified, all versions are considered > > - Configuration > > Add filter properties directly in your `container.properties` files: > > # Format: > <property>.version.include=word1,word2,word3 > <property>.version.exclude=word1,word2,word3 > > Obviously, we'll need some time to tune the exclude/include list for each > image, but we'll do that. Please help by adding the exclusion, inclusion > filters in container.properties, if you have time. > > This is the first iteration results: > > https://github.com/apache/camel/pulls?q=is%3Aopen+is%3Apr+label%3Aautomated+label%3Acontainer-images > > I hope this will help. But we'll need to tune it a bit. > > Any feedback is always welcome. > > Unless otherwise stated above: > > Compagnie IBM France > Siège Social : 17, avenue de l'Europe, 92275 Bois-Colombes Cedex > RCS Nanterre 552 118 465 > Forme Sociale : S.A.S. > Capital Social : 664 614 175,50 € > SIRET : 552 118 465 03644 - Code NAF 6203Z >
