CI: [BIPS-31431] Run automation tests workflow before and after built promotion#188
CI: [BIPS-31431] Run automation tests workflow before and after built promotion#188ivgonzalezc merged 7 commits intomainfrom
Conversation
There was a problem hiding this comment.
Pull request overview
This PR refactors the CI/release automation to compute a shared release version, split release publishing paths (tag vs non-tag), and integrate automation tests into the promotion flow. It also updates the automation-tests workflow to accept a build-origin input and adjusts GoReleaser artifact naming templates.
Changes:
- Add a
get_versionjob and refactor the release workflow into separate “JFrog snapshot” vs “Terraform Registry tag” jobs. - Add automation-tests workflow dispatch inputs (
build_origin) and update automation tests triggering/polling behavior. - Update GoReleaser binary name template to remove the extra
_vprefix.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 10 comments.
| File | Description |
|---|---|
.goreleaser.yml |
Adjusts binary naming template to align artifact naming with version formatting changes. |
.github/workflows/release.yml |
Refactors version derivation into its own job and adds automation-tests dispatch/polling around tag releases. |
.github/workflows/automation-tests.yaml |
Adds tag trigger + workflow_dispatch input and forwards build origin to downstream automation workflow. |
Comments suppressed due to low confidence (1)
.github/workflows/automation-tests.yaml:277
- The workflow now triggers on
pushtags, but this job only runs onworkflow_dispatch. For tag pushes there is no job that marks the workflow failed when tests fail (and no output is published), so tag-triggered runs can appear successful even when automation tests fail. Expand thisif:to includepush(and any other intended events) or add an equivalent result/publish job for tag runs.
automation-test-no-pr:
name: Publish automation test result for other events than PRs
needs: [automation-test-run]
runs-on: ubuntu-latest
if: ${{ github.event_name == 'workflow_dispatch' }}
steps:
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
You can also share your feedback on Copilot code review. Take the survey.
There was a problem hiding this comment.
Pull request overview
Refactors the release and automation-test GitHub Actions workflows to support running automation tests around artifact promotion/release, and updates GoReleaser templating used in the build/release pipeline.
Changes:
- Added a
get_versionjob to centralize version calculation and reused it across release jobs. - Split release publishing into separate jobs for non-tag (JFrog snapshot) and tag (Terraform Registry) releases, with automation-test gating logic added.
- Updated the Automation Tests workflow to run on tag pushes and accept a new
build_origininput for workflow dispatches.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 9 comments.
| File | Description |
|---|---|
.goreleaser.yml |
Adjusts GoReleaser binary naming template used in produced artifacts. |
.github/workflows/release.yml |
Refactors release pipeline into multiple jobs; adds automation-test wait/dispatch logic. |
.github/workflows/automation-tests.yaml |
Adds tag trigger and build_origin input; adjusts dispatch inputs and result publishing jobs. |
Comments suppressed due to low confidence (1)
.github/workflows/automation-tests.yaml:280
automation-test-no-pris described as publishing results for "other events than PRs", but it only runs onworkflow_dispatch. With the newpush.tagstrigger, tag runs won’t have any job that fails the workflow on test failure (only PRs and dispatch do). If tags should be gated by automation tests, expand this condition to includepush(or add a separate job for tag events).
automation-test-no-pr:
name: Publish automation test result for other events than PRs
needs: [automation-test-run]
runs-on: ubuntu-latest
if: ${{ github.event_name == 'workflow_dispatch' }}
steps:
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
You can also share your feedback on Copilot code review. Take the survey.
There was a problem hiding this comment.
Pull request overview
Refactors CI workflows to run automation tests around artifact promotion/release, including separating non-tag (JFrog) vs tag (Terraform Registry) release paths and adding workflow-dispatch driven automation runs.
Changes:
- Refactored
release.ymlto introduce a dedicated versioning job and split release logic into tag vs non-tag jobs, with post-release automation test dispatch + gating. - Updated
automation-tests.yamlto support tag triggers and a newbuild_originworkflow-dispatch input intended to select DEV vs PROD artifact sources. - Updated GoReleaser templating and adjusted Dependabot workflow permissions for invoking the reusable release workflow.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 6 comments.
| File | Description |
|---|---|
.goreleaser.yml |
Changes binary naming template used inside release archives. |
.github/workflows/release.yml |
Adds get_version, splits release jobs, and dispatches/awaits automation tests post-release. |
.github/workflows/automation-tests.yaml |
Adds tag trigger + build_origin input and tweaks version increment logic/dispatch inputs. |
.github/workflows/dependabot-comments.yml |
Updates permissions for Dependabot-triggered reusable release workflow invocation. |
Comments suppressed due to low confidence (1)
.github/workflows/automation-tests.yaml:280
- The workflow now runs on
pushtag events, but there is no final job that fails the workflow when automation tests fail for that event type.automation-test-PRonly runs on PRs, andautomation-test-no-pronly runs onworkflow_dispatch, so a tag-triggered run can appear successful even ifautomation-test-runreports a failure conclusion. Consider expanding theif:condition (or adding another job) to enforce failure forpushtag events too.
automation-test-no-pr:
name: Publish automation test result for other events than PRs
needs: [automation-test-run]
runs-on: ubuntu-latest
if: ${{ github.event_name == 'workflow_dispatch' }}
steps:
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
8a8495f
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 4 out of 4 changed files in this pull request and generated 2 comments.
Comments suppressed due to low confidence (1)
.github/workflows/automation-tests.yaml:280
- With
on.push.tagsenabled, this workflow will run for tag pushes, but there is no job that fails the workflow based on the automation test conclusion forpushevents.automation-test-no-pris described as “other events than PRs” but only runs onworkflow_dispatch, so tag-triggered runs will appear successful even ifautomation-test-runfinds failures. Either includepushin this job’s condition (or add a separate job for tag pushes), or rename/update the job/triggering logic to match the intended behavior.
automation-test-no-pr:
name: Publish automation test result for other events than PRs
needs: [automation-test-run]
runs-on: ubuntu-latest
if: ${{ github.event_name == 'workflow_dispatch' }}
steps:
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Automation tests CheckedAutomation tests failedPlease check the Automation tests run here |
Purpose of the PR
Linked JIRA issue(s)
Summary of changes
env, that is going to be the target environment to test, whereDEVwill be artifacts on Jfrog Artifactory, andPRODwill be artifacts on Terraform RegistryChecklist
Release
Testing
Automation