Terra Orchestration API Smoke Test #309
This file contains hidden or 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
name: Terra Orchestration API Smoke Test | |
on: | |
schedule: | |
- cron: "0 8 * * 1,3,5" | |
workflow_dispatch: | |
env: | |
DOCKER_IMAGE_NAME: "gcr.io/broad-singlecellportal-staging/single-cell-portal" | |
jobs: | |
Run-Orch-Smoketest: | |
permissions: | |
contents: 'read' | |
id-token: 'write' | |
runs-on: self-hosted | |
steps: | |
- name: Check out repository code | |
uses: actions/checkout@v4 | |
- name: Configure gcloud | |
uses: ./.github/actions/setup-gcloud | |
with: | |
service_account_email: '839419950053-compute@developer.gserviceaccount.com' | |
google_cloud_project: 'broad-singlecellportal-staging' | |
- name: Build image and setup env | |
id: build-image-setup-env | |
uses: ./.github/actions/docker-build-env-setup | |
- name: Load secrets and run tests | |
id: run-smoke-test | |
env: | |
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
DOCKER_IMAGE_TAG: ${{ steps.build-image-setup-env.outputs.docker-tag }} | |
SCP_CONFIG: 'scp-config-json' | |
DEFAULT_SA: 'default-sa-keyfile' | |
READONLY_SA: 'read-only-sa-keyfile' | |
ORCH_SMOKE_TEST: true | |
CI: true | |
run: | | |
bin/load_env_secrets.sh -p $SCP_CONFIG -s $DEFAULT_SA -r $READONLY_SA -g $GOOGLE_CLOUD_PROJECT -e test \ | |
-v $DOCKER_IMAGE_TAG -n single-cell-portal-test -c bin/run_orch_smoke_test.sh | |
- name: Notify Slack failure | |
id: notify-slack-on-fail | |
uses: slackapi/slack-github-action@v1.24.0 | |
if: failure() | |
with: | |
channel-id: "C05JHJ0UA1M" #scp-alerts | |
payload: | | |
{ | |
"blocks": [ | |
{ | |
"type": "section", | |
"text": { | |
"type": "mrkdwn", | |
"text": ":x: Orchestration smoke test: ${{ job.status }}\nhttps://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}" | |
} | |
} | |
] | |
} | |
env: | |
SLACK_BOT_TOKEN: ${{ secrets.SLACKBOT_TOKEN }} | |
- name: Preserve all test logs | |
uses: actions/upload-artifact@v4 | |
if: always() | |
with: | |
name: test-logs | |
path: | | |
log/test.log |