Scripts that are used by the PR CI testing infrastructure.
-
Create
hosts
file[runner] 1.2.3.4
-
Place
freeipa_pr_ci
private key inkeys/
This is only necessary if you want to publish logs to fedorapople. To omit this step, specify
--skip-tags fedorapeople
. -
Run the
prepare_test_runners.yml
playbookansible-playbook \ -i hosts \ ansible/prepare_test_runners.yml
The playbook has to be executed as root and you don't need nested virtualization.
sudo ansible-playbook \
-i ansible/hosts/runner_localhost \
ansible/prepare_test_runners.yml \
--skip-tags nested_virt
-
Run
create-box-template
This will create a vagrant box in
/tmp/image/
. -
Perform some basic tests on the box
TODO: Something we want to automate in the future.
-
Use a basic Vagrantfile that uses this box
-
Check the box can be booted up
If it's stuck in
Waiting for IP address
stage, you can connect withremote-viewer vnc://127.0.0.1:5900
to debug it -
Verify your recent changes are present
-
-
Upload the box to HashiCorp Atlas
TODO: Another step that will be automated in the future.
Description:
Builds: - FreeIPA: <freeipa_git_sha> - PR CI: <pr_ci_git_sha> Changelog: - <change>
-
Create a PR against FreeIPA with the updated box
TODO: This requires GitHub integration with PR CI. Omit this step for now and just use the box in Vagrantfiles.
This will run the PR CI tests with the new box. Once all the tests pass and the PR is merged, the PR CI will use the new template.