HIRS/.ci/system-tests/run-system-tests-tpm2.sh
busaboy1340 a2497c064c
[#88] Integrate System Tests with Dockerized TPM 1.2 Provisioner (#208)
* Initial system test for TPM 1.2 emulator.

* Update .travis.yml file.

* Added system test: test_20_tpm_1_2_initial_provision

* Cleaned up files.

* Correct docker location

* Re-arranged system tests.

* Execute test_12_attestation_ca_portal_online for all current collectors.

* Clean up files.

* Cleaned up files.

* Cleaned up files.

* Cleaned up files.

* Cleaned up files

* Updated system test driver.

* Set logging properties to DEBUG.

* Commented out test_13_tpm_1_2_initial_provision. Need to fix it.
2019-12-23 05:28:26 -05:00

65 lines
1.6 KiB
Bash
Executable File

#!/bin/bash
# Script to run the System Tests for HIRS TPM 2.0 Provisioner
set -e
echo ""
echo "System Tests TPM 2.0 Starting..."
echo ""
# Start System Testing Docker Environment
cd .ci/docker
docker-compose -f docker-compose-tpm2.yml up -d
tpm2_container_id="$(docker ps -aqf "name=hirs-aca-provisioner-tpm2")"
echo "TPM 2.0 Container ID: $tpm2_container_id"
tpm2_container_status="$(docker inspect $tpm2_container_id --format='{{.State.Status}}')"
echo "TPM 2.0 Container Status: $tpm2_container_status"
while [[ $tpm2_container_status == "running" ]]
do
sleep 20
# Add status message, so Travis will not time out.
# It may timeout if it hasn't received output for more than 10 minutes.
echo "Still running tests, please wait..."
tpm2_container_status="$(docker inspect $tpm2_container_id --format='{{.State.Status}}')"
done
# Store container exit code
tpm2_container_exit_code="$(docker inspect $tpm2_container_id --format='{{.State.ExitCode}}')"
echo "TPM 2.0 Container Exit Code: $tpm2_container_exit_code"
# Display container log
echo ""
echo "===========hirs-aca-provisioner-tpm2 System Tests Log:==========="
docker logs $tpm2_container_id
echo ""
echo "End of System Tests TPM 2.0, cleaning up..."
echo ""
# Clean up services and network
docker-compose down
# Clean up dangling containers
echo "Cleaning up dangling containers..."
echo ""
docker ps -a
echo ""
docker container prune --force
echo ""
# Return container exit code
if [[ $tpm2_container_exit_code == 0 ]]
then
echo "SUCCESS: System Tests TPM 2.0 passed"
exit 0
fi
echo "ERROR: System Tests TPM 2.0 failed"
exit 1