Skip to content

Bristol temp

Bristol temp #20

Workflow file for this run

name: Test Azimuth deployment
on:
# We use pull_request_target so that dependabot-created workflows can run
pull_request_target:
types:
- opened
- synchronize
- ready_for_review
- reopened
branches:
- main
permissions:
contents: read
packages: write # required for pushing container images
id-token: write # needed for signing the images with GitHub OIDC Token
security-events: write # required for pushing SARIF files
# 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:

Check failure on line 28 in .github/workflows/test-pr.yaml

View workflow run for this annotation

GitHub Actions / Test Azimuth deployment

Invalid workflow file

The workflow is not valid. .github/workflows/test-pr.yaml (Line: 28, Col: 3): Error calling workflow 'isambard-sc/zenith/.github/workflows/build-push-artifacts.yaml@f3b9b8957b3832b209d436707720ff551794765f'. The nested job 'build_push_images' is requesting 'packages: write, security-events: write, id-token: write', but is only allowed 'packages: read, security-events: none, id-token: none'.
runs-on: ubuntu-latest
steps:
- name: PR must be from a branch in the azimuth-cloud/zenith repo
run: exit ${{ github.event.pull_request.head.repo.full_name == 'azimuth-cloud/zenith' && '0' || '1' }}
publish_artifacts:
uses: ./.github/workflows/build-push-artifacts.yaml
with:
ref: ${{ github.event.pull_request.head.sha }}
secrets: inherit
run_azimuth_tests:
needs: [publish_artifacts]
runs-on: ubuntu-latest
steps:
# Check out the configuration repository
- name: Set up Azimuth environment
uses: stackhpc/azimuth-config/.github/actions/setup@devel
with:
os-clouds: ${{ secrets.OS_CLOUDS }}
environment-prefix: zenith-ci
target-cloud: ${{ vars.TARGET_CLOUD }}
# Use the version of the chart that we just built
# We also want to make sure that we test the operator in the CAPI operator
# We deploy one CaaS app (workstation) and a Kubernetes cluster (for the operator) for the test
extra-vars: |
zenith_chart_version: ${{ needs.publish_artifacts.outputs.chart-version }}
azimuth_capi_operator_release_overrides:
config:
zenith:
apiserverChartName: zenith-apiserver
operatorChartName: zenith-operator
chartRepository: https://stackhpc.github.io/zenith
chartVersion: ${{ needs.publish_artifacts.outputs.chart-version }}
generate_tests_caas_test_case_slurm_enabled: false
generate_tests_caas_test_case_repo2docker_enabled: false
generate_tests_caas_test_case_rstudio_enabled: false
generate_tests_kubernetes_apps_suite_enabled: false
# GitHub terminates jobs after 6 hours
# We don't want jobs to acquire the lock then get timed out before they can finish
# So wait a maximum of 3 hours to acquire the lock, leaving 3 hours for other tasks in the job
timeout-minutes: 180
# Provision Azimuth using the azimuth-ops version under test
- name: Provision Azimuth
uses: stackhpc/azimuth-config/.github/actions/provision@devel
# # Run the tests
- name: Run Azimuth tests
uses: stackhpc/azimuth-config/.github/actions/test@devel
# Tear down the environment
- name: Destroy Azimuth
uses: stackhpc/azimuth-config/.github/actions/destroy@devel
if: ${{ always() }}