Skip to content

Commit

Permalink
Merge pull request #12 from mwangggg/gh_pr
Browse files Browse the repository at this point in the history
tmp
  • Loading branch information
mwangggg authored Jul 27, 2023
2 parents 7571eb3 + accd2a8 commit beb0d88
Showing 1 changed file with 92 additions and 0 deletions.
92 changes: 92 additions & 0 deletions .github/workflows/pr-command.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
name: PR Command

concurrency:
group: ci-${{ github.run_id }}
cancel-in-progress: true

on:
issue_comment:
types: [created]

jobs:
create-command:
runs-on: ubuntu-latest
if: ${{ github.event.issue.pull_request && startsWith(github.event.comment.body, '/build_test') }}
steps:
- name: Command handler for building and testing
id: command
uses: xt0rted/slash-command-action@v1
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
command: build_test
reaction: "true"
reaction-type: "+1"
allow-edits: "false"
permission-level: write

code-analysis:
uses: ./.github/workflows/ci-code-analysis.yml
with:
checkout-repo: ${{ github.event.pull_request.head.repo.full_name }}
checkout-ref: ${{ github.event.pull_request.head.ref }}
secrets: inherit
if: github.repository_owner == 'cryostatio' && contains(github.event.pull_request.labels.*.name, 'safe-to-test') && github.event.issue.pull_request && startsWith(github.event.comment.body, '/build_test')

build-and-test:
strategy:
matrix:
arch: [amd64, arm64]
uses: ./.github/workflows/ci-build-image.yml
with:
build-arch: ${{ matrix.arch }}
checkout-repo: ${{ github.event.pull_request.head.repo.full_name }}
checkout-ref: ${{ github.event.pull_request.head.ref }}
skip-itests: ${{ matrix.arch != 'amd64' }}
secrets: inherit
if: github.repository_owner == 'cryostatio' && contains(github.event.pull_request.labels.*.name, 'safe-to-test') && github.event.issue.pull_request && startsWith(github.event.comment.body, '/build_test')

push-to-ghcr:
runs-on: ubuntu-latest
strategy:
matrix:
arch: [amd64, arm64]
needs: [code-analysis, build-and-test]
if: always() && github.repository_owner == 'cryostatio' && github.event.issue.pull_request && startsWith(github.event.comment.body, '/build_test')
steps:
- name: Fail if needs-triage label applied
if: ${{ contains(github.event.pull_request.labels.*.name, 'needs-triage') }}
run: exit 1
- name: Fail if safe-to-test label NOT applied
if: ${{ !contains(github.event.pull_request.labels.*.name, 'safe-to-test') }}
run: exit 1
- uses: actions/download-artifact@v3
with:
name: cryostat-${{ matrix.arch }}
if: github.repository_owner == 'cryostatio'
- name: Load cryostat image
run: podman load -i cryostat-${{ matrix.arch }}.tar
if: github.repository_owner == 'cryostatio'
- name: Tag cryostat image
run: podman tag cryostat ghcr.io/${{ github.repository_owner }}/cryostat:pr-${{ github.event.number }}-${{ github.event.pull_request.head.sha }}-linux-${{ matrix.arch }}
if: github.repository_owner == 'cryostatio'
- name: Push PR test image to ghcr.io
id: push-to-ghcr
uses: redhat-actions/push-to-registry@v2
with:
image: cryostat
tags: pr-${{ github.event.number }}-${{ github.event.pull_request.head.sha }}-linux-${{ matrix.arch }}
registry: ghcr.io/${{ github.repository_owner }}
username: ${{ github.event.pull_request.user.login }}
password: ${{ secrets.GHCR_PR_TOKEN }}
if: github.repository_owner == 'cryostatio'
- name: Comment test image link
uses: thollander/actions-comment-pull-request@v1
with:
message: |-
Test image available:
```
$ CRYOSTAT_IMAGE=${{ steps.push-to-ghcr.outputs.registry-path }} sh smoketest.sh
```
'${{ github.workflow }}: ${${{ job.status }}' === 'success' ? 'succeeded ✅' : 'failed ❌'}
url: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}'
if: github.repository_owner == 'cryostatio'

0 comments on commit beb0d88

Please sign in to comment.