Repository navigation
TEMP: e2e verification round 2 for OSAC-3523 (do not merge) #70
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -67,10 +67,17 @@ jobs: | |
| e2e-bmaas-full-install: | ||
| needs: changes | ||
| if: needs.changes.outputs.should-run == 'true' | ||
| uses: osac-project/osac-test-infra/.github/workflows/e2e-bmaas-full-install.yml@main | ||
| uses: eliorerz/osac-test-infra/.github/workflows/e2e-bmaas-full-install.yml@osac-3523-mono-repo-installer-support | ||
| with: | ||
| test-suite: ${{ inputs.test-suite || 'bmaas' }} | ||
| test-filter: ${{ inputs.test-filter || '' }} | ||
| # osac-installer now lives as a subdirectory of this same monorepo checkout | ||
| # (its Chart.yaml deps resolve fulfillment-service/osac-operator/osac-aap/BMF | ||
| # as ../../../<name> siblings within it), so a PR touching those components | ||
| # must deploy from this PR's own fork/ref, not the reusable workflow's | ||
| # standalone-repo default. | ||
| installer-repo: ${{ github.event.pull_request.head.repo.full_name || github.repository }} | ||
| installer-ref: ${{ github.event.pull_request.head.ref || github.ref_name }} | ||
|
Comment on lines
+79
to
+80
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🗄️ Data Integrity & Integration | 🟡 Minor | ⚡ Quick win 🧩 Analysis chain🏁 Script executed: #!/usr/bin/env bash
set -euo pipefail
check_workflow() {
local repo="$1"
local ref="$2"
local file="$3"
local url="https://raw.githubusercontent.com/${repo}/${ref}/.github/workflows/${file}"
echo "== ${url} =="
curl -fsSL "$url" |
rg -n -C 8 'workflow_call:|installer-(repo|ref)|head\.sha|ls-remote|rev-parse|actions/checkout'
}
check_workflow "eliorerz/osac-test-infra" "osac-3523-mono-repo-installer-support" "e2e-bmaas-full-install.yml"
check_workflow "osac-project/osac-test-infra" "main" "e2e-caas-full-install.yml"Repository: osac-project/osac Length of output: 9880 🏁 Script executed: #!/usr/bin/env bash
set -euo pipefail
echo "== workflow file sizes =="
wc -l .github/workflows/e2e-bmaas-full-install.yml .github/workflows/e2e-caas-full-install.yml
echo
echo "== reusable workflow installer input install blocks =="
for f in .github/workflows/e2e-bmaas-full-install.yml .github/workflows/e2e-caas-full-install.yml; do
echo "-- $f --"
sed -n '439,530p' "$f"
done
echo
echo "== all reusable workflows with installer inputs =="
rg -n -C 4 'inputs:|installer-(repo|ref):' .github/workflows || true
echo
echo "== workflow_call usages of target workflows =="
rg -n -C 8 'uses: .*e2e-(bmaas|caas)-full-install|e2e-(bmaas|c|caas)-full-install|\.github/workflows/e2e-(bmaas|caas)-full-install' .github/workflows .github/actions 2>/dev/null || trueRepository: osac-project/osac Length of output: 19480 Resolve
📍 Affects 2 files
🤖 Prompt for AI Agents |
||
| # Build all component images from the PR's fork/branch (same monorepo checkout) | ||
| components: '[{"repo":"${{ github.event.pull_request.head.repo.full_name || github.repository }}","ref":"${{ github.event.pull_request.head.ref || github.ref_name }}","containerfile":"fulfillment-service/Containerfile","imageKey":"service.images.service"},{"repo":"${{ github.event.pull_request.head.repo.full_name || github.repository }}","ref":"${{ github.event.pull_request.head.ref || github.ref_name }}","containerfile":"osac-operator/Containerfile","imageKey":"operator.image.repository"},{"repo":"${{ github.event.pull_request.head.repo.full_name || github.repository }}","ref":"${{ github.event.pull_request.head.ref || github.ref_name }}","containerfile":"osac-aap/execution-environment/execution-environment.yaml","imageKey":"aap.bootstrap.image","buildType":"ansible-builder"},{"repo":"${{ github.event.pull_request.head.repo.full_name || github.repository }}","ref":"${{ github.event.pull_request.head.ref || github.ref_name }}","containerfile":"bare-metal-fulfillment-operator/Containerfile","imageKey":"bmf.image.repository"}]' | ||
| # Pass author_association for fork PR authorization (empty for non-fork PRs) | ||
|
|
||
This file was deleted.
This file was deleted.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🔒 Security & Privacy | 🟠 Major | ⚡ Quick win
Pin the reusable workflow to a commit SHA.
Line 70 references the mutable branch
osac-3523-mono-repo-installer-supportin an external repository. A branch update can change the workflow code between runs. Pin this reusable workflow to the 40-character commit SHA for the verification revision. Keep the branch name in a comment for traceability.Suggested pin
As per path instructions, CI/CD actions must be pinned by full SHA, not tag.
🤖 Prompt for AI Agents
Source: Path instructions