OOM - Onap Operations Manager will deploy this as part of CA service

two stages

Stage 1 - Initialize TPM and exit (init.sh script is used for this case)

Stage 2 - Starts the abrmd process and keeps it running to provide the

means for application to interact wit TPM (run_abrmd.sh is used)

Make a directory /tmp/volume (mkdir -p /tmp/volume) on the Host

This directory (Sample Shared volume ABRMD_DATA) is mounted to abrmd

container and is mounted as /tmp/files/ inside container

the host's name "TPM_NODE_NAME" environmental variable

The input to this container is srkhandle(a file/environmental vatiable)

tpm_status.yaml (TPM State) password (for TPM Primary key,

password is encrypted using pgp and is extracted using the passphrase

(provided in shared volume))

Output of this container is the public

portion of the TPM's Primary key (out_parent_public) and the staus will

be updated in the tpm_status.yaml file

Input

1.srkhandle 2.password 3.passphrase 4.tpm_status.yaml

Output

1. out_parent_public

Building Docker Images

$ docker build -t <image name> -f dockerfile .

Running ABRMD Container with Simulator

$ docker run -d --privileged -v /tmp/run/dbus:/var/run/dbus -v /tmp/volume:/tmp/files --name <container name> <image name>

Running ABRMD Container with TPM Hardware

$ docker run -d --privileged -device=/dev/tpm0 -v /tmp/run/dbus:/var/run/dbus -v /tmp/volume:/tmp/files --name <container name> <image name>
Sanity Check

Run the following command in the tools container to see if everything is setup correctly:

tpm2_listpcrs