Bump peter-evans/create-pull-request from 6 to 7 in the github-actions group #65
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Based on https://github.com/azimuth-cloud/azimuth/blob/master/.github/workflows/test-pr.yaml | |
name: Test pull request | |
on: | |
pull_request_target: | |
types: | |
- opened | |
- synchronize | |
- ready_for_review | |
- reopened | |
branches: | |
- main | |
# Use the head ref for workflow concurrency, with cancellation | |
# This should mean that any previous workflows for a PR get cancelled when a new commit is pushed | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.head_ref }} | |
cancel-in-progress: true | |
jobs: | |
# This job exists so that PRs from outside the main repo are rejected | |
fail_on_remote: | |
runs-on: ubuntu-latest | |
steps: | |
- name: PR must be from a branch in the stackhpc/azimuth-llm repo | |
run: exit ${{ github.event.pull_request.head.repo.full_name == 'stackhpc/azimuth-llm' && '0' || '1' }} | |
publish_images: | |
needs: [fail_on_remote] | |
uses: ./.github/workflows/build-push-images.yml | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
secrets: inherit | |
chart_validation: | |
needs: [publish_images] | |
runs-on: ubuntu-latest | |
env: | |
CLUSTER_NAME: chart-testing | |
RELEASE_NAME: ci-test | |
steps: | |
- name: Checkout the repo | |
uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
- name: Run Gradio app tests | |
run: | | |
./test-images.sh $(git rev-parse --short ${{ github.event.pull_request.head.sha }}) | |
working-directory: web-apps | |
- name: Install Helm | |
uses: azure/setup-helm@v4 | |
- name: Run base chart templating with default values | |
run: helm template ci-test charts/azimuth-llm | |
- name: Set up chart testing | |
uses: helm/chart-testing-action@v2 | |
- name: Run chart linting | |
run: ct lint --config ct.yaml | |
- name: Create Kind Cluster | |
uses: helm/kind-action@v1 | |
with: | |
cluster_name: ${{ env.CLUSTER_NAME }} | |
# NOTE(scott): Since the local Chart.yaml uses "appVersion: latest" and this | |
# only gets overwritten to the correct commit SHA during Helm chart build, | |
# we need to pull these published images and load them into the kind cluster | |
# with the tag correct tag. | |
- name: Load tagged container images into kind cluster | |
run: ./kind-images.sh $(git rev-parse --short ${{ github.event.pull_request.head.sha }}) ${{ env.CLUSTER_NAME }} | |
working-directory: web-apps | |
# https://github.com/helm/charts/blob/master/test/README.md#providing-custom-test-values | |
# Each chart/ci/*-values.yaml file will be treated as a separate test case with it's | |
# own helm install/test process. | |
- name: Run chart install and test | |
run: ct install --config ct.yaml | |
publish_charts: | |
needs: [chart_validation] | |
uses: ./.github/workflows/build-push-charts.yml | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
secrets: inherit |