HIRS/.ci/system-tests/run-system-tests-tpm2.sh
apldev3 ec8c4b5c3e
[#71] Dockerize TPM 1.2 Provisioner and Integrate with Docker Compose (#77)
* [#71] Initial Dockerization of TPM 1.2 Provisioner

* Fix permissions on new script

* Fix current bugs

* [#71] Try a new direction for setting up TPM 1.2 Provisioner Testing

* [#71] Attempt to the latest version of Trousers on Travis CI VM for 1.2 Provisioner support

* [#71] Try IBM TPM 1.2 Emulator

* [#71] Move towards cleaning up work

* [#71] Update TPM1.2 Provisioner Docker to work with Docker Compose in Systems Test

* [#71] Get TPM 1.2 Provisioner to provision successfully in Docker container

* Update system tests script to include TPM 1.2 Provisioner container

* [#71] Separate TPM 1.2 and 2.0 Provisioner System Tests

* [#71] Pipe TPM Emulator log output to file to clear up system test output
2019-02-04 14:26:54 -05:00

57 lines
1.4 KiB
Bash
Executable File

#!/bin/bash
# Script to run the System Tests for HIRS TPM 2.0 Provisioner
set -e
echo ""
echo "System Tests 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 "TPM2 Container ID: $tpm2_container_id"
tpm2_container_status="$(docker inspect $tpm2_container_id --format='{{.State.Status}}')"
echo "TPM2 Container Status: $tpm2_container_status"
while [[ $tpm2_container_status == "running" ]]
do
sleep 10
# 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 codes
tpm2_container_exit_code="$(docker inspect $tpm2_container_id --format='{{.State.ExitCode}}')"
echo "TPM2 Container Exit Code: $tpm2_container_exit_code"
# Display container logs
echo ""
echo "===========hirs-aca-provisioner-tpm2 System Tests Log:==========="
docker logs $tpm2_container_id
echo ""
echo "End of TPM 2.0 System Tests, cleaning up..."
echo ""
# Clean up services and network
docker-compose down
# Return container exit codes
if [[ $tpm2_container_exit_code == 0 ]]
then
echo "SUCCESS: TPM 2.0 System tests passed"
exit 0
fi
echo "ERROR: System tests failed"
exit 1