Periodic workflow run for unit and integration tests #610
Workflow file for this run
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: Run tests | ||
on: | ||
push: | ||
workflow_call: | ||
inputs: | ||
branch: | ||
description: "The branch on which to run this workflow" | ||
required: true | ||
type: string | ||
it_branch: | ||
description: "The integration tests branch on which to run this workflow" | ||
required: true | ||
type: string | ||
jobs: | ||
run-unit-tests: | ||
name: Unit tests | ||
runs-on: ubuntu-20.04 | ||
steps: | ||
- name: Checkout this repo | ||
uses: actions/checkout@v3 | ||
with: | ||
ref: ${{ inputs.branch }} | ||
- name: Build the middleware docker image | ||
run: docker/mware/build | ||
- name: Middleware tests | ||
run: middleware/test-all | ||
- name: Ledger tests for TCPSigner | ||
run: ledger/test/test-all | ||
- name: Ledger Signer's tests | ||
run: ledger/src/signer/test/run-all.sh | ||
- name: Ledger UI's tests | ||
run: ledger/src/ui/test/run-all.sh | ||
- name: Ledger common lib tests | ||
working-directory: ledger/src/common/test/ | ||
run: | | ||
for d in memutil ints; do | ||
(cd "$d" && make clean test) | ||
done | ||
- name: Ledger TCPSigner's tests | ||
working-directory: ledger/src/tcpsigner/test/ | ||
run: | | ||
for d in hmac_sha256; do | ||
(cd "$d" && make clean test) | ||
done | ||
run-integration-tests: | ||
name: Integration tests | ||
runs-on: ubuntu-20.04 | ||
steps: | ||
- name: Checkout rsk-powhsm repo | ||
uses: actions/checkout@v3 | ||
with: | ||
path: rsk-powhsm | ||
ref: ${{ inputs.branch }} | ||
- name: Build required software | ||
working-directory: rsk-powhsm | ||
run: | | ||
docker/mware/build | ||
docker/packer/build | ||
middleware/build/manager-tcp | ||
ledger/build/build-tcpsigner | ||
- name: Checkout hsm-integration-test repo | ||
uses: actions/checkout@v3 | ||
with: | ||
repository: rootstock/hsm-integration-test | ||
ref: ${{ inputs.it_branch || 4.0.0.plus }} | ||
Check failure on line 79 in .github/workflows/run-tests.yml GitHub Actions / Run testsInvalid workflow file
|
||
path: hsm-integration-test | ||
ssh-key: ${{ secrets.HSM_INTEGRATION_TEST_SSH_KEY }} | ||
- name: Copy required files | ||
run: | | ||
mkdir hsm-integration-test/docker/manager/manager-tcp | ||
tar -xzf rsk-powhsm/middleware/bin/manager-tcp.tgz \ | ||
-C hsm-integration-test/docker/manager/manager-tcp | ||
cp rsk-powhsm/ledger/src/tcpsigner/tcpsigner \ | ||
hsm-integration-test/docker/tcpsigner/ | ||
- name: Run HSM integration tests | ||
working-directory: hsm-integration-test | ||
run: sh smoke-test.sh |