diff --git a/.github/workflows/sim.yaml b/.github/workflows/sim.yaml index 79765fbd..c1d91a67 100644 --- a/.github/workflows/sim.yaml +++ b/.github/workflows/sim.yaml @@ -44,6 +44,7 @@ jobs: - "sig-rsa validate-primary-slot ram-load multiimage" - "sig-rsa validate-primary-slot direct-xip multiimage" - "sig-ecdsa hw-rollback-protection multiimage" + - "sig-ecdsa-psa,sig-ecdsa-psa sig-p384" - "ram-load enc-aes256-kw multiimage" - "ram-load enc-aes256-kw sig-ecdsa-mbedtls multiimage" runs-on: ubuntu-latest diff --git a/ci/sim_run.sh b/ci/sim_run.sh index 59d65e10..7a9ff2de 100755 --- a/ci/sim_run.sh +++ b/ci/sim_run.sh @@ -43,10 +43,20 @@ fi if [[ ! -z $MULTI_FEATURES ]]; then IFS=',' read -ra multi_features <<< "$MULTI_FEATURES" + + # psa crypto tests require single thread mode + TEST_ARGS='' + for features in "${multi_features[@]}"; do + if [[ $features =~ "psa" ]]; then + TEST_ARGS='--test-threads=1' + break + fi + done + for features in "${multi_features[@]}"; do echo "Running cargo for features=\"${features}\"" - time cargo test --no-run --features "$features" - time cargo test --features "$features" + time cargo test --no-run --features "$features" -- $TEST_ARGS + time cargo test --features "$features" -- $TEST_ARGS rc=$? && [ $rc -ne 0 ] && EXIT_CODE=$rc done fi