debian/all
¶
Configure an end-to-end Debian build-and-test workflow for this project.
Latest release¶
Description¶
This component automatically configures a workflow to
- build a Debian source package
- build one-or-more Debian binary packages
- install and test the new binary packages
Usage¶
include:
- component: git.ligo.org/computing/gitlab/components/debian/all@<VERSION>
Inputs¶
Input | Default value | Description |
---|---|---|
job_prefix | "debian" | Prefix to apply to all job names |
debian_versions | [bullseye, bookworm] | Debian/Ubuntu versions to build/test, see Supported versions for details |
needs | List of jobs whose artifacts are required to create the Debian source package (e.g. the job that created the project source distribution)" | |
source_distribution_name | "*.tar.*" | Name of the source distribution file |
project_dir | "." | Project path that contains the relevant debian/ directory |
add_changelog_entry | true | Add a changelog entry when building the Debian source package, see Adding changelog entries for more details |
dpkg_source_options | "" | Options to pass to dpkg-source |
dpkg_buildpackage_options | "" | Options to pass to dpkg-buildpackage |
lintian_options | See below | Options to pass to lintian |
test_install | "" | Extra packages to install to support the test_script |
test_script | Script commands to run as part of the debian test jobs |
-
The default
lintian_options
value is--pedantic --display-info --suppress-tags initial-upload-closes-no-bugs
Notes¶
Supported versions¶
See Supported versions in debian/build
for details.
Requires an upstream source distribution¶
Creating Debian packages is only supported when starting from an upstream tarball that contains a debian/
configuration directory.
This must be configured independently of this component and the tarball provided to the debian/source
component via the needs
input. See Examples for an example.
Adding changelog entries¶
See Adding changelog entries in debian/source
for details.
Examples¶
Build and test a Python application on Debian
include:
- component: git.ligo.org/computing/gitlab/components/python/sdist@0.1
inputs:
stage: source
- component: git.ligo.org/computing/gitlab/components/debian/all@<VERSION>
inputs:
needs: [sdist]
test_install: python3-pytest
test_script:
- python3 -m pytest --pyargs my_library.tests