Continuous Integration¶
Tests are run on GitHub Actions.
The configuration for this is in .github/workflows
.
CI is set up with secrets for connecting to Vuforia.
These variables include those from vuforia_secrets.env.example
.
To avoid hitting request quotas and to avoid conflicts when running multiple tests in parallel, we use multiple target databases.
CI builds use a different credentials file depending on the build configuration. Within a workflow, this avoids conflicts.
How to set GitHub Actions secrets¶
Create environment variable files for secrets:
$ mkdir -p ci_secrets
$ cp vuforia_secrets.env.example ci_secrets/vuforia_secrets_1.env
$ cp vuforia_secrets.env.example ci_secrets/vuforia_secrets_2.env
$ ...
Add Vuforia credentials for different target databases to the new files in the ci_secrets/
directory.
Add at least as many credentials files as there are builds in the GitHub test matrix.
All credentials files can share the same credentials for an inactive database.
Choose a passphrase for the secrets.
In the GitHub repository > Settings > Secrets, add a secret with the name PASSPHRASE_FOR_VUFORIA_SECRETS
and the chosen passphrase.
Add the encrypted secrets files to the repository:
$ PASSPHRASE_FOR_VUFORIA_SECRETS="<CHOSEN_SECRET>" make update-secrets
$ git add secrets.tar.gpg
$ git commit -m "Update secret archive"
$ git push