jbonofre opened a new issue, #745:
URL: https://github.com/apache/camel-karaf/issues/745

   ## Symptom
   
   Every `Test (Java 17)` / `Test (Java 21)` job fails in 
`camel-google-pubsub-test`:
   
   ```
   CamelGooglePubsubITest.initializationError
     » ContainerFetch Can't get Docker image:
       gcr.io/google.com/cloudsdktool/google-cloud-cli:441.0.0-emulators
   
   Caused by: com.github.dockerjava.api.exception.NotFoundException: Status 404:
     {"message":"manifest for 
gcr.io/google.com/cloudsdktool/google-cloud-cli:441.0.0-emulators
      not found: manifest unknown: Failed to fetch \"441.0.0-emulators\""}
   ```
   
   ## Root cause
   
   `CamelGooglePubsubITest` pins the Pub/Sub emulator image tag 
`441.0.0-emulators`, added in aca82e14a (#379):
   
   
https://github.com/apache/camel-karaf/blob/main/tests/features/camel-google-pubsub/src/test/java/org/apache/karaf/camel/itest/CamelGooglePubsubITest.java#L69
   
   Google has since pruned that tag from `gcr.io`. Querying the registry today:
   
   - `.../google-cloud-cli` serves **2076** tags total
   - only **49** match `X.Y.Z-emulators`, ranging from `537.0.0-emulators` to 
`583.0.0-emulators`
   - `441.0.0-emulators` → manifest `404`; `583.0.0-emulators` and the floating 
`emulators` tag → `200`
   
   So the registry keeps a **rolling window of roughly the last 49 releases**. 
On the current weekly-ish cadence that is about a year, after which *any* exact 
pin here 404s. This is not a transient registry outage — the tag is gone for 
good.
   
   ## Impact
   
   - `main` is red. The push build for 6f2d1e26b (`fix(#728)`, current `main` 
HEAD) fails identically: 
https://github.com/apache/camel-karaf/actions/runs/33491325010
   - The reactor halts at `camel-google-pubsub-test`, so **33 later modules are 
skipped**. No PR can currently get a green `Test` job, and any regression in a 
module ordered after pubsub is invisible.
   
   The other four pinned test images are fine — `confluentinc/cp-kafka:7.6.1`, 
`influxdb:2.0.7`, `localstack/localstack:3.4.0` and `rabbitmq:3.13.1` all still 
resolve. Only the gcr.io pin is affected.
   
   ## Proposed fix
   
   Bump the pin to a tag inside the retention window (`583.0.0-emulators`) and 
add a comment recording that gcr.io prunes old emulator tags, so the next bump 
is not a mystery.
   
   Worth deciding as part of the fix: an exact pin keeps builds reproducible 
but is guaranteed to rot again in about a year, whereas the floating 
`emulators` tag never 404s at the cost of reproducibility. This issue proposes 
staying pinned, matching the convention used by the other four images, and 
treating the rot as something to catch with a periodic bump.
   
   A PR follows shortly.
   
   ---
   _Claude Code on behalf of JB Onofré_
   


-- 
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]

Reply via email to