knative / knative/func

Add CI validation for all container images referenced by the repository

Open
#3,784 2 comments 0 reactions 1 assignee Claimed by @dikshant182004 View on GitHub
Dominant language
Go
Stars
365
Forks
223
Avg merge
2d 3h
Merged PRs (30d)
25

Description

## Problem

`knative/func` relies on several hard-coded container images (builder images, runtime images, and other defaults) across templates and configuration. Currently, there is no automated validation in CI to ensure that these image references:

1. Exist,
2. Are accessible, and
3. Continue to publish valid multi-architecture manifests.

This means that if an image tag is deleted, renamed, made private, or loses support for one or more architectures, the problem may only be discovered when users attempt to build or deploy functions.

Issue [#3515](https://github.com/knative/func/issues/3515) and follow-up [#3781](https://github.com/knative/func/issues/3781) are examples of this class of problem, where the default Quarkus builder image did not support certain architectures, causing remote builds to fail.

## Proposal

Add a CI test that discovers all container images referenced anywhere in the repository (templates, defaults, configuration, and tests where appropriate) and validates that:

* The image tag exists,
* The manifest can be retrieved successfully,
* The manifest list is well-formed, and
* All architectures currently advertised by the image are valid and inspectable.

Rather than checking only a predefined subset of architectures, the test should validate the complete set of architectures published by each image. This makes the check future-proof and ensures regressions are detected regardless of which platforms an image supports.

## Validation Behavior

For each discovered image:

1. Retrieve the image manifest or manifest list.
2. If the image is single-architecture, verify that the manifest is accessible.
3. If the image is multi-architecture:

* Enumerate every published platform.
* Validate that each platform-specific manifest is accessible and well-formed.

## Benefits

* Detects broken or deleted image tags early.
* Prevents architecture regressions.
* Validates all images used throughout the repository.
* Future-proofs CI against changes in supported platforms.
* Reduces build and deployment failures for end users.

I think it would be useful to have an automated CI check like this to catch issues early and avoid similar regressions in the future.

If this seems like a worthwhile enhancement, I’d be happy to submit a PR to implement it.

@lkingland What are your thoughts on this raised issue , is it overengineering or it addresses a real class of issues and would strengthen the project by proactively catching broken image references and architecture regressions before they impact users ?

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.