- piuparts
Workflow piuparts
This workflow schedules piuparts
checks for binaries built by a single
source package on a set of architectures.
task_data
:source_artifact
(Single lookup, required): the debian:source-package or debian:upload artifact that built the binaries to be testedbinary_artifacts
(Multiple lookup, required): see Piupartsqa_suite
(Single lookup, optional unlessupdate_qa_results
is True): the debian:suite collection that reference tests are being run against to detect regressionsreference_qa_results
(Single lookup, optional unlessupdate_qa_results
is True): the debian:qa-results collection that contains the reference results of QA tasks to use to detect regressionsupdate_qa_results
(boolean, defaults to False): when set to True, the workflow runs QA tasks and updates the collection passed inreference_qa_results
with the results.vendor
(string, required): the distribution vendor on which to run testscodename
(string, required): the distribution codename on which to run testsbackend
(string, optional): see Piupartsenvironment
(string, optional): the environment to run piuparts inextra_repositories
(optional): see Piupartsarchitectures
(list of strings, optional): if set, only run on any of these architecture namesarch_all_host_architecture
(string, defaults toamd64
): concrete architecture on which to run tasks forArchitecture: all
packages
The workflow computes dynamic metadata as:
subject: source package names of
binary_artifacts
separated by spaces
piuparts
will be run on the intersection of the provided list of
architectures (if any) and the architectures provided in
binary_artifacts
, in each case grouping arch-all + arch-any together.
If only Architecture: all
binary packages are provided in
binary_artifacts
, then piuparts
will be run once for arch-all on
{arch_all_host_architecture}
.
The workflow creates a Piuparts task for each concrete architecture, with task data:
input.binary_artifacts
: the subset of{binary_artifacts}
that are for the concrete architecture orall
host_architecture
: the concrete architecture, or{arch_all_host_architecture}
if onlyArchitecture: all
binary packages are being checked by this taskenvironment
:{environment}
if specified, falling back to{vendor}/match:codename={codename}
base_tgz
:{vendor}/match:codename={codename}
backend
:{backend}
extra_repositories
copied from the workflow task, and extended with overlay repositories (e.g.experimental
) ifcodename
is a known overlay.
Any of the lookups in input.binary_artifacts
may result in
, and in that case the workflow adds
corresponding dependencies. Binary promises must include an
architecture
field in their data.
Todo
It would be useful to have a mechanism to control multiarch tests, such as testing i386 packages on an amd64 testbed.
Todo
It would be useful to be able to set base_tgz
separately from
environment
.