Skip to content

test cloud ci

test cloud ci #84

Workflow file for this run

name: cloud-tests
on:
# Runs for pull requests
pull_request:
branches:
- master
# permissions:
# id-token: write
jobs:
cloud-tests:
strategy:
fail-fast: true
matrix:
include:
- arch: cpu
exclude: "no-cuda"
run_on: azure
# - arch: rocm
# exclude : "no-rocm"
runs-on: ubuntu-latest
# environment: test-cloud-ci
# # Cancel previous jobs if a new version was pushed
# concurrency:
# group: "${{ github.ref }}-${{ matrix.arch }}-${{ matrix.run_on }}"
# cancel-in-progress: true
# defaults:
# run:
# shell: bash -el {0}
env:
MILABENCH_CONFIG: "config/examples/test.yaml"
# MILABENCH_SYSTEM: "config/examples/cloud-system.yaml"
MILABENCH_BASE: "output"
# MILABENCH_ARGS: ""
# MILABENCH_DASH: "no"
# ARM_TENANT_ID: "${{ secrets.ARM_TENANT_ID }}"
# ARM_SUBSCRIPTION_ID: "${{ secrets.ARM_SUBSCRIPTION_ID }}"
# AZURE_CORE_OUTPUT: none
steps:
- uses: actions/checkout@v3
with:
token: ${{ github.token }}
- name: Dump GitHub context
env:
GITHUB_CONTEXT: ${{ toJson(github) }}
run: echo "$GITHUB_CONTEXT"
# - uses: actions/setup-python@v2
# with:
# python-version: 3.9
# Follow
# https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/guides/service_principal_client_secret
# to generate a clientId as well as a clientSecret
# - name: Azure login
# uses: azure/login@v2
# with:
# creds: |
# {
# "clientId": "${{ secrets.ARM_CLIENT_ID }}",
# "clientSecret": "${{ secrets.ARM_CLIENT_SECRET }}",
# "subscriptionId": "${{ secrets.ARM_SUBSCRIPTION_ID }}",
# "tenantId": "${{ secrets.ARM_TENANT_ID }}"
# }
- name: dependencies
run: |
python -m pip install -U pip
python -m pip install -U poetry
poetry lock --no-update
poetry install
# - name: setup cloud credentials
# run: |
# mkdir -p ~/.aws
# mkdir -p ~/.ssh/covalent
# echo "${{ secrets.COVALENT_EC2_EXECUTOR_KEYPAIR }}" >~/.ssh/covalent/covalent-ec2-executor-keypair.pem
# echo "[default]" >~/.aws/credentials
# echo "aws_access_key_id=${{ secrets.AWS_ACCESS_KEY_ID }}" >>~/.aws/credentials
# echo "aws_secret_access_key=${{ secrets.AWS_SECRET_ACCESS_KEY }}" >>~/.aws/credentials
# chmod -R a-rwx,u+rwX ~/.aws ~/.ssh
# - name: start covalent server
# run: |
# poetry run -- python3 -m milabench.scripts.covalent serve start --develop
# - name: setup cloud
# run: |
# poetry run milabench cloud \
# --setup \
# --run-on ${{ matrix.run_on }} \
# --system "$MILABENCH_SYSTEM" >$MILABENCH_SYSTEM.${{ matrix.run_on }}
# echo "MILABENCH_SYSTEM=$MILABENCH_SYSTEM.${{ matrix.run_on }}" >>$GITHUB_ENV
- name: install benchmarks
run: |
poetry run milabench install --variant ${{ matrix.arch }}
- name: prepare benchmarks
run: |
poetry run milabench prepare
- name: run benchmarks
run: |
poetry run milabench run
- name: Summary
run: |
git remote -v
poetry run milabench report --push
- name: test reports
if: always()
run: |
git -C $MILABENCH_BASE/reports remote -v
# - name: teardown cloud
# if: always()
# run: |
# if [[ -f "${MILABENCH_SYSTEM%.*}" ]]
# then
# export MILABENCH_SYSTEM=${MILABENCH_SYSTEM%.*}
# fi
# poetry run milabench cloud \
# --teardown \
# --run-on ${{ matrix.run_on }} \
# --all
# - name: debug logs
# if: always()
# run: |
# cat ~/.cache/covalent/covalent_ui.log