[DX-3584] Run smoke tests after releasing an image#22035
Open
[DX-3584] Run smoke tests after releasing an image#22035
Conversation
Contributor
|
✅ No conflicts with other open PRs targeting |
9e5c002 to
93ffc8c
Compare
93ffc8c to
452b43d
Compare
Contributor
There was a problem hiding this comment.
Pull request overview
Risk Rating: MEDIUM
Adds post-release validation by running multiple system test suites against the newly published Chainlink image.
Changes:
- Replaces the existing post-build workflow interface to accept a core image tag input and adds jobs for legacy + CRE smoke/regression suites.
- Updates the build/publish pipeline to call the new post-build publish workflow after the core image build.
- Minor workflow UX improvement by naming the devenv compatibility job.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
.github/workflows/post-build-publish.yml |
Renames workflow and inputs; adds legacy + CRE smoke/regression reusable-workflow invocations. |
.github/workflows/build-publish.yml |
Switches post-build to call post-build-publish.yml and passes the image identifier. |
.github/workflows/devenv-compat.yml |
Adds an explicit job name for easier run readability. |
Scrupulous human review focus (high-impact areas):
- The new “image identifier” contract (
chainlink_core_image_tag/chainlink_image_tag) and how it is resolved into an actual Docker image reference across all invoked reusable workflows.
Comments suppressed due to low confidence (3)
.github/workflows/post-build-publish.yml:10
- The input description has a typo ("tagto"). Please correct it to improve readability (e.g., "image tag to use for the tests").
.github/workflows/post-build-publish.yml:9 chainlink_core_image_tagis declared asrequired: falsebut it is passed directly into downstream reusable workflows aschainlink_image_tag, where it is required and ultimately used to resolve/pull the Chainlink image. If this input is omitted/empty, these jobs will fail at runtime. Consider making this input required (or giving it a default), or guard the test jobs with anif: inputs.chainlink_core_image_tag != ''condition.
.github/workflows/post-build-publish.yml:74chainlink_image_tagis being set to atag|digeststring (e.g.,v2.3.4|sha256:...). The downstream workflows resolve the image by concatenating...:${CHAINLINK_IMAGE_TAG}(see.github/scripts/resolve-chainlink-image.sh), which would yield an invalid Docker reference because|is not allowed in image tags. To ensure the tests pull the intended published image, pass only the tag here, or switch the contract to pass a full image reference that uses the standard digest syntax (repo@sha256:...orrepo:tag@sha256:...) and update the resolver accordingly.
jmank88
approved these changes
Apr 16, 2026
Contributor
Author
|
Superseded by #22063 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
When a new image has been published we will now run:
Example run via "hacked" Docker Build ✅ :