Tim Flink led a session on Taskotron, a new distribution-agnostic framework for task execution. Taskotron will soon replace Fedora’s AutoQA system and solve many of the issues discovered as we made use of AutoQA. Taskotron will help us run more difficult tasks at scale and on schedule.
What it is and how it works
Taskotron uses the ever-increasingly popular fedmsg messaging bus, which helps systems across the Fedora Project communicate with each other. Based on a fedmsg message, Taskotron prepares an environment, tells a “runner” to execute a task, and reports the results. Unlike AutoQA, Taskotron allows people to own their own tasks, rather than having to wait for a small group of maintainers to include the tasks in the system itself.
Tim explained that Taskotron is flexible, and makes use of Python, REST, and JSON, as well as the popular continuous integration framework bulidbot. It is highly modular and loosely coupled, which means over time Fedora will be able to replace components as needed without sacrificing the whole system or rewrite from scratch.
One of Taskotron’s immediate benefits to contributors is that you don’t have to set up an entire Taskotron system just to try out tests. You can install it locally, and give it a few simple parameters — an input, a type, an architecture, and a YAML definition file containing the task — and see the output on your terminal.
Tim also explained that remote use is not much more complicated, and this is by design. That way you can compare local output to remote output and you should see basically the same things. In Fedora productions systems, we’ll schedule Taskotron tasks from an incoming fedmsg message, run them in buildbot, and capture the reports and logs into resultsdb.
What’s ahead for Taskotron
Tim reported that on the roadmap for Taskotron are disposable clients, which will allow the system to scale enormously (OpenStack or raw libvirt instances are being considered). A better interface is also on the list of to-do’s, which would include historical and searchable information and analytics.
You can view the entire talk below:
According to Tim, Taskotron is close to production now, and he noted that AutoQA will probably be switched off in favor of Taskotron in the next few weeks. Look for announcements to follow on the Fedora mailing lists, on the Planet RSS feed, and here on Fedora Magazine.