Configure GitLab CI#
For repositories hosted on GitLab, plone.meta generates a .gitlab-ci.yml file instead of GitHub Actions workflows.
Select CI jobs#
[gitlab]
jobs = [
"lint",
"release-ready",
"dependencies",
"circular-dependencies",
"testing",
"coverage",
]
Use custom Docker images#
Specify Docker images per Python version using the custom_images dictionary:
[gitlab]
custom_images = {"3.14" = "python:3.14-trixie", "3.13" = "python:3.13-trixie"}
This allows different Python versions in the CI matrix to use appropriate base images (for example, Debian Trixie for Python 3.14 support).
Install OS-level dependencies#
[gitlab]
os_dependencies = """
- apt-get install libxslt libxml2
"""
Test matrix support#
GitLab CI also benefits from the test matrix feature.
When use_test_matrix is enabled (the default), the generated .gitlab-ci.yml will include test jobs for each combination of Plone version and Python version defined in [tox] test_matrix.
See Customize via .meta.toml for details on configuring the test matrix.
Add extra configuration#
[gitlab]
extra_lines = """
deploy:
stage: deploy
script:
- echo "deploying"
"""