Skip to content

Terra Orchestration API Smoke Test #249

Terra Orchestration API Smoke Test

Terra Orchestration API Smoke Test #249

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: '[email protected]'
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/[email protected]
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