THIS PROJECT IS NOW UNMAINTAINED.
This is kept around for archival purposes only.
This is a set of ansible playbooks and support files to deploy a Taskotron instance outside of Fedora infrastructure.
At this point, this stuff is very young and somewhat user-unfriendly. Feel free to use the playbooks but there are still undocumented steps, so be prepared to figure some bits out.
If you run into problems or have questions, folks who can help can be found on Freenode IRC (#fedora-qa) or on the qa-devel mailing list.
If you are looking to write tasks for Taskotron, you should not need an entire deployment of Taskotron - libtaskotron is designed to support the local execution use case. If what you're trying to write can't be executed - please let us know so we can fix the problem.
If we've done our job correctly, the only folks who should need an entire deployment are core devs working on the interaction between Taskotron components and folks looking to demo the system as a whole.
Setting up a single node taskotron instance is relatively straightforward, all you need is an updated VM running Fedora, its root password or cert and ip address. We recommend a reasonably large VM because it'll be running a few things and some checks (like depcheck and upgradepath) download a lot of packages during execution and need a decent amount of disk.
To put that into numbers, we recommend the following at a minimum: 4GB memory, 40GB disk
Once you have these, run autodeploy.py
, and follow instructions. There are
some quirks that autodeploy.py
tries to take care for you and it should work
in the most common single-node deployment case. If you want to deploy something
different, try the step-by-step guide or ask us questions.
Note that in this default deployment, disposable clients are not enabled to avoid using nested virtualization. This is not how production deployments work but it doesn't deviate too far from those deployments overwise
If you want to run the playbook again after using autodeploy.py
, use the
following command:
ansible-playbook -u root playbooks/taskotron-allinone.yml
After setup, the web interfaces can be found at (substitute the VM ip for
taskotron-local if that alias isn't set in /etc/hosts
):
- Static Landing Page: http://taskotron-local/
- Buildbot Waterfall: http://taskotron-local/taskmaster/waterfall
- ResultsDB Frontend: http://taskotron-local/resultsdb/jobs
- ResultsDB API Endpoint: http://taskotron-local/resultsdb_api/
For a step-by-step guide on deploying the taskotron in you local VM using these playbooks have a look at the StepByStep.rst file in this repository.