diff --git a/.github/workflows/e2e-bmaas-full-install.yml b/.github/workflows/e2e-bmaas-full-install.yml index 3ae77e4b14..e5fc7b7e67 100644 --- a/.github/workflows/e2e-bmaas-full-install.yml +++ b/.github/workflows/e2e-bmaas-full-install.yml @@ -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 ../../../ 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 }} # 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) diff --git a/.github/workflows/e2e-caas-full-install.yml b/.github/workflows/e2e-caas-full-install.yml index 71ee198c66..0e90f5c300 100644 --- a/.github/workflows/e2e-caas-full-install.yml +++ b/.github/workflows/e2e-caas-full-install.yml @@ -78,6 +78,13 @@ jobs: with: test-suite: ${{ inputs.test-suite || 'caas' }} 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 ../../../ 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 }} # 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":"bare-metal-fulfillment-operator/Containerfile","imageKey":"bmf.image.repository"}]' # Pass author_association for fork PR authorization (empty for non-fork PRs) @@ -88,9 +95,9 @@ jobs: test-infra-repository: osac-project/osac-test-infra test-infra-ref: ${{ inputs.test-infra-ref || 'main' }} # CaaS-specific inputs (cluster-template, caas-domain, flavor-image, - # flavor-name, namespace, installer-repo/ref, etc.) are left at the - # reusable workflow's own defaults -- none are required and this - # caller has no need to override them today. + # flavor-name, namespace, etc.) are left at the reusable workflow's own + # defaults -- none are required and this caller has no need to override + # them today. e2e: if: always() diff --git a/.github/workflows/e2e-vmaas-full-install.yml b/.github/workflows/e2e-vmaas-full-install.yml index 75c70ae9df..4069bd964d 100644 --- a/.github/workflows/e2e-vmaas-full-install.yml +++ b/.github/workflows/e2e-vmaas-full-install.yml @@ -78,6 +78,13 @@ jobs: with: test-suite: ${{ inputs.test-suite || 'vmaas' }} 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 ../../../ 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 }} # 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) diff --git a/osac-installer/.github/workflows/e2e-bmaas-full-install.yml b/osac-installer/.github/workflows/e2e-bmaas-full-install.yml deleted file mode 100644 index 53221f1ee3..0000000000 --- a/osac-installer/.github/workflows/e2e-bmaas-full-install.yml +++ /dev/null @@ -1,46 +0,0 @@ ---- -name: E2E BMaaS Full Install - -on: - pull_request: - branches: [main] - paths-ignore: - - 'OWNERS' - - 'LICENSE' - - '*.md' - - 'docs/**' - schedule: - - cron: "0 */2 * * *" - workflow_dispatch: - inputs: - test-suite: - description: "Test suite (bmaas, or empty for all)" - required: false - default: "bmaas" - test-filter: - description: "pytest -k filter" - required: false - default: "" - test-infra-ref: - description: "Branch/ref of osac-test-infra" - required: false - default: "main" - -concurrency: - group: e2e-bmaas-full-install-${{ github.event.pull_request.number || github.run_id }} - cancel-in-progress: ${{ github.event_name == 'pull_request' }} - -jobs: - e2e-bmaas-full-install: - uses: osac-project/osac-test-infra/.github/workflows/e2e-bmaas-full-install.yml@main - with: - test-suite: ${{ inputs.test-suite || 'bmaas' }} - test-filter: ${{ inputs.test-filter || '' }} - installer-repo: ${{ github.event.pull_request.head.repo.full_name || github.repository }} - installer-ref: ${{ github.event.pull_request.head.ref || github.ref_name }} - fork-pr-author-association: ${{ github.event.pull_request.head.repo.fork && github.event.pull_request.author_association || '' }} - fork-pr-author: ${{ github.event.pull_request.head.repo.fork && github.event.pull_request.user.login || '' }} - pr-number: ${{ github.event.pull_request.number }} - test-infra-repository: osac-project/osac-test-infra - test-infra-ref: ${{ inputs.test-infra-ref || 'main' }} - notify-on-failure: ${{ github.event_name == 'schedule' }} diff --git a/osac-installer/.github/workflows/e2e-vmaas-full-install.yml b/osac-installer/.github/workflows/e2e-vmaas-full-install.yml deleted file mode 100644 index b0d0a507f6..0000000000 --- a/osac-installer/.github/workflows/e2e-vmaas-full-install.yml +++ /dev/null @@ -1,49 +0,0 @@ ---- -name: E2E VMaaS Full Install - -on: - pull_request: - branches: [main] - paths-ignore: - - 'OWNERS' - - 'LICENSE' - - '*.md' - - 'docs/**' - schedule: - - cron: "0 */2 * * *" - workflow_dispatch: - inputs: - test-suite: - description: "Test suite (vmaas, caas, or empty for all)" - required: false - default: "vmaas" - test-filter: - description: "pytest -k filter" - required: false - default: "" - test-infra-ref: - description: "Branch/ref of osac-test-infra" - required: false - default: "main" - -concurrency: - group: e2e-vmaas-full-install-${{ github.event.pull_request.number || github.run_id }} - cancel-in-progress: ${{ github.event_name == 'pull_request' }} - -jobs: - e2e-vmaas-full-install: - uses: osac-project/osac-test-infra/.github/workflows/e2e-vmaas-full-install.yml@main - with: - test-suite: ${{ inputs.test-suite || 'vmaas' }} - test-filter: ${{ inputs.test-filter || '' }} - # Clone the installer from the PR's fork/branch so we test the actual PR content - installer-repo: ${{ github.event.pull_request.head.repo.full_name || github.repository }} - installer-ref: ${{ github.event.pull_request.head.ref || github.ref_name }} - # Pass author_association for fork PR authorization (empty for non-fork PRs) - fork-pr-author-association: ${{ github.event.pull_request.head.repo.fork && github.event.pull_request.author_association || '' }} - fork-pr-author: ${{ github.event.pull_request.head.repo.fork && github.event.pull_request.user.login || '' }} - pr-number: ${{ github.event.pull_request.number }} - # Checkout osac-test-infra for tests/Containerfile (not the caller repo) - test-infra-repository: osac-project/osac-test-infra - test-infra-ref: ${{ inputs.test-infra-ref || 'main' }} - notify-on-failure: ${{ github.event_name == 'schedule' }}