diff --git a/.github/workflows/rhel-9-4-single.yaml b/.github/workflows/rhel-9-4-single.yaml new file mode 100644 index 0000000..323a3e4 --- /dev/null +++ b/.github/workflows/rhel-9-4-single.yaml @@ -0,0 +1,74 @@ +--- +name: Run Edge Test on RHEL 9.4.0 + +on: + issue_comment: + types: + - created + +jobs: + pr-info: + if: ${{ github.event.issue.pull_request && + (endsWith(github.event.comment.body, '/test-rhel-9-4')) }} + 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 }} + + - 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 }} + ref: ${{ fromJson(steps.pr-api.outputs.data).head.ref }} + repo_url: ${{ fromJson(steps.pr-api.outputs.data).head.repo.html_url }} + + edge-rhel-94: + needs: pr-info + if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request }} + continue-on-error: true + strategy: + matrix: + arch: [x86_64, aarch64] + runs-on: ubuntu-latest + + steps: + - name: Clone repository + uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4 + with: + ref: ${{ needs.pr-info.outputs.sha }} + fetch-depth: 0 + + - name: Run the tests + uses: sclorg/testing-farm-as-github-action@v2 + with: + compose: RHEL-9.4.0-Nightly + arch: ${{ matrix.arch }} + 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-rhel-9.4-${{ matrix.arch }}" + tmt_context: "arch=${{ matrix.arch }};distro=rhel" + tmt_plan_regex: edge-test + 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 }};AWS_DEFAULT_REGION=us-east-1;GOVC_URL=${{ secrets.GOVC_URL }};GOVC_USERNAME=${{ secrets.GOVC_USERNAME }};GOVC_PASSWORD=${{ secrets.GOVC_PASSWORD }};GOVC_INSECURE=1" + timeout: 180 diff --git a/.github/workflows/rhel-9-4.yaml b/.github/workflows/rhel-9-4.yaml index 4708e89..c01f2c5 100644 --- a/.github/workflows/rhel-9-4.yaml +++ b/.github/workflows/rhel-9-4.yaml @@ -1,5 +1,5 @@ --- -name: rhel94 test +name: Run Edge Test on RHEL 9.4.0 on: issue_comment: @@ -9,9 +9,9 @@ on: jobs: pr-info: if: ${{ github.event.issue.pull_request && - (endsWith(github.event.comment.body, '/test-rhel-9-4') || - endsWith(github.event.comment.body, '/test-rhel-9-4-commit') || - endsWith(github.event.comment.body, '/test-rhel-9-4-installer') || + (endsWith(github.event.comment.body, '/test-rhel-9-44') || + endsWith(github.event.comment.body, '/test-rhel-9-4-virt') || + endsWith(github.event.comment.body, '/test-rhel-9-4-ng') || endsWith(github.event.comment.body, '/test-rhel-9-4-raw') || endsWith(github.event.comment.body, '/test-rhel-9-4-ami') || endsWith(github.event.comment.body, '/test-rhel-9-4-arm-ami') || @@ -72,7 +72,7 @@ jobs: fetch-depth: 0 - name: Run the tests - uses: sclorg/testing-farm-as-github-action@v1 + uses: sclorg/testing-farm-as-github-action@v2 with: compose: RHEL-9.4.0-Nightly arch: x86_64 @@ -101,7 +101,7 @@ jobs: fetch-depth: 0 - name: Run the tests - uses: sclorg/testing-farm-as-github-action@v1 + uses: sclorg/testing-farm-as-github-action@v2 with: compose: RHEL-9.4.0-Nightly arch: x86_64 @@ -130,7 +130,7 @@ jobs: fetch-depth: 0 - name: Run the tests - uses: sclorg/testing-farm-as-github-action@v1 + uses: sclorg/testing-farm-as-github-action@v2 with: compose: RHEL-9.4.0-Nightly arch: x86_64 @@ -159,7 +159,7 @@ jobs: fetch-depth: 0 - name: Run the tests - uses: sclorg/testing-farm-as-github-action@v1 + uses: sclorg/testing-farm-as-github-action@v2 with: compose: RHEL-9.4.0-Nightly arch: x86_64 @@ -188,7 +188,7 @@ jobs: fetch-depth: 0 - name: Run the tests - uses: sclorg/testing-farm-as-github-action@v1 + uses: sclorg/testing-farm-as-github-action@v2 with: compose: RHEL-9.4.0-Nightly arch: aarch64 @@ -217,7 +217,7 @@ jobs: fetch-depth: 0 - name: Run the tests - uses: sclorg/testing-farm-as-github-action@v1 + uses: sclorg/testing-farm-as-github-action@v2 with: compose: RHEL-9.4.0-Nightly arch: x86_64 @@ -246,7 +246,7 @@ jobs: fetch-depth: 0 - name: Run the tests - uses: sclorg/testing-farm-as-github-action@v1 + uses: sclorg/testing-farm-as-github-action@v2 with: compose: RHEL-9.4.0-Nightly arch: x86_64 @@ -275,7 +275,7 @@ jobs: fetch-depth: 0 - name: Run the tests - uses: sclorg/testing-farm-as-github-action@v1 + uses: sclorg/testing-farm-as-github-action@v2 with: compose: RHEL-9.4.0-Nightly arch: aarch64 @@ -304,7 +304,7 @@ jobs: fetch-depth: 0 - name: Run the tests - uses: sclorg/testing-farm-as-github-action@v1 + uses: sclorg/testing-farm-as-github-action@v2 with: compose: RHEL-9.4.0-Nightly arch: x86_64 @@ -333,7 +333,7 @@ jobs: fetch-depth: 0 - name: Run the tests - uses: sclorg/testing-farm-as-github-action@v1 + uses: sclorg/testing-farm-as-github-action@v2 with: compose: RHEL-9.4.0-Nightly arch: x86_64 @@ -362,7 +362,7 @@ jobs: fetch-depth: 0 - name: Run the tests - uses: sclorg/testing-farm-as-github-action@v1 + uses: sclorg/testing-farm-as-github-action@v2 with: compose: RHEL-9.4.0-Nightly arch: x86_64 @@ -391,7 +391,7 @@ jobs: fetch-depth: 0 - name: Run the tests - uses: sclorg/testing-farm-as-github-action@v1 + uses: sclorg/testing-farm-as-github-action@v2 with: compose: RHEL-9.4.0-Nightly arch: x86_64 @@ -420,7 +420,7 @@ jobs: fetch-depth: 0 - name: Run the tests - uses: sclorg/testing-farm-as-github-action@v1 + uses: sclorg/testing-farm-as-github-action@v2 with: compose: RHEL-9.4.0-Nightly arch: x86_64 @@ -449,7 +449,7 @@ jobs: fetch-depth: 0 - name: Run the tests - uses: sclorg/testing-farm-as-github-action@v1 + uses: sclorg/testing-farm-as-github-action@main with: compose: RHEL-9.4.0-Nightly arch: x86_64 @@ -478,7 +478,7 @@ jobs: fetch-depth: 0 - name: Run the tests - uses: sclorg/testing-farm-as-github-action@v1 + uses: sclorg/testing-farm-as-github-action@v2 with: compose: RHEL-9.4.0-Nightly arch: x86_64 diff --git a/ostree-8-to-9.sh b/ostree-8-to-9.sh index 4e511c3..b6a8dc3 100755 --- a/ostree-8-to-9.sh +++ b/ostree-8-to-9.sh @@ -639,4 +639,9 @@ check_result # Final success clean up clean_up +# Check process +greenprint "🛃 Checking for leftover or orphaned process" +sudo ps axjf +sudo pstree -pal + exit 0 diff --git a/ostree-ami-image.sh b/ostree-ami-image.sh index 48b2074..6542e05 100755 --- a/ostree-ami-image.sh +++ b/ostree-ami-image.sh @@ -84,7 +84,6 @@ get_compose_metadata () { # Move the JSON file into place. sudo cat "${TEMPDIR}"/"${COMPOSE_ID}".json | jq -M '.' | tee "$METADATA_FILE" > /dev/null - sudo chown admin:admin "${TEMPDIR}"/"${COMPOSE_ID}".json } # Build ostree image. diff --git a/setup.sh b/setup.sh index fb338ee..f733b12 100755 --- a/setup.sh +++ b/setup.sh @@ -232,3 +232,9 @@ sudo composer-cli sources list for SOURCE in $(sudo composer-cli sources list); do sudo composer-cli sources info "$SOURCE" done + +# In case port 8081 is already in use +sudo dnf install -y lsof +if lsof -nP -iTCP -sTCP:LISTEN|grep 8081; then + sudo fuser -k 8081/tcp +fi diff --git a/tmt/plans/edge-test.fmf b/tmt/plans/edge-test.fmf index fa4e848..4a943f0 100644 --- a/tmt/plans/edge-test.fmf +++ b/tmt/plans/edge-test.fmf @@ -1,4 +1,4 @@ -summary: Edge commit test +summary: Edge test plan discover: how: fmf test: edge-test @@ -6,71 +6,108 @@ execute: how: tmt provision: hardware: - memory: ">= 16 GB" virtualization: is-supported: true + cpu: + processors: ">= 2" + memory: ">= 6 GB" /edge-commit: summary: Test edge commit environment+: TEST_CASE: edge-commit + adjust+: + - when: arch != x86_64 + enabled: false /edge-installer: summary: Test edge installer image environment+: TEST_CASE: edge-installer + adjust+: + - when: arch != x86_64 + enabled: false /edge-raw-image: summary: Test edge raw image environment+: TEST_CASE: edge-raw-image - -/edge-ami-image: - summary: Test edge ami image - environment+: - TEST_CASE: edge-ami-image + adjust+: + - when: arch != x86_64 + enabled: false /edge-simplified-installer: summary: Test edge simplified installer image environment+: TEST_CASE: edge-simplified-installer + adjust+: + - when: arch != x86_64 + enabled: false /edge-minimal: summary: Test edge minimal raw image environment+: TEST_CASE: edge-minimal -/edge-vsphere: - summary: Test edge vsphere image - environment+: - TEST_CASE: edge-vsphere - /edge-fdo-aio: summary: Test edge with fdo aio service environment+: TEST_CASE: edge-fdo-aio + adjust+: + - when: arch != x86_64 + enabled: false /edge-fdo-db: summary: Test edge with fdo package with db environment+: TEST_CASE: edge-fdo-db + adjust+: + - when: arch != x86_64 + enabled: false /edge-ignition: summary: Test edge ignition feature environment+: TEST_CASE: edge-ignition + adjust+: + - when: arch != x86_64 + enabled: false /edge-pulp: summary: Test edge pulp feature environment+: TEST_CASE: edge-pulp + adjust+: + - when: arch != x86_64 + enabled: false /edge-8to9: summary: Test edge upgrade from 8 to 9 environment+: TEST_CASE: edge-8to9 + adjust+: + - when: arch != x86_64 + enabled: false /edge-9to9: summary: Test edge rebase from 9 to 9 environment+: TEST_CASE: edge-9to9 + adjust+: + - when: arch != x86_64 + enabled: false + +/edge-ami-image: + summary: Test edge ami image + environment+: + TEST_CASE: edge-ami-image + +/edge-vsphere: + summary: Test edge vsphere image + environment+: + TEST_CASE: edge-vsphere + adjust+: + - when: arch != x86_64 + enabled: false + + diff --git a/tmt/tests/test.sh b/tmt/tests/test.sh index 38668cf..09f87c1 100755 --- a/tmt/tests/test.sh +++ b/tmt/tests/test.sh @@ -1,4 +1,5 @@ #!/bin/bash +set -euox pipefail cd ../../ || exit 1 @@ -6,7 +7,7 @@ function run_tests() { if [ "$TEST_CASE" = "edge-commit" ]; then ./ostree.sh elif [ "$TEST_CASE" = "edge-installer" ]; then - ./ostree-installer.sh + ./ostree-ng.sh elif [ "$TEST_CASE" = "edge-raw-image" ]; then ./ostree-raw-image.sh elif [ "$TEST_CASE" = "edge-ami-image" ]; then