From 61753b83960a78059ea2f08ab10256ff6a3cb617 Mon Sep 17 00:00:00 2001 From: Yi He Date: Tue, 18 Jun 2024 12:44:46 +0800 Subject: [PATCH] ci: move cs9 to testing-farm --- .github/workflows/centos-stream-8.yml | 450 ----------- .github/workflows/centos-stream-9.yml | 1020 ++----------------------- tmt/plans/edge-test.fmf | 8 + 3 files changed, 54 insertions(+), 1424 deletions(-) delete mode 100644 .github/workflows/centos-stream-8.yml diff --git a/.github/workflows/centos-stream-8.yml b/.github/workflows/centos-stream-8.yml deleted file mode 100644 index f453c9710..000000000 --- a/.github/workflows/centos-stream-8.yml +++ /dev/null @@ -1,450 +0,0 @@ ---- -name: Run Edge Test on CentOS Stream 8 - -on: - issue_comment: - types: - - created - -jobs: - pr-info: - if: ${{ github.event.issue.pull_request && - (endsWith(github.event.comment.body, '/test-cs8') || - endsWith(github.event.comment.body, '/test-cs8-virt') || - endsWith(github.event.comment.body, '/test-cs8-ng') || - endsWith(github.event.comment.body, '/test-cs8-raw') || - endsWith(github.event.comment.body, '/test-cs8-minimal') || - endsWith(github.event.comment.body, '/test-cs8-simplified')) }} - runs-on: ubuntu-latest - steps: - - name: Query author repository permissions - uses: octokit/request-action@v2.x - id: user_permission - with: - route: GET /repos/${{ github.repository }}/collaborators/${{ github.event.sender.login }}/permission - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - # restrict running of tests to users with admin or write permission for the repository - # see https://docs.github.com/en/free-pro-team@latest/rest/reference/repos#get-repository-permissions-for-a-user - - name: Check if user does have correct permissions - if: contains('admin write', fromJson(steps.user_permission.outputs.data).permission) - id: check_user_perm - run: | - echo "User '${{ github.event.sender.login }}' has permission '${{ fromJson(steps.user_permission.outputs.data).permission }}' allowed values: 'admin', 'write'" - echo "allowed_user=true" >> $GITHUB_OUTPUT - - name: Get information for pull request - uses: octokit/request-action@v2.x - id: pr-api - with: - route: GET /repos/${{ github.repository }}/pulls/${{ github.event.issue.number }} - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - outputs: - allowed_user: ${{ steps.check_user_perm.outputs.allowed_user }} - sha: ${{ fromJson(steps.pr-api.outputs.data).head.sha }} - - pre-edge-commit-cs8: - needs: pr-info - if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request && - (endsWith(github.event.comment.body, '/test-cs8') || - endsWith(github.event.comment.body, '/test-cs8-virt')) }} - runs-on: ubuntu-latest - env: - STATUS_NAME: edge-commit-cs8 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Runner has been deploying' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - edge-commit-cs8: - needs: [pr-info, pre-edge-commit-cs8] - runs-on: [kite, x86_64, gcp, centos-stream-8, medium] - env: - STATUS_NAME: edge-commit-cs8 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Test has been running...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Clone repository - uses: actions/checkout@v3 - with: - ref: ${{ needs.pr-info.outputs.sha }} - fetch-depth: 0 - - - name: run ostree.sh - run: ./ostree.sh - timeout-minutes: 60 - - - name: Set non cancelled result status - if: ${{ !cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: ${{ job.status }} - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Set cancelled result status - if: ${{ cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: error - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - uses: actions/upload-artifact@v3 - if: ${{ always() }} - with: - name: edge-commit-cs8 - path: | - *.json - *.log - - pre-edge-installer-cs8: - needs: pr-info - if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request && - (endsWith(github.event.comment.body, '/test-cs8') || - endsWith(github.event.comment.body, '/test-cs8-ng')) }} - runs-on: ubuntu-latest - env: - STATUS_NAME: edge-installer-cs8 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Runner has been deploying' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - edge-installer-cs8: - needs: [pr-info, pre-edge-installer-cs8] - runs-on: [kite, x86_64, rhos-01, centos-stream-8, large] - env: - STATUS_NAME: edge-installer-cs8 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Test has been running...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Clone repository - uses: actions/checkout@v3 - with: - ref: ${{ needs.pr-info.outputs.sha }} - fetch-depth: 0 - - - name: run ostree-ng.sh - run: ./ostree-ng.sh - env: - OCP4_TOKEN: ${{ secrets.OCP4_TOKEN }} - QUAY_USERNAME: ${{ secrets.QUAY_USERNAME }} - QUAY_PASSWORD: ${{ secrets.QUAY_PASSWORD }} - timeout-minutes: 120 - - - name: Set non cancelled result status - if: ${{ !cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: ${{ job.status }} - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Set cancelled result status - if: ${{ cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: error - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - uses: actions/upload-artifact@v3 - if: ${{ always() }} - with: - name: edge-installer-cs8 - path: | - *.json - *.log - - pre-edge-raw-image-cs8: - needs: pr-info - if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request && - (endsWith(github.event.comment.body, '/test-cs8') || - endsWith(github.event.comment.body, '/test-cs8-raw')) }} - runs-on: ubuntu-latest - env: - STATUS_NAME: edge-raw-image-cs8 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Runner has been deploying' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - edge-raw-image-cs8: - needs: [pr-info, pre-edge-raw-image-cs8] - runs-on: [kite, x86_64, gcp, centos-stream-8, medium] - env: - STATUS_NAME: edge-raw-image-cs8 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Test has been running...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Clone repository - uses: actions/checkout@v3 - with: - ref: ${{ needs.pr-info.outputs.sha }} - fetch-depth: 0 - - - name: run ostree-raw-image.sh - run: ./ostree-raw-image.sh - env: - DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }} - DOCKERHUB_PASSWORD: ${{ secrets.DOCKERHUB_PASSWORD }} - timeout-minutes: 90 - - - name: Set non cancelled result status - if: ${{ !cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: ${{ job.status }} - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Set cancelled result status - if: ${{ cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: error - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - uses: actions/upload-artifact@v3 - if: ${{ always() }} - with: - name: edge-raw-image-cs8 - path: | - *.json - *.log - - pre-edge-simplified-cs8: - needs: pr-info - if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request && - (endsWith(github.event.comment.body, '/test-cs8') || - endsWith(github.event.comment.body, '/test-cs8-simplified')) }} - runs-on: ubuntu-latest - env: - STATUS_NAME: edge-simplified-installer-cs8 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Runner has been deploying' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - edge-simplified-cs8: - needs: [pr-info, pre-edge-simplified-cs8] - runs-on: [kite, x86_64, gcp, centos-stream-8, medium] - env: - STATUS_NAME: edge-simplified-installer-cs8 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Test has been running...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Clone repository - uses: actions/checkout@v3 - with: - ref: ${{ needs.pr-info.outputs.sha }} - fetch-depth: 0 - - - name: run ostree-simplified-installer.sh - run: ./ostree-simplified-installer.sh - timeout-minutes: 150 - - - name: Set non cancelled result status - if: ${{ !cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: ${{ job.status }} - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Set cancelled result status - if: ${{ cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: error - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - uses: actions/upload-artifact@v3 - if: ${{ always() }} - with: - name: edge-simplified-installer-cs8 - path: | - *.json - *.log - - pre-edge-minimal-cs8: - needs: pr-info - if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request && - (endsWith(github.event.comment.body, '/test-cs8') || - endsWith(github.event.comment.body, '/test-cs8-minimal')) }} - runs-on: ubuntu-latest - env: - STATUS_NAME: edge-minimal-cs8 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Runner has been deploying...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - edge-minimal-cs8: - needs: [pr-info, pre-edge-minimal-cs8] - runs-on: [kite, x86_64, gcp, centos-stream-8, medium] - env: - STATUS_NAME: edge-minimal-cs8 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Test has been running...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Clone repository - uses: actions/checkout@v3 - with: - ref: ${{ needs.pr-info.outputs.sha }} - fetch-depth: 0 - - - name: run minimal-raw.sh - run: ./minimal-raw.sh - env: - DOWNLOAD_NODE: ${{ secrets.DOWNLOAD_NODE }} - timeout-minutes: 60 - - - name: Set non cancelled result status - if: ${{ !cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: ${{ job.status }} - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Set cancelled result status - if: ${{ cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: error - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - uses: actions/upload-artifact@v3 - if: ${{ always() }} - with: - name: edge-minimal-cs8 - path: | - *.json - *.log diff --git a/.github/workflows/centos-stream-9.yml b/.github/workflows/centos-stream-9.yml index 2151e01bb..15dcb8d6d 100644 --- a/.github/workflows/centos-stream-9.yml +++ b/.github/workflows/centos-stream-9.yml @@ -1,5 +1,5 @@ --- -name: Run Edge Test on CentOS Stream 9 +name: Run Edge Test on CS 9 on: issue_comment: @@ -9,19 +9,7 @@ on: jobs: pr-info: if: ${{ github.event.issue.pull_request && - (endsWith(github.event.comment.body, '/test-cs9') || - endsWith(github.event.comment.body, '/test-cs9-virt') || - endsWith(github.event.comment.body, '/test-cs9-ng') || - endsWith(github.event.comment.body, '/test-cs9-raw') || - endsWith(github.event.comment.body, '/test-cs9-ami') || - endsWith(github.event.comment.body, '/test-cs9-arm-ami') || - endsWith(github.event.comment.body, '/test-cs9-simplified') || - endsWith(github.event.comment.body, '/test-cs9-fdo-aio') || - endsWith(github.event.comment.body, '/test-cs9-8to9') || - endsWith(github.event.comment.body, '/test-cs9-ignition') || - endsWith(github.event.comment.body, '/test-cs9-minimal') || - endsWith(github.event.comment.body, '/test-cs9-vsphere') || - endsWith(github.event.comment.body, '/test-cs9-arm-minimal')) }} + (endsWith(github.event.comment.body, '/test-cs-9')) }} runs-on: ubuntu-latest steps: - name: Query author repository permissions @@ -32,14 +20,13 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - # restrict running of tests to users with admin or write permission for the repository - # see https://docs.github.com/en/free-pro-team@latest/rest/reference/repos#get-repository-permissions-for-a-user - name: Check if user does have correct permissions if: contains('admin write', fromJson(steps.user_permission.outputs.data).permission) id: check_user_perm run: | echo "User '${{ github.event.sender.login }}' has permission '${{ fromJson(steps.user_permission.outputs.data).permission }}' allowed values: 'admin', 'write'" echo "allowed_user=true" >> $GITHUB_OUTPUT + - name: Get information for pull request uses: octokit/request-action@v2.x id: pr-api @@ -51,980 +38,65 @@ jobs: outputs: allowed_user: ${{ steps.check_user_perm.outputs.allowed_user }} sha: ${{ fromJson(steps.pr-api.outputs.data).head.sha }} + ref: ${{ fromJson(steps.pr-api.outputs.data).head.ref }} + repo_url: ${{ fromJson(steps.pr-api.outputs.data).head.repo.html_url }} - pre-edge-commit-cs9: - needs: pr-info - if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request && - (endsWith(github.event.comment.body, '/test-cs9') || - endsWith(github.event.comment.body, '/test-cs9-virt')) }} - runs-on: ubuntu-latest - env: - STATUS_NAME: edge-commit-cs9 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Runner has been deploying...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - edge-commit-cs9: - needs: [pr-info, pre-edge-commit-cs9] - runs-on: [kite, x86_64, gcp, centos-stream-9, medium] - env: - STATUS_NAME: edge-commit-cs9 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Test has been running...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Clone repository - uses: actions/checkout@v3 - with: - ref: ${{ needs.pr-info.outputs.sha }} - fetch-depth: 0 - - - name: run ostree.sh - run: ./ostree.sh - timeout-minutes: 60 - - - name: Set non cancelled result status - if: ${{ !cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: ${{ job.status }} - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Set cancelled result status - if: ${{ cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: error - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - uses: actions/upload-artifact@v3 - if: ${{ always() }} - with: - name: edge-commit-cs9 - path: | - *.json - *.log - - pre-edge-installer-cs9: - needs: pr-info - if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request && - (endsWith(github.event.comment.body, '/test-cs9') || - endsWith(github.event.comment.body, '/test-cs9-ng')) }} - runs-on: ubuntu-latest - env: - STATUS_NAME: edge-installer-cs9 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Runner has been deploying...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - edge-installer-cs9: - needs: [pr-info, pre-edge-installer-cs9] - runs-on: [kite, x86_64, rhos-01, centos-stream-9, large] - env: - STATUS_NAME: edge-installer-cs9 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Test has been running...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Clone repository - uses: actions/checkout@v3 - with: - ref: ${{ needs.pr-info.outputs.sha }} - fetch-depth: 0 - - - name: run ostree-ng.sh - run: ./ostree-ng.sh - env: - OCP4_TOKEN: ${{ secrets.OCP4_TOKEN }} - QUAY_USERNAME: ${{ secrets.QUAY_USERNAME }} - QUAY_PASSWORD: ${{ secrets.QUAY_PASSWORD }} - timeout-minutes: 120 - - - name: Set non cancelled result status - if: ${{ !cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: ${{ job.status }} - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Set cancelled result status - if: ${{ cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: error - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - uses: actions/upload-artifact@v3 - if: ${{ always() }} - with: - name: edge-installer-cs9 - path: | - *.json - *.log - - pre-edge-raw-image-cs9: - needs: pr-info - if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request && - (endsWith(github.event.comment.body, '/test-cs9') || - endsWith(github.event.comment.body, '/test-cs9-raw')) }} - runs-on: ubuntu-latest - env: - STATUS_NAME: edge-raw-image-cs9 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Runner has been deploying...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - edge-raw-image-cs9: - needs: [pr-info, pre-edge-raw-image-cs9] - runs-on: [kite, x86_64, gcp, centos-stream-9, medium] - env: - STATUS_NAME: edge-raw-image-cs9 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Test has been running...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Clone repository - uses: actions/checkout@v3 - with: - ref: ${{ needs.pr-info.outputs.sha }} - fetch-depth: 0 - - - name: run ostree-raw-image.sh - run: ./ostree-raw-image.sh - env: - DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }} - DOCKERHUB_PASSWORD: ${{ secrets.DOCKERHUB_PASSWORD }} - timeout-minutes: 90 - - - name: Set non cancelled result status - if: ${{ !cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: ${{ job.status }} - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Set cancelled result status - if: ${{ cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: error - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - uses: actions/upload-artifact@v3 - if: ${{ always() }} - with: - name: edge-raw-image-cs9 - path: | - *.json - *.log - - pre-edge-ami-image-cs9: - needs: pr-info - if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request && - (endsWith(github.event.comment.body, '/test-cs9') || - endsWith(github.event.comment.body, '/test-cs9-ami')) }} - runs-on: ubuntu-latest - env: - STATUS_NAME: edge-ami-image-cs9 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Runner has been deploying...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - edge-ami-image-cs9: - needs: [pr-info, pre-edge-ami-image-cs9] - runs-on: [kite, x86_64, gcp, centos-stream-9, medium] - env: - STATUS_NAME: edge-ami-image-cs9 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Test has been running...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Clone repository - uses: actions/checkout@v3 - with: - ref: ${{ needs.pr-info.outputs.sha }} - fetch-depth: 0 - - - name: run ostree-ami-image.sh - run: ./ostree-ami-image.sh - env: - AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} - AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - AWS_DEFAULT_REGION: us-east-1 - DOWNLOAD_NODE: ${{ secrets.DOWNLOAD_NODE }} - timeout-minutes: 90 - - - name: Set non cancelled result status - if: ${{ !cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: ${{ job.status }} - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Set cancelled result status - if: ${{ cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: error - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - uses: actions/upload-artifact@v3 - if: ${{ always() }} - with: - name: edge-ami-image-cs9 - path: | - *.json - *.log - - pre-edge-simplified-cs9: - needs: pr-info - if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request && - (endsWith(github.event.comment.body, '/test-cs9') || - endsWith(github.event.comment.body, '/test-cs9-simplified')) }} - runs-on: ubuntu-latest - env: - STATUS_NAME: edge-simplified-installer-cs9 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Runner has been deploying...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - edge-simplified-cs9: - needs: [pr-info, pre-edge-simplified-cs9] - runs-on: [kite, x86_64, gcp, centos-stream-9, medium] - env: - STATUS_NAME: edge-simplified-installer-cs9 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Test has been running...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Clone repository - uses: actions/checkout@v3 - with: - ref: ${{ needs.pr-info.outputs.sha }} - fetch-depth: 0 - - - name: run ostree-simplified-installer.sh - run: ./ostree-simplified-installer.sh - timeout-minutes: 150 - - - name: Set non cancelled result status - if: ${{ !cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: ${{ job.status }} - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Set cancelled result status - if: ${{ cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: error - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - uses: actions/upload-artifact@v3 - if: ${{ always() }} - with: - name: edge-simplified-installer-cs9 - path: | - *.json - *.log - - pre-edge-8to9-cs9: - needs: pr-info - if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request && - (endsWith(github.event.comment.body, '/test-cs9') || - endsWith(github.event.comment.body, '/test-cs9-8to9')) }} - runs-on: ubuntu-latest - env: - STATUS_NAME: edge-8to9-cs9 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Runner has been deploying...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - edge-8to9-cs9: - needs: [pr-info, pre-edge-8to9-cs9] - runs-on: [kite, x86_64, gcp, centos-stream-9, medium] - env: - STATUS_NAME: edge-8to9-cs9 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Test has been running...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Clone repository - uses: actions/checkout@v3 - with: - ref: ${{ needs.pr-info.outputs.sha }} - fetch-depth: 0 - - - name: run ostree-8-to-9.sh - run: ./ostree-8-to-9.sh - timeout-minutes: 90 - - - name: Set non cancelled result status - if: ${{ !cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: ${{ job.status }} - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Set cancelled result status - if: ${{ cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: error - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - uses: actions/upload-artifact@v3 - if: ${{ always() }} - with: - name: edge-8to9-cs9 - path: | - *.json - *.log - - pre-edge-ignition-cs9: - needs: pr-info - if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request && - (endsWith(github.event.comment.body, '/test-cs9') || - endsWith(github.event.comment.body, '/test-cs9-ignition')) }} - runs-on: ubuntu-latest - env: - STATUS_NAME: edge-ignition-cs9 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Runner has been deploying...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - edge-ignition-cs9: - needs: [pr-info, pre-edge-ignition-cs9] - runs-on: [kite, x86_64, gcp, centos-stream-9, medium] - env: - STATUS_NAME: edge-ignition-cs9 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Test has been running...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Clone repository - uses: actions/checkout@v3 - with: - ref: ${{ needs.pr-info.outputs.sha }} - fetch-depth: 0 - - - name: run ostree-ignition.sh - run: ./ostree-ignition.sh - timeout-minutes: 120 - - - name: Set non cancelled result status - if: ${{ !cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: ${{ job.status }} - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Set cancelled result status - if: ${{ cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: error - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - uses: actions/upload-artifact@v3 - if: ${{ always() }} - with: - name: edge-ignition-cs9 - path: | - *.json - *.log - - pre-edge-minimal-cs9: + edge-cs-9-x86: needs: pr-info - if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request && - (endsWith(github.event.comment.body, '/test-cs9') || - endsWith(github.event.comment.body, '/test-cs9-minimal')) }} + if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request }} + continue-on-error: true runs-on: ubuntu-latest - env: - STATUS_NAME: edge-minimal-cs9 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Runner has been deploying...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - edge-minimal-cs9: - needs: [pr-info, pre-edge-minimal-cs9] - runs-on: [kite, x86_64, gcp, centos-stream-9, medium] - env: - STATUS_NAME: edge-minimal-cs9 steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Test has been running...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - name: Clone repository - uses: actions/checkout@v3 + uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4 with: ref: ${{ needs.pr-info.outputs.sha }} fetch-depth: 0 - - name: run minimal-raw.sh - run: ./minimal-raw.sh - env: - DOWNLOAD_NODE: ${{ secrets.DOWNLOAD_NODE }} - timeout-minutes: 60 - - - name: Set non cancelled result status - if: ${{ !cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: ${{ job.status }} - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Set cancelled result status - if: ${{ cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: error - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - uses: actions/upload-artifact@v3 - if: ${{ always() }} - with: - name: edge-minimal-cs9 - path: | - *.json - *.log - - pre-edge-minimal-arm-cs9: + - name: Run the tests + uses: sclorg/testing-farm-as-github-action@v2 + with: + compose: CentOS-Stream-9 + arch: x86_64 + api_key: ${{ secrets.TF_API_KEY }} + git_url: ${{ needs.pr-info.outputs.repo_url }} + git_ref: ${{ needs.pr-info.outputs.ref }} + update_pull_request_status: true + pull_request_status_name: "edge-cs-9-x86" + tmt_context: "arch=x86_64;distro=cs-9" + tmt_plan_regex: edge-x86 + tf_scope: private + secrets: "DOWNLOAD_NODE=${{ secrets.DOWNLOAD_NODE }};OCP4_TOKEN=${{ secrets.OCP4_TOKEN }};QUAY_USERNAME=${{ secrets.QUAY_USERNAME }};QUAY_PASSWORD=${{ secrets.QUAY_PASSWORD }};DOCKERHUB_USERNAME=${{ secrets.DOCKERHUB_USERNAME }};DOCKERHUB_PASSWORD=${{ secrets.DOCKERHUB_PASSWORD }};AWS_ACCESS_KEY_ID=${{ secrets.AWS_ACCESS_KEY_ID }};AWS_SECRET_ACCESS_KEY=${{ secrets.AWS_SECRET_ACCESS_KEY }};GOVC_URL=${{ secrets.GOVC_URL }};GOVC_USERNAME=${{ secrets.GOVC_USERNAME }};GOVC_PASSWORD=${{ secrets.GOVC_PASSWORD }}" + variables: "ARCH=x86_64;AWS_DEFAULT_REGION=us-east-1;GOVC_INSECURE=1" + timeout: 180 + + edge-cs-9-arm: needs: pr-info - if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request && - (endsWith(github.event.comment.body, '/test-cs9') || - endsWith(github.event.comment.body, '/test-cs9-arm-minimal')) }} + if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request }} + continue-on-error: true runs-on: ubuntu-latest - env: - STATUS_NAME: edge-minimal-arm-cs9 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Runner has been deploying...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - edge-minimal-arm-cs9: - needs: [pr-info, pre-edge-minimal-arm-cs9] - runs-on: [kite, aarch64, beaker, centos-stream-9] - env: - STATUS_NAME: edge-minimal-arm-cs9 steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Test has been running...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - name: Clone repository - uses: actions/checkout@v3 + uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4 with: ref: ${{ needs.pr-info.outputs.sha }} fetch-depth: 0 - - name: run minimal-raw.sh - run: ./minimal-raw.sh - env: - DOWNLOAD_NODE: ${{ secrets.DOWNLOAD_NODE }} - timeout-minutes: 90 - - - name: Set non cancelled result status - if: ${{ !cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: ${{ job.status }} - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Set cancelled result status - if: ${{ cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: error - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - uses: actions/upload-artifact@v3 - if: ${{ always() }} - with: - name: edge-minimal-arm-cs9 - path: | - *.json - *.log - - pre-edge-ami-arm-cs9: - needs: pr-info - if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request && - (endsWith(github.event.comment.body, '/test-cs9') || - endsWith(github.event.comment.body, '/test-cs9-arm-ami')) }} - runs-on: ubuntu-latest - env: - STATUS_NAME: edge-ami-arm-cs9 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Runner has been deploying...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - edge-ami-arm-cs9: - needs: [pr-info, pre-edge-ami-arm-cs9] - runs-on: [kite, aarch64, beaker-vm, centos-stream-9] - env: - STATUS_NAME: edge-ami-arm-cs9 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Test has been running...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Clone repository - uses: actions/checkout@v3 - with: - ref: ${{ needs.pr-info.outputs.sha }} - fetch-depth: 0 - - - name: run ostree-ami-image.sh - run: ./ostree-ami-image.sh - env: - AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} - AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - AWS_DEFAULT_REGION: us-east-1 - DOWNLOAD_NODE: ${{ secrets.DOWNLOAD_NODE }} - timeout-minutes: 90 - - - name: Set non cancelled result status - if: ${{ !cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: ${{ job.status }} - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Set cancelled result status - if: ${{ cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: error - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - uses: actions/upload-artifact@v3 - if: ${{ always() }} - with: - name: edge-ami-arm-cs9 - path: | - *.json - *.log - - pre-edge-vsphere-cs9: - needs: pr-info - if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request && - (endsWith(github.event.comment.body, '/test-cs9') || - endsWith(github.event.comment.body, '/test-cs9-vsphere')) }} - runs-on: ubuntu-latest - env: - STATUS_NAME: edge-vsphere-cs9 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Runner has been deploying...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - edge-vsphere-cs9: - needs: [pr-info, pre-edge-vsphere-cs9] - runs-on: [kite, x86_64, rhos-01, centos-stream-9, medium] - env: - STATUS_NAME: edge-vsphere-cs9 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Test has been running...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Clone repository - uses: actions/checkout@v3 - with: - ref: ${{ needs.pr-info.outputs.sha }} - fetch-depth: 0 - - - name: run ostree-vsphere.sh - run: ./ostree-vsphere.sh - env: - DOWNLOAD_NODE: ${{ secrets.DOWNLOAD_NODE }} - GOVC_URL: ${{ secrets.GOVC_URL }} - GOVC_USERNAME: ${{ secrets.GOVC_USERNAME }} - GOVC_PASSWORD: ${{ secrets.GOVC_PASSWORD }} - GOVC_INSECURE: 1 - timeout-minutes: 120 - - - name: Set non cancelled result status - if: ${{ !cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: ${{ job.status }} - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Set cancelled result status - if: ${{ cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: error - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - uses: actions/upload-artifact@v3 - if: ${{ always() }} - with: - name: edge-vsphere-cs9 - path: | - *.json - *.log - - pre-edge-fdo-aio-cs9: - needs: pr-info - if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request && - (endsWith(github.event.comment.body, '/test-cs9') || - endsWith(github.event.comment.body, '/test-cs9-fdo-aio')) }} - runs-on: ubuntu-latest - env: - STATUS_NAME: edge-fdo-aio-cs9 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Runner has been deploying...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - edge-fdo-aio-cs9: - needs: [pr-info, pre-edge-fdo-aio-cs9] - runs-on: [kite, x86_64, rhos-01, centos-stream-9, medium] - env: - STATUS_NAME: edge-fdo-aio-cs9 - - steps: - - name: Create in-progress status - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: pending - description: 'Test has been running...' - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Clone repository - uses: actions/checkout@v3 - with: - ref: ${{ needs.pr-info.outputs.sha }} - fetch-depth: 0 - - - name: run ostree-fdo-aio.sh - run: ./ostree-fdo-aio.sh - env: - DOWNLOAD_NODE: ${{ secrets.DOWNLOAD_NODE }} - timeout-minutes: 150 - - - name: Set non cancelled result status - if: ${{ !cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: ${{ job.status }} - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Set cancelled result status - if: ${{ cancelled() }} - uses: octokit/request-action@v2.x - with: - route: 'POST /repos/${{ github.repository }}/statuses/${{ needs.pr-info.outputs.sha }}' - context: ${{ env.STATUS_NAME }} - state: error - target_url: 'https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - uses: actions/upload-artifact@v3 - if: ${{ always() }} - with: - name: edge-fdo-aio-cs9 - path: | - *.json - *.log + - name: Run the tests + uses: sclorg/testing-farm-as-github-action@v2 + with: + compose: CentOS-Stream-9 + arch: aarch64 + api_key: ${{ secrets.TF_API_KEY }} + git_url: ${{ needs.pr-info.outputs.repo_url }} + git_ref: ${{ needs.pr-info.outputs.ref }} + update_pull_request_status: true + pull_request_status_name: "edge-cs-9-arm" + tmt_context: "arch=aarch64;distro=cs-9" + tmt_plan_regex: edge-arm + tf_scope: private + secrets: "DOWNLOAD_NODE=${{ secrets.DOWNLOAD_NODE }};OCP4_TOKEN=${{ secrets.OCP4_TOKEN }};QUAY_USERNAME=${{ secrets.QUAY_USERNAME }};QUAY_PASSWORD=${{ secrets.QUAY_PASSWORD }};DOCKERHUB_USERNAME=${{ secrets.DOCKERHUB_USERNAME }};DOCKERHUB_PASSWORD=${{ secrets.DOCKERHUB_PASSWORD }};AWS_ACCESS_KEY_ID=${{ secrets.AWS_ACCESS_KEY_ID }};AWS_SECRET_ACCESS_KEY=${{ secrets.AWS_SECRET_ACCESS_KEY }};GOVC_URL=${{ secrets.GOVC_URL }};GOVC_USERNAME=${{ secrets.GOVC_USERNAME }};GOVC_PASSWORD=${{ secrets.GOVC_PASSWORD }}" + variables: "ARCH=aarch64;AWS_DEFAULT_REGION=us-east-1;GOVC_INSECURE=1" + timeout: 180 diff --git a/tmt/plans/edge-test.fmf b/tmt/plans/edge-test.fmf index d0e702b15..02e17652d 100644 --- a/tmt/plans/edge-test.fmf +++ b/tmt/plans/edge-test.fmf @@ -55,6 +55,8 @@ provision: enabled: false - when: distro == rhel-8-10 enabled: false + - when: distro==cs-9 + enabled: false /edge-x86-ignition: summary: Test edge ignition feature @@ -79,6 +81,8 @@ provision: enabled: false - when: distro == rhel-8-10 enabled: false + - when: distro==cs-9 + enabled: false /edge-x86-vsphere: summary: Test edge vsphere image @@ -123,6 +127,8 @@ provision: enabled: false - when: distro == rhel-8-10 enabled: false + - when: distro==cs-9 + enabled: false /edge-x86-9to9: summary: Test edge installer image @@ -135,6 +141,8 @@ provision: enabled: false - when: distro == rhel-8-10 enabled: false + - when: distro==cs-9 + enabled: false /edge-arm-ami-image: summary: Test edge ami image