Skip to content
This repository has been archived by the owner on May 28, 2024. It is now read-only.

Commit

Permalink
ci: add centos-bootc-dev:stream9 image test
Browse files Browse the repository at this point in the history
  • Loading branch information
henrywang committed Feb 6, 2024
1 parent 359c997 commit bf53be5
Show file tree
Hide file tree
Showing 3 changed files with 183 additions and 1 deletion.
166 changes: 166 additions & 0 deletions .github/workflows/cs9-dev-x86.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,166 @@
---
name: centos-bootc-dev:stream9 Test

on:
issue_comment:
types:
- created

jobs:
pr-info:
if: ${{ github.event.issue.pull_request &&
(endsWith(github.event.comment.body, '/test-cs9-dev') ||
endsWith(github.event.comment.body, '/test-cs9-dev-x86') ||
endsWith(github.event.comment.body, '/test-cs9-dev-x86-openstack-replace') ||
endsWith(github.event.comment.body, '/test-cs9-dev-x86-gcp-replace') ||
endsWith(github.event.comment.body, '/test-cs9-dev-x86-aws-replace') ||
endsWith(github.event.comment.body, '/test-cs9-dev-x86-libvirt-replace') ||
endsWith(github.event.comment.body, '/test-cs9-dev-x86-anaconda')) }}
runs-on: ubuntu-latest
steps:
- name: Query author repository permissions
uses: octokit/[email protected]
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/[email protected]
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 }}

cs9-dev-x86-openstack-replace:
needs: pr-info
if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request &&
(endsWith(github.event.comment.body, '/test-cs9-dev') ||
endsWith(github.event.comment.body, '/test-cs9-dev-x86') ||
endsWith(github.event.comment.body, '/test-cs9-dev-x86-openstack-replace')) }}
runs-on: ubuntu-latest

steps:
- name: Clone repository
uses: actions/checkout@v4
with:
ref: ${{ needs.pr-info.outputs.sha }}
fetch-depth: 0

- name: Run the tests
uses: sclorg/testing-farm-as-github-action@v1
with:
compose: CentOS-Stream-9
api_key: ${{ secrets.TF_API_KEY }}
git_url: ${{ needs.pr-info.outputs.repo_url }}
git_ref: ${{ needs.pr-info.outputs.ref }}
arch: "x86_64"
tmt_context: "arch=x86_64"
pull_request_status_name: "bootc-cs9-dev-x86-openstack-replace"
tmt_plan_regex: "openstack"
tf_scope: private
secrets: "OS_USERNAME=${{ secrets.OS_USERNAME }};OS_PASSWORD=${{ secrets.OS_PASSWORD }};OS_AUTH_URL=${{ secrets.OS_AUTH_URL }};OS_PROJECT_NAME=${{ secrets.OS_PROJECT_NAME }};OS_USER_DOMAIN_NAME=${{ secrets.OS_USER_DOMAIN_NAME }};OS_PROJECT_DOMAIN_NAME=${{ secrets.OS_PROJECT_DOMAIN_NAME }};QUAY_USERNAME=${{ secrets.QUAY_USERNAME }};QUAY_PASSWORD=${{ secrets.QUAY_PASSWORD }};TEST_OS=centos-stream-9;IMAGE_NAME=centos-bootc-dev"

cs9-dev-x86-gcp-replace:
needs: pr-info
if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request &&
(endsWith(github.event.comment.body, '/test-cs9-dev') ||
endsWith(github.event.comment.body, '/test-cs9-dev-x86') ||
endsWith(github.event.comment.body, '/test-cs9-dev-x86-gcp-replace')) }}
runs-on: ubuntu-latest

steps:
- name: Clone repository
uses: actions/checkout@v4
with:
ref: ${{ needs.pr-info.outputs.sha }}
fetch-depth: 0

- name: Run the tests
uses: sclorg/testing-farm-as-github-action@v1
with:
compose: CentOS-Stream-9
api_key: ${{ secrets.TF_API_KEY }}
git_url: ${{ needs.pr-info.outputs.repo_url }}
git_ref: ${{ needs.pr-info.outputs.ref }}
arch: "x86_64"
tmt_context: "arch=x86_64"
pull_request_status_name: "bootc-cs9-dev-x86-gcp-replace"
tmt_plan_regex: "gcp"
tf_scope: private
secrets: "GCP_PROJECT=${{ secrets.GCP_PROJECT }};GCP_SERVICE_ACCOUNT_NAME=${{ secrets.GCP_SERVICE_ACCOUNT_NAME }};GCP_SERVICE_ACCOUNT_FILE_B64=${{ secrets.GCP_SERVICE_ACCOUNT_FILE_B64 }};QUAY_USERNAME=${{ secrets.QUAY_USERNAME }};QUAY_PASSWORD=${{ secrets.QUAY_PASSWORD }};TEST_OS=centos-stream-9;IMAGE_NAME=centos-bootc-dev"

cs9-dev-x86-aws-replace:
needs: pr-info
if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request &&
(endsWith(github.event.comment.body, '/test-cs9-dev') ||
endsWith(github.event.comment.body, '/test-cs9-dev-x86') ||
endsWith(github.event.comment.body, '/test-cs9-dev-x86-aws-replace')) }}
runs-on: ubuntu-latest

steps:
- name: Clone repository
uses: actions/checkout@v4
with:
ref: ${{ needs.pr-info.outputs.sha }}
fetch-depth: 0

- name: Run the tests
uses: sclorg/testing-farm-as-github-action@v1
with:
compose: CentOS-Stream-9
api_key: ${{ secrets.TF_API_KEY }}
git_url: ${{ needs.pr-info.outputs.repo_url }}
git_ref: ${{ needs.pr-info.outputs.ref }}
arch: "x86_64"
tmt_context: "arch=x86_64"
pull_request_status_name: "bootc-cs9-dev-x86-aws-replace"
tmt_plan_regex: "aws"
tf_scope: private
secrets: "AWS_ACCESS_KEY_ID=${{ secrets.AWS_ACCESS_KEY_ID }};AWS_SECRET_ACCESS_KEY=${{ secrets.AWS_SECRET_ACCESS_KEY }};AWS_REGION=${{ secrets.AWS_REGION }};QUAY_USERNAME=${{ secrets.QUAY_USERNAME }};QUAY_PASSWORD=${{ secrets.QUAY_PASSWORD }};TEST_OS=centos-stream-9;IMAGE_NAME=centos-bootc-dev"

cs9-dev-x86-libvirt-replace:
needs: pr-info
if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request &&
(endsWith(github.event.comment.body, '/test-cs9-dev') ||
endsWith(github.event.comment.body, '/test-cs9-dev-x86') ||
endsWith(github.event.comment.body, '/test-cs9-dev-x86-libvirt-replace')) }}
runs-on: ubuntu-latest

steps:
- name: Clone repository
uses: actions/checkout@v4
with:
ref: ${{ needs.pr-info.outputs.sha }}
fetch-depth: 0

- name: Run the tests
uses: sclorg/testing-farm-as-github-action@v1
with:
compose: CentOS-Stream-9
api_key: ${{ secrets.TF_API_KEY }}
git_url: ${{ needs.pr-info.outputs.repo_url }}
git_ref: ${{ needs.pr-info.outputs.ref }}
arch: "x86_64"
tmt_context: "arch=x86_64"
pull_request_status_name: "bootc-cs9-dev-x86-libvirt-replace"
tmt_plan_regex: "local"
tf_scope: private
secrets: "QUAY_USERNAME=${{ secrets.QUAY_USERNAME }};QUAY_PASSWORD=${{ secrets.QUAY_PASSWORD }};TEST_OS=centos-stream-9;IMAGE_NAME=centos-bootc-dev"
16 changes: 16 additions & 0 deletions .github/workflows/rhel9-x86.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,10 @@ jobs:

rhel94-x86-openstack-replace:
needs: pr-info
if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request &&
(endsWith(github.event.comment.body, '/test-rhel94') ||
endsWith(github.event.comment.body, '/test-rhel94-x86') ||
endsWith(github.event.comment.body, '/test-rhel94-x86-openstack-replace')) }}
runs-on: ubuntu-latest

steps:
Expand All @@ -76,6 +80,10 @@ jobs:

rhel94-x86-gcp-replace:
needs: pr-info
if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request &&
(endsWith(github.event.comment.body, '/test-rhel94') ||
endsWith(github.event.comment.body, '/test-rhel94-x86') ||
endsWith(github.event.comment.body, '/test-rhel94-x86-gcp-replace')) }}
runs-on: ubuntu-latest

steps:
Expand All @@ -101,6 +109,10 @@ jobs:

rhel94-x86-aws-replace:
needs: pr-info
if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request &&
(endsWith(github.event.comment.body, '/test-rhel94') ||
endsWith(github.event.comment.body, '/test-rhel94-x86') ||
endsWith(github.event.comment.body, '/test-rhel94-x86-aws-replace')) }}
runs-on: ubuntu-latest

steps:
Expand All @@ -126,6 +138,10 @@ jobs:

rhel94-x86-libvirt-replace:
needs: pr-info
if: ${{ needs.pr-info.outputs.allowed_user == 'true' && github.event.issue.pull_request &&
(endsWith(github.event.comment.body, '/test-rhel94') ||
endsWith(github.event.comment.body, '/test-rhel94-x86') ||
endsWith(github.event.comment.body, '/test-rhel94-x86-libvirt-replace')) }}
runs-on: ubuntu-latest

steps:
Expand Down
2 changes: 1 addition & 1 deletion os-replace.sh
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ case "$TEST_OS" in
fi
;;
"centos-stream-9")
IMAGE_NAME="centos-bootc"
IMAGE_NAME=${IMAGE_NAME:-"centos-bootc"}
TIER1_IMAGE_URL="quay.io/centos-bootc/${IMAGE_NAME}:stream9"
TIER1_IMAGE_URL="${IMAGE_URL-$TIER1_IMAGE_URL}"
SSH_USER="cloud-user"
Expand Down

0 comments on commit bf53be5

Please sign in to comment.