DebDiff task

A task to compute the differences between two source or binary Debian packages using the debdiff utility.

The task_data associated to this task can contain the following keys:

  • input (required): a dictionary describing the input data

    • source_artifacts (optional): a list with two elements (original, new). Each element is a Single lookup pointing to an artifact of category debian:source-package.

    • binary_artifacts (optional): a list with two elements (original, new). Each element is a Multiple lookup pointing to artifacts of category debian:upload or debian:binary-package. If the lookup returns multiple artifacts, they must be of category debian:binary-package.

The task computes dynamic metadata as:

  • subject: source:NAME_OF_PACKAGE if input.source_artifacts is set, otherwise binary:NAME_OF_PACKAGE if all binary artifacts in input.binary_artifacts originate from the same source package

Note

Note that exactly one of source_artifacts or binary_artifacts is required.

  • extra_flags (optional): a list of flags to be passed to the debdiff command, such as --nocontrol or --diffstat. If an unsupported flag is passed then the request will fail.

  • environment (Single lookup with default category debian:environments, required): artifact that will be used to run debdiff (it will be installed if necessary).

  • host_architecture (required): the architecture that we want to run debdiff.

The debdiff output will be provided as a new artifact of category debian:debdiff, described in the artifacts reference.

The task returns success if debdiff returns an exit code of 0 or 1, and failure otherwise.