Skip to content

TEMP: e2e verification round 2 for OSAC-3523 (do not merge) - #70

Closed
eliorerz wants to merge 3 commits into
osac-project:mainfrom
eliorerz:osac-3523-e2e-verify-temp2
Closed

eliorerz wants to merge 3 commits into
osac-project:mainfrom
eliorerz:osac-3523-e2e-verify-temp2

Conversation

@eliorerz

@eliorerz eliorerz commented Aug 1, 2026 •

Copy link
Copy Markdown
Contributor

Second throwaway verification PR, needed because osac-project/osac-test-infra#291 gained a follow-up fix (resolved-commit-SHA comparison instead of ref-name comparison, addressing a CodeRabbit finding) after the first verification PR (#68) already confirmed the ref-name version. This PR points the bmaas caller's uses: at eliorerz/osac-test-infra@osac-3523-mono-repo-installer-support (current tip) to confirm the SHA-comparison skip-splice path still works end to end. Will be closed (not merged) once verified. See #67 and osac-project/osac-test-infra#291 for the real PRs.

Summary by CodeRabbit

  • CI Improvements

    • End-to-end BMaaS, CaaS, and VMaaS installation tests now run against the pull request’s source branch when applicable.
    • Installation validation more accurately tests changes from the current repository checkout.
  • Maintenance

    • Removed duplicate BMaaS and VMaaS installation workflows from the installer repository.

eliorerz and others added 3 commits August 1, 2026 00:36
…onents

Pass installer-repo/installer-ref through to the e2e reusable workflows
so PRs touching fulfillment-service, osac-operator, osac-aap, or
bare-metal-fulfillment-operator deploy osac-installer from the same
fork/ref, matching the existing components[].repo/.ref pattern. Also
removes the two nested e2e workflow files under osac-installer/.github/
that GitHub never discovers there (workflows only run from the repo
root's .github/workflows/) and that duplicated the root callers.
@openshift-ci
openshift-ci Bot requested review from rgolangh and ybettan August 1, 2026 13:33
@openshift-ci

openshift-ci Bot commented Aug 1, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: eliorerz

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@coderabbitai

coderabbitai Bot commented Aug 1, 2026 •

Copy link
Copy Markdown
Contributor

Review Change Stack

Walkthrough

The root BMaaS, CaaS, and VMaaS workflows now pass installer repository and ref values to the reusable workflow. The nested BMaaS and VMaaS workflows were deleted.

Changes

Installer source routing

Layer / File(s) Summary
Propagate installer repository and ref
.github/workflows/e2e-*-full-install.yml
The BMaaS, CaaS, and VMaaS workflows pass pull request source metadata, with current repository and ref fallbacks. BMaaS uses the feature-branch reusable workflow.
Remove nested full-install workflows
osac-installer/.github/workflows/e2e-bmaas-full-install.yml, osac-installer/.github/workflows/e2e-vmaas-full-install.yml
The nested BMaaS and VMaaS full-install workflow definitions were deleted.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related PRs

Suggested labels: ok-to-test, jira/valid-reference

🚥 Pre-merge checks | ✅ 10 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Ai-Attribution ⚠️ Warning The PR description mentions a CodeRabbit finding, but all three PR-range commits have no Assisted-by or Generated-by trailer; no AI Co-Authored-By trailer is present. Add an Assisted-by or Generated-by trailer naming the AI tool to the relevant PR commit, and do not use Co-Authored-By for AI attribution.
✅ Passed checks (10 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly identifies the temporary second E2E verification for OSAC-3523 and states that the PR must not be merged.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
No-Hardcoded-Secrets ✅ Passed The full PR diff adds only workflow repository/ref expressions and comments; scans found no credential literals, embedded-credential URLs, private keys, vendor tokens, or long blobs.
No-Weak-Crypto ✅ Passed The PR only changes GitHub Actions workflow refs and installer repository/ref inputs, and deletes two workflows; no MD5, SHA1, DES, RC4, 3DES, Blowfish, ECB, or crypto comparisons were added.
No-Injection-Vectors ✅ Passed The PR adds only reusable-workflow inputs and a ref change; no added SQL concatenation, shell=True, eval/exec, pickle.loads, unsafe yaml.load, os.system, or dangerouslySetInnerHTML sink exists.
Container-Privileges ✅ Passed The PR changes only GitHub workflow references/inputs and deletes two workflows; no added manifest contains privileged, hostPID, hostNetwork, hostIPC, SYS_ADMIN, root, or allowPrivilegeEscalation s...
No-Sensitive-Data-In-Logs ✅ Passed The only added line changes a reusable workflow reference; it adds no logging or sensitive value. Existing BMaaS logs print only job result states.
✨ Finishing Touches 💡 1
🛠️ Fix failing CI checks 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.github/workflows/e2e-bmaas-full-install.yml:
- Line 70: Update the reusable workflow reference in the e2e-bmaas-full-install
workflow to use the required 40-character commit SHA instead of the mutable
osac-3523-mono-repo-installer-support branch. Retain that branch name in an
adjacent comment for traceability, and do not alter the workflow invocation
otherwise.
- Around line 79-80: Update installer-ref in both
.github/workflows/e2e-bmaas-full-install.yml lines 79-80 and
.github/workflows/e2e-caas-full-install.yml lines 86-87 to use the pull request
head SHA when available, while preserving the existing non-PR fallback. Ensure
the reusable workflow receives an immutable commit reference for installer-repo
so cloning and validation cannot follow a moved branch.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository: osac-project/coderabbit/.coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 63ce51e5-524b-4f94-b30f-7e541b2e7e9b

📥 Commits

Reviewing files that changed from the base of the PR and between 7015c00 and a4886a8.

📒 Files selected for processing (5)
  • .github/workflows/e2e-bmaas-full-install.yml
  • .github/workflows/e2e-caas-full-install.yml
  • .github/workflows/e2e-vmaas-full-install.yml
  • osac-installer/.github/workflows/e2e-bmaas-full-install.yml
  • osac-installer/.github/workflows/e2e-vmaas-full-install.yml
💤 Files with no reviewable changes (2)
  • osac-installer/.github/workflows/e2e-bmaas-full-install.yml
  • osac-installer/.github/workflows/e2e-vmaas-full-install.yml

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

Copy link
Copy Markdown
Contributor

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-support in 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
-    uses: eliorerz/osac-test-infra/.github/workflows/e2e-bmaas-full-install.yml@osac-3523-mono-repo-installer-support
+    uses: eliorerz/osac-test-infra/.github/workflows/e2e-bmaas-full-install.yml@<40-character-commit-sha>  # osac-3523-mono-repo-installer-support

As per path instructions, CI/CD actions must be pinned by full SHA, not tag.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.github/workflows/e2e-bmaas-full-install.yml at line 70, Update the reusable
workflow reference in the e2e-bmaas-full-install workflow to use the required
40-character commit SHA instead of the mutable
osac-3523-mono-repo-installer-support branch. Retain that branch name in an
adjacent comment for traceability, and do not alter the workflow invocation
otherwise.

Source: Path instructions

Comment on lines +79 to +80
installer-repo: ${{ github.event.pull_request.head.repo.full_name || github.repository }}
installer-ref: ${{ github.event.pull_request.head.ref || github.ref_name }}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The 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 || true

Repository: osac-project/osac

Length of output: 19480


Resolve installer-ref to the PR head commit before cloning.

.github/workflows/e2e-bmaas-full-install.yml@osac-3523-mono-repo-installer-support declares and uses installer-repo/installer-ref, but it clones --branch "${installer-ref}"; pull request branch names can move between the caller's clone and the installer clone. Resolve ${{ github.event.pull_request.head.sha }} on the source repo before passing it to the reusable workflow, or resolve it inside the installer deploy script, so both BMaaS and CaaS validate against an immutable commit.

📍 Affects 2 files
  • .github/workflows/e2e-bmaas-full-install.yml#L79-L80 (this comment)
  • .github/workflows/e2e-caas-full-install.yml#L86-L87
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.github/workflows/e2e-bmaas-full-install.yml around lines 79 - 80, Update
installer-ref in both .github/workflows/e2e-bmaas-full-install.yml lines 79-80
and .github/workflows/e2e-caas-full-install.yml lines 86-87 to use the pull
request head SHA when available, while preserving the existing non-PR fallback.
Ensure the reusable workflow receives an immutable commit reference for
installer-repo so cloning and validation cannot follow a moved branch.

@eliorerz

eliorerz commented Aug 1, 2026

Copy link
Copy Markdown
Contributor Author

Superseded — osac-test-infra#291 and osac#67 both merged and were verified fully green end-to-end (all 3 e2e suites passing) after the CI-wide 0.0.0 Helm-dependency-override bug was hotfixed in osac-test-infra#293. Closing without merging, per this PR's own stated purpose.

@eliorerz eliorerz closed this Aug 1, 2026
@eliorerz
eliorerz deleted the osac-3523-e2e-verify-temp2 branch August 1, 2026 16:25
ajamias pushed a commit to ajamias/osac that referenced this pull request Aug 3, 2026
…cret-back

fix: Add cluster-fulfillment-ig secret back to overlays

This branch was previously deployed

1 inactive deployment
e2e-test — a4886a8e Deployed Aug 1, 2026 by eliorerz via e2e-bmaas-full-install / e2e #145
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant