QC WALLET RUN ALL TESTS ON ALL DEVICES #110
This file contains 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: QC WALLET RUN ALL TESTS ON ALL DEVICES | |
on: | |
# repository dispatch: if could be triggered from qc wallet repo then wait for midnight, don't think we can wait. | |
workflow_dispatch: | |
schedule: | |
- cron: "0 0 * * *" # every day at midnight | |
jobs: | |
check-app-updated-android: | |
runs-on: ubuntu-latest | |
outputs: | |
APP_IS_NEW: ${{ steps.check-app-updated-on-lt.outputs.APP_IS_NEW }} | |
NEW_APP_URL: ${{ steps.check-app-updated-on-lt.outputs.NEW_APP_URL }} | |
BUILD_NAME: ${{ steps.check-app-updated-on-lt.outputs.BUILD_NAME }} | |
steps: | |
- name: checkout-test-harness | |
uses: actions/checkout@v4 | |
- name: check-app-updated-on-lt | |
id: check-app-updated-on-lt | |
run: | | |
output=($(python .github/workflows/qc_wallet/get_lt_apps_uploaded.py ${{ secrets.LAMBDA_USERNAME }} ${{ secrets.LAMBDA_ACCESS_KEY }} Android .github/workflows/qc_wallet/latest_app.json )) | |
echo ${output[@]} | |
echo ${output[0]} | |
echo ${output[1]} | |
echo "APP_IS_NEW=${output[0]}" >> "$GITHUB_OUTPUT" | |
echo "NEW_APP_URL=${output[1]}" >> "$GITHUB_OUTPUT" | |
echo "BUILD_NAME=${output[2]}" >> "$GITHUB_OUTPUT" | |
check-app-updated-ios: | |
runs-on: ubuntu-latest | |
outputs: | |
APP_IS_NEW: ${{ steps.check-app-updated-on-lt.outputs.APP_IS_NEW }} | |
NEW_APP_URL: ${{ steps.check-app-updated-on-lt.outputs.NEW_APP_URL }} | |
BUILD_NAME: ${{ steps.check-app-updated-on-lt.outputs.BUILD_NAME }} | |
steps: | |
- name: checkout-test-harness | |
uses: actions/checkout@v3 | |
- name: check-app-updated-on-lt | |
id: check-app-updated-on-lt | |
run: | | |
output=($(python .github/workflows/qc_wallet/get_lt_apps_uploaded.py ${{ secrets.LAMBDA_USERNAME }} ${{ secrets.LAMBDA_ACCESS_KEY }} iOS .github/workflows/qc_wallet/latest_app.json )) | |
echo ${output[@]} | |
echo ${output[0]} | |
echo ${output[1]} | |
echo "APP_IS_NEW=${output[0]}" >> "$GITHUB_OUTPUT" | |
echo "NEW_APP_URL=${output[1]}" >> "$GITHUB_OUTPUT" | |
echo "BUILD_NAME=${output[2]}" >> "$GITHUB_OUTPUT" | |
run-on-device-tests: | |
needs: [check-app-updated-ios, check-app-updated-android] | |
if: ${{ needs.check-app-updated-ios.outputs.APP_IS_NEW }} == 'true' && ${{ needs.check-app-updated-android.outputs.APP_IS_NEW }} == 'true' | |
runs-on: ubuntu-latest | |
strategy: | |
max-parallel: 1 | |
fail-fast: false | |
matrix: | |
include: | |
- mobile-platform: "-p Android" | |
app-file-name: "-a ${{ needs.check-app-updated-android.outputs.NEW_APP_URL }}" | |
build-name: "-b ${{ needs.check-app-updated-android.outputs.BUILD_NAME }}" | |
report-project: "android-multi-device-full" | |
# - mobile-platform: "-p Android" | |
# app-file-name: "-a ${{ needs.check-app-updated-android.outputs.NEW_APP_URL }}" | |
# build-name: "-b ${{ needs.check-app-updated-android.outputs.BUILD_NAME }}" | |
# report-project: "candy-uvp-pcft-chat-android" | |
# - mobile-platform: "-p iOS" | |
# app-file-name: "-a ${{ needs.check-app-updated-ios.outputs.NEW_APP_URL }}" | |
# build-name: "-b ${{ needs.check-app-updated-ios.outputs.BUILD_NAME }}" | |
# report-project: "candy-uvp-pcft-chat-ios" | |
# - mobile-platform: "-p Android" | |
# app-file-name: "-a ${{ needs.check-app-updated-android.outputs.NEW_APP_URL }}" | |
# build-name: "-b ${{ needs.check-app-updated-android.outputs.BUILD_NAME }}" | |
# report-project: "bc-digital-id-android" | |
# - mobile-platform: "-p iOS" | |
# app-file-name: "-a ${{ needs.check-app-updated-ios.outputs.NEW_APP_URL }}" | |
# build-name: "-b ${{ needs.check-app-updated-ios.outputs.BUILD_NAME }}" | |
# report-project: "bc-digital-id-ios" | |
#timeout-minutes: 60 | |
steps: | |
# - uses: actions/checkout@v4 | |
# - name: run-aath-agents | |
# if: ${{ matrix.mobile-platform=='-p iOS' && !contains(matrix.report-project,'candy-uvp-pcft-chat') }} | |
# uses: ./.github/workflows/run-aath-agents | |
# with: | |
# LEDGER_URL_CONFIG: "http://test.bcovrin.vonx.io" | |
# USE_NGROK: "" | |
# | |
# - name: run-aath-agents-ngrok | |
# if: ${{ matrix.mobile-platform=='-p Android' && !contains(matrix.report-project,'candy-uvp-pcft-chat') }} | |
# uses: ./.github/workflows/run-aath-agents | |
# with: | |
# NGROK_AUTHTOKEN: ${{ secrets.NGROK_AUTHTOKEN }} | |
# LEDGER_URL_CONFIG: "http://test.bcovrin.vonx.io" | |
# USE_NGROK: "-n" | |
# | |
# - name: run-aath-verifier-agent | |
# if: ${{ matrix.mobile-platform=='-p iOS' && contains(matrix.report-project,'candy-uvp-pcft-chat') }} | |
# uses: ./.github/workflows/run-aath-agents | |
# with: | |
# TEST_AGENTS: "-b acapy-main" | |
# GENESIS_URL: "https://raw.githubusercontent.com/ICCS-ISAC/dtrust-reconu/main/CANdy/test/pool_transactions_genesis" | |
# AGENT_CONFIG_FILE: "/aries-backchannels/acapy/read_only_ledger_verifier_config.yaml" | |
# USE_NGROK: "" | |
# | |
# - name: run-aath-verifier-agent-ngrok | |
# if: ${{ matrix.mobile-platform=='-p Android' && contains(matrix.report-project,'candy-uvp-pcft-chat') }} | |
# uses: ./.github/workflows/run-aath-agents | |
# with: | |
# NGROK_AUTHTOKEN: ${{ secrets.NGROK_AUTHTOKEN }} | |
# TEST_AGENTS: "-b acapy-main" | |
# GENESIS_URL: "https://raw.githubusercontent.com/ICCS-ISAC/dtrust-reconu/main/CANdy/test/pool_transactions_genesis" | |
# AGENT_CONFIG_FILE: "/aries-backchannels/acapy/read_only_ledger_verifier_config.yaml" | |
# USE_NGROK: "-n" | |
- name: Run AMTH All Tests | |
if: ${{ contains(matrix.report-project,'multi-device-full') }} | |
uses: ./.github/workflows/run-test-harness | |
env: | |
LEDGER_URL_CONFIG: "http://test.bcovrin.vonx.io" | |
REGION: "us-west-1" | |
#TEST_RETRY_ATTEMPTS_OVERRIDE: "2" | |
with: | |
MOBILE_WALLET: "-w qc_wallet" | |
ISSUER_AGENT: '-i "MCN;https://aries-issuer-090-admin.apps.exp.openshift.cqen.ca"' | |
VERIFIER_AGENT: '-v "MCN;https://aries-issuer-090-admin.apps.exp.openshift.cqen.ca"' | |
DEVICE_CLOUD: "-d LambdaTest" | |
DEVICE_CLOUD_USER: "-u ${{ secrets.LAMBDA_USERNAME }}" | |
DEVICE_CLOUD_KEY: "-k ${{ secrets.LAMBDA_ACCESS_KEY }}" | |
MOBILE_PLATFORM: ${{ matrix.mobile-platform }} | |
APP_FILE_NAME: ${{ matrix.app-file-name }} | |
BUILD_NAME: ${{ matrix.build-name }} | |
TEST_SCOPE: "-t @qc_wallet -t ~@wip -t ~@Connectionless -t ~@BCSC -t ~@qc_wallet_not" | |
REPORT_PROJECT: ${{ matrix.report-project }} | |
continue-on-error: true | |
# - name: Run AMTH BC Wallet Connectionless Tests | |
# if: ${{ contains(matrix.report-project,'candy-uvp-pcft-chat') }} | |
# uses: ./.github/workflows/run-test-harness | |
# env: | |
# REGION: "us-west-1" | |
# #TEST_RETRY_ATTEMPTS_OVERRIDE: "2" | |
# with: | |
# MOBILE_WALLET: "-w bc_wallet" | |
# ISSUER_AGENT: '-i "CANdy_UVP;https://openvp-candy-issuer-test.apps.silver.devops.gov.bc.ca/"' | |
# VERIFIER_AGENT: '-v "AATH;http://0.0.0.0:9030"' | |
# DEVICE_CLOUD: "-d SauceLabs" | |
# DEVICE_CLOUD_USER: "-u ${{ secrets.SAUCE_USERNAME }}" | |
# DEVICE_CLOUD_KEY: "-k ${{ secrets.SAUCE_ACCESS_KEY }}" | |
# MOBILE_PLATFORM: ${{ matrix.mobile-platform }} | |
# APP_FILE_NAME: ${{ matrix.app-file-name }} | |
# TEST_SCOPE: "-t @bc_wallet -t @Connectionless -t ~@wip -t ~@BCSC" | |
# REPORT_PROJECT: ${{ matrix.report-project }} | |
# continue-on-error: true |