Skip to content

Integrating Demos Tests in the CI #6

Integrating Demos Tests in the CI

Integrating Demos Tests in the CI #6

Workflow file for this run

name: integration-tests
on:
push:
branches:
- ci-testing
- main
- release/* #ToDo: add a release branch
pull_request:
workflow_dispatch:
jobs:
run-test-basic-demos:
name: learn-the-basics
uses: ./.github/workflows/_basic-test.yml
activate-vm:
needs: run-test-basic-demos
runs-on: ubuntu-latest
if: always() # Run this job always, regardless of the status of run-test-basics
steps:
- name: Checkout Demos🛎
uses: actions/checkout@v2
with:
path: demos
persist-credentials: false
submodules: "recursive"
fetch-depth: 1
- name: Install clients
run: |
pip3 install pymongo google-api-python-client paramiko==2.7.1
- name: Start GPU VM
run: |
cd demos/tests/auth
mkdir -p ~/.ssh
touch ~/.ssh/id_rsa
echo "${{ secrets.SSH_KEY }}" > $HOME/.ssh/id_rsa
chmod 600 $HOME/.ssh/id_rsa
python3 db_auth.py ${{ secrets.DB_ENDPOINT }} ${{ secrets.DB_OBJ_ID }}
python3 vm_auth.py ${{ secrets.SSH_USERNAME }} ${{ secrets.SSH_PASSPHRASE }} "false"
run-test-example-demos:
needs: activate-vm
name: examples-and-demos
uses: ./.github/workflows/_demo-test.yml
deactivate-vm:
needs: run-test-example-demos
runs-on: ubuntu-latest
if: always() # Run this job always, regardless of the status of run-test
steps:
- name: Checkout Demos🛎
uses: actions/checkout@v2
with:
path: demos
persist-credentials: false
submodules: "recursive"
fetch-depth: 1
- name: Install clients
run: |
pip3 install pymongo google-api-python-client paramiko==2.7.1
- name: Stop GPU VM
run: |
cd demos/tests/auth
python3 db_auth.py ${{ secrets.DB_ENDPOINT }} ${{ secrets.DB_OBJ_ID }}
python3 vm_auth.py ${{ secrets.SSH_USERNAME }} ${{ secrets.SSH_PASSPHRASE }} "true"