mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager
synced 2024-10-01 13:55:36 +00:00
cf86af6cbd
Add explanation of how to indicate the new issues workflow to MAINTAINERS.md: triage -> investigation -> devel. The different stages are indicated using Gitlab's scoped labels (mutually exclusive). These stages try to hightlight that the issue cannot be fixed and it's not moving forward because more info is needed, already. Also, add a section to CONTRIBUTING.md highlighting the importance of helping in the triage and investigation stages: developers often cannot fix bugs because lack of time to investigate, but even users that doesn't know how to fix it due to lack of knowledge of the code base can help thanks to their knowledge on networking. Finally, make the 'triage:issues' CI job to work again, adding some new policies with new automations. The automation will add or remove the labels: stale, help-needed::{triage, investigation, devel} and unassigned. The labels help-needed::* and unassigned will be automatically added to all issues without an assignee. This reflects better the reality of not having enough time to work on most of the issues unless there is some external help.
663 lines
17 KiB
YAML
663 lines
17 KiB
YAML
# vim: set expandtab shiftwidth=2 tabstop=8 textwidth=0 filetype=yaml:
|
|
|
|
########################################
|
|
# #
|
|
# THIS FILE IS GENERATED, DO NOT EDIT #
|
|
# Edit .gitlab-ci/ci.template instead #
|
|
# #
|
|
# Regenerate with:
|
|
# TEMPLATE_SHA="$(sed -n 's/^.templates_sha: *\&template_sha *\([0-9a-f]\+\)$/\1/p' ./.gitlab-ci/ci.template)"
|
|
# pip3 install "git+http://gitlab.freedesktop.org/freedesktop/ci-templates@$TEMPLATE_SHA"
|
|
# ci-fairy generate-template
|
|
#
|
|
########################################
|
|
|
|
|
|
# see https://docs.gitlab.com/ee/ci/yaml/#includefile
|
|
.templates_sha: &template_sha 98b1218f146a1ec96d65e3ce0041f9a6ec5cb5e6
|
|
|
|
|
|
|
|
include:
|
|
# Alpine container builder template
|
|
- project: 'freedesktop/ci-templates'
|
|
ref: *template_sha
|
|
file: '/templates/alpine.yml'
|
|
# Centos container builder template
|
|
- project: 'freedesktop/ci-templates'
|
|
ref: *template_sha
|
|
file: '/templates/centos.yml'
|
|
# Debian container builder template
|
|
- project: 'freedesktop/ci-templates'
|
|
ref: *template_sha
|
|
file: '/templates/debian.yml'
|
|
# Fedora container builder template
|
|
- project: 'freedesktop/ci-templates'
|
|
ref: *template_sha
|
|
file: '/templates/fedora.yml'
|
|
# Ubuntu container builder template
|
|
- project: 'freedesktop/ci-templates'
|
|
ref: *template_sha
|
|
file: '/templates/ubuntu.yml'
|
|
- project: 'freedesktop/ci-templates'
|
|
file: '/templates/ci-fairy.yml'
|
|
|
|
stages:
|
|
- prep
|
|
- tier1
|
|
- tier2
|
|
- tier3
|
|
- deploy
|
|
- triage
|
|
|
|
variables:
|
|
FDO_UPSTREAM_REPO: NetworkManager/NetworkManager
|
|
GIT_DEPTH: 1
|
|
# These tags should be updated each time the list of packages is updated
|
|
# changing these will force rebuilding the associated image
|
|
# Note: these tags have no meaning and are not tied to a particular NM version
|
|
#
|
|
# This is done by running `ci-fairy generate-template` and possibly bumping
|
|
# ".default_tag".
|
|
ALPINE_TAG: 'tag-ec99bc32ed7f'
|
|
CENTOS_TAG: 'tag-a76c3f2e9d0f'
|
|
DEBIAN_TAG: 'tag-3f6892bcd503'
|
|
FEDORA_TAG: 'tag-a76c3f2e9d0f'
|
|
UBUNTU_TAG: 'tag-3f6892bcd503'
|
|
|
|
ALPINE_EXEC: 'bash .gitlab-ci/alpine-install.sh'
|
|
CENTOS_EXEC: 'bash .gitlab-ci/fedora-install.sh'
|
|
DEBIAN_EXEC: 'bash .gitlab-ci/debian-install.sh'
|
|
FEDORA_EXEC: 'bash .gitlab-ci/fedora-install.sh'
|
|
UBUNTU_EXEC: 'bash .gitlab-ci/debian-install.sh'
|
|
|
|
.nm_artifacts:
|
|
variables:
|
|
NM_BUILD_TARBALL: 1
|
|
artifacts:
|
|
expire_in: 5 days
|
|
when: always
|
|
paths:
|
|
- docs-html
|
|
- NetworkManager-1*.tar.xz
|
|
- NetworkManager-1*.src.rpm
|
|
- nm-test.log
|
|
|
|
.nm_artifacts_debug:
|
|
artifacts:
|
|
expire_in: 5 days
|
|
when: always
|
|
paths:
|
|
- nm-test.log
|
|
|
|
#################################################################
|
|
# #
|
|
# prep stage #
|
|
# #
|
|
#################################################################
|
|
|
|
# Build a container for each distribution + version. The ci-templates
|
|
# will re-use the containers if the tag doesn't change.
|
|
|
|
tier1:fedora:40@prep:
|
|
extends:
|
|
- .fdo.container-build@fedora
|
|
stage: prep
|
|
variables:
|
|
GIT_STRATEGY: none
|
|
FDO_DISTRIBUTION_VERSION: '40'
|
|
FDO_DISTRIBUTION_TAG: $FEDORA_TAG
|
|
FDO_DISTRIBUTION_EXEC: $FEDORA_EXEC
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
|
|
tier2:centos:stream9@prep:
|
|
extends:
|
|
- .fdo.container-build@centos
|
|
stage: prep
|
|
variables:
|
|
GIT_STRATEGY: none
|
|
FDO_DISTRIBUTION_VERSION: 'stream9'
|
|
FDO_DISTRIBUTION_TAG: $CENTOS_TAG
|
|
FDO_DISTRIBUTION_EXEC: $CENTOS_EXEC
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
when: manual
|
|
allow_failure: true
|
|
|
|
tier2:fedora:rawhide@prep:
|
|
extends:
|
|
- .fdo.container-build@fedora
|
|
stage: prep
|
|
variables:
|
|
GIT_STRATEGY: none
|
|
FDO_DISTRIBUTION_VERSION: 'rawhide'
|
|
FDO_DISTRIBUTION_TAG: $FEDORA_TAG
|
|
FDO_DISTRIBUTION_EXEC: $FEDORA_EXEC
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
when: manual
|
|
allow_failure: true
|
|
|
|
tier2:debian:sid@prep:
|
|
extends:
|
|
- .fdo.container-build@debian
|
|
stage: prep
|
|
variables:
|
|
GIT_STRATEGY: none
|
|
FDO_DISTRIBUTION_VERSION: 'sid'
|
|
FDO_DISTRIBUTION_TAG: $DEBIAN_TAG
|
|
FDO_DISTRIBUTION_EXEC: $DEBIAN_EXEC
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
when: manual
|
|
allow_failure: true
|
|
|
|
tier2:debian:testing@prep:
|
|
extends:
|
|
- .fdo.container-build@debian
|
|
stage: prep
|
|
variables:
|
|
GIT_STRATEGY: none
|
|
FDO_DISTRIBUTION_VERSION: 'testing'
|
|
FDO_DISTRIBUTION_TAG: $DEBIAN_TAG
|
|
FDO_DISTRIBUTION_EXEC: $DEBIAN_EXEC
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
when: manual
|
|
allow_failure: true
|
|
|
|
tier2:ubuntu:devel@prep:
|
|
extends:
|
|
- .fdo.container-build@ubuntu
|
|
stage: prep
|
|
variables:
|
|
GIT_STRATEGY: none
|
|
FDO_DISTRIBUTION_VERSION: 'devel'
|
|
FDO_DISTRIBUTION_TAG: $UBUNTU_TAG
|
|
FDO_DISTRIBUTION_EXEC: $UBUNTU_EXEC
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
when: manual
|
|
allow_failure: true
|
|
|
|
tier2:alpine:edge@prep:
|
|
extends:
|
|
- .fdo.container-build@alpine
|
|
stage: prep
|
|
variables:
|
|
GIT_STRATEGY: none
|
|
FDO_DISTRIBUTION_VERSION: 'edge'
|
|
FDO_DISTRIBUTION_TAG: $ALPINE_TAG
|
|
FDO_DISTRIBUTION_EXEC: $ALPINE_EXEC
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
when: manual
|
|
allow_failure: true
|
|
|
|
tier3:fedora:39@prep:
|
|
extends:
|
|
- .fdo.container-build@fedora
|
|
stage: prep
|
|
variables:
|
|
GIT_STRATEGY: none
|
|
FDO_DISTRIBUTION_VERSION: '39'
|
|
FDO_DISTRIBUTION_TAG: $FEDORA_TAG
|
|
FDO_DISTRIBUTION_EXEC: $FEDORA_EXEC
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
when: manual
|
|
allow_failure: true
|
|
|
|
tier3:ubuntu:20.04@prep:
|
|
extends:
|
|
- .fdo.container-build@ubuntu
|
|
stage: prep
|
|
variables:
|
|
GIT_STRATEGY: none
|
|
FDO_DISTRIBUTION_VERSION: '20.04'
|
|
FDO_DISTRIBUTION_TAG: $UBUNTU_TAG
|
|
FDO_DISTRIBUTION_EXEC: $UBUNTU_EXEC
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
when: manual
|
|
allow_failure: true
|
|
|
|
tier3:ubuntu:22.04@prep:
|
|
extends:
|
|
- .fdo.container-build@ubuntu
|
|
stage: prep
|
|
variables:
|
|
GIT_STRATEGY: none
|
|
FDO_DISTRIBUTION_VERSION: '22.04'
|
|
FDO_DISTRIBUTION_TAG: $UBUNTU_TAG
|
|
FDO_DISTRIBUTION_EXEC: $UBUNTU_EXEC
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
when: manual
|
|
allow_failure: true
|
|
|
|
tier3:ubuntu:24.04@prep:
|
|
extends:
|
|
- .fdo.container-build@ubuntu
|
|
stage: prep
|
|
variables:
|
|
GIT_STRATEGY: none
|
|
FDO_DISTRIBUTION_VERSION: '24.04'
|
|
FDO_DISTRIBUTION_TAG: $UBUNTU_TAG
|
|
FDO_DISTRIBUTION_EXEC: $UBUNTU_EXEC
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
when: manual
|
|
allow_failure: true
|
|
|
|
tier3:ubuntu:rolling@prep:
|
|
extends:
|
|
- .fdo.container-build@ubuntu
|
|
stage: prep
|
|
variables:
|
|
GIT_STRATEGY: none
|
|
FDO_DISTRIBUTION_VERSION: 'rolling'
|
|
FDO_DISTRIBUTION_TAG: $UBUNTU_TAG
|
|
FDO_DISTRIBUTION_EXEC: $UBUNTU_EXEC
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
when: manual
|
|
allow_failure: true
|
|
|
|
tier3:debian:stable@prep:
|
|
extends:
|
|
- .fdo.container-build@debian
|
|
stage: prep
|
|
variables:
|
|
GIT_STRATEGY: none
|
|
FDO_DISTRIBUTION_VERSION: 'stable'
|
|
FDO_DISTRIBUTION_TAG: $DEBIAN_TAG
|
|
FDO_DISTRIBUTION_EXEC: $DEBIAN_EXEC
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
when: manual
|
|
allow_failure: true
|
|
|
|
tier3:debian:oldstable@prep:
|
|
extends:
|
|
- .fdo.container-build@debian
|
|
stage: prep
|
|
variables:
|
|
GIT_STRATEGY: none
|
|
FDO_DISTRIBUTION_VERSION: 'oldstable'
|
|
FDO_DISTRIBUTION_TAG: $DEBIAN_TAG
|
|
FDO_DISTRIBUTION_EXEC: $DEBIAN_EXEC
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
when: manual
|
|
allow_failure: true
|
|
|
|
tier3:centos:stream8@prep:
|
|
extends:
|
|
- .fdo.container-build@centos
|
|
stage: prep
|
|
variables:
|
|
GIT_STRATEGY: none
|
|
FDO_DISTRIBUTION_VERSION: 'stream8'
|
|
FDO_DISTRIBUTION_TAG: $CENTOS_TAG
|
|
FDO_DISTRIBUTION_EXEC: $CENTOS_EXEC
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
when: manual
|
|
allow_failure: true
|
|
|
|
tier3:alpine:latest@prep:
|
|
extends:
|
|
- .fdo.container-build@alpine
|
|
stage: prep
|
|
variables:
|
|
GIT_STRATEGY: none
|
|
FDO_DISTRIBUTION_VERSION: 'latest'
|
|
FDO_DISTRIBUTION_TAG: $ALPINE_TAG
|
|
FDO_DISTRIBUTION_EXEC: $ALPINE_EXEC
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
when: manual
|
|
allow_failure: true
|
|
|
|
#################################################################
|
|
# #
|
|
# tierN stage #
|
|
# #
|
|
#################################################################
|
|
|
|
.build@template:
|
|
script:
|
|
- env
|
|
- r=0
|
|
- .gitlab-ci/run-test.sh 2>&1 | tee /tmp/nm-test.log || r=$?
|
|
- mv /tmp/nm-test.log .
|
|
- exit $r
|
|
dependencies: []
|
|
|
|
|
|
t_fedora:40:
|
|
extends:
|
|
- .build@template
|
|
- .fdo.distribution-image@fedora
|
|
- .nm_artifacts
|
|
stage: tier1
|
|
parallel:
|
|
matrix:
|
|
- NM_TEST_SELECT_RUN:
|
|
- meson+gcc+docs+valgrind
|
|
- meson+clang
|
|
- rpm+meson
|
|
- tarball+meson
|
|
- tarball
|
|
- subtree
|
|
variables:
|
|
FDO_DISTRIBUTION_VERSION: '40'
|
|
FDO_DISTRIBUTION_TAG: $FEDORA_TAG
|
|
needs:
|
|
- "tier1:fedora:40@prep"
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
|
|
t_centos:stream9:
|
|
extends:
|
|
- .build@template
|
|
- .fdo.distribution-image@centos
|
|
- .nm_artifacts_debug
|
|
stage: tier2
|
|
variables:
|
|
FDO_DISTRIBUTION_VERSION: 'stream9'
|
|
FDO_DISTRIBUTION_TAG: $CENTOS_TAG
|
|
needs:
|
|
- "tier2:centos:stream9@prep"
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
|
|
t_fedora:rawhide:
|
|
extends:
|
|
- .build@template
|
|
- .fdo.distribution-image@fedora
|
|
- .nm_artifacts_debug
|
|
stage: tier2
|
|
variables:
|
|
FDO_DISTRIBUTION_VERSION: 'rawhide'
|
|
FDO_DISTRIBUTION_TAG: $FEDORA_TAG
|
|
needs:
|
|
- "tier2:fedora:rawhide@prep"
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
|
|
t_debian:sid:
|
|
extends:
|
|
- .build@template
|
|
- .fdo.distribution-image@debian
|
|
- .nm_artifacts_debug
|
|
stage: tier2
|
|
variables:
|
|
FDO_DISTRIBUTION_VERSION: 'sid'
|
|
FDO_DISTRIBUTION_TAG: $DEBIAN_TAG
|
|
needs:
|
|
- "tier2:debian:sid@prep"
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
|
|
t_debian:testing:
|
|
extends:
|
|
- .build@template
|
|
- .fdo.distribution-image@debian
|
|
- .nm_artifacts_debug
|
|
stage: tier2
|
|
variables:
|
|
FDO_DISTRIBUTION_VERSION: 'testing'
|
|
FDO_DISTRIBUTION_TAG: $DEBIAN_TAG
|
|
needs:
|
|
- "tier2:debian:testing@prep"
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
|
|
t_ubuntu:devel:
|
|
extends:
|
|
- .build@template
|
|
- .fdo.distribution-image@ubuntu
|
|
- .nm_artifacts_debug
|
|
stage: tier2
|
|
variables:
|
|
FDO_DISTRIBUTION_VERSION: 'devel'
|
|
FDO_DISTRIBUTION_TAG: $UBUNTU_TAG
|
|
needs:
|
|
- "tier2:ubuntu:devel@prep"
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
|
|
t_alpine:edge:
|
|
extends:
|
|
- .build@template
|
|
- .fdo.distribution-image@alpine
|
|
- .nm_artifacts_debug
|
|
stage: tier2
|
|
variables:
|
|
FDO_DISTRIBUTION_VERSION: 'edge'
|
|
FDO_DISTRIBUTION_TAG: $ALPINE_TAG
|
|
needs:
|
|
- "tier2:alpine:edge@prep"
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
|
|
t_fedora:39:
|
|
extends:
|
|
- .build@template
|
|
- .fdo.distribution-image@fedora
|
|
- .nm_artifacts_debug
|
|
stage: tier3
|
|
variables:
|
|
FDO_DISTRIBUTION_VERSION: '39'
|
|
FDO_DISTRIBUTION_TAG: $FEDORA_TAG
|
|
needs:
|
|
- "tier3:fedora:39@prep"
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
|
|
t_ubuntu:20.04:
|
|
extends:
|
|
- .build@template
|
|
- .fdo.distribution-image@ubuntu
|
|
- .nm_artifacts_debug
|
|
stage: tier3
|
|
variables:
|
|
FDO_DISTRIBUTION_VERSION: '20.04'
|
|
FDO_DISTRIBUTION_TAG: $UBUNTU_TAG
|
|
needs:
|
|
- "tier3:ubuntu:20.04@prep"
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
|
|
t_ubuntu:22.04:
|
|
extends:
|
|
- .build@template
|
|
- .fdo.distribution-image@ubuntu
|
|
- .nm_artifacts_debug
|
|
stage: tier3
|
|
variables:
|
|
FDO_DISTRIBUTION_VERSION: '22.04'
|
|
FDO_DISTRIBUTION_TAG: $UBUNTU_TAG
|
|
needs:
|
|
- "tier3:ubuntu:22.04@prep"
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
|
|
t_ubuntu:24.04:
|
|
extends:
|
|
- .build@template
|
|
- .fdo.distribution-image@ubuntu
|
|
- .nm_artifacts_debug
|
|
stage: tier3
|
|
variables:
|
|
FDO_DISTRIBUTION_VERSION: '24.04'
|
|
FDO_DISTRIBUTION_TAG: $UBUNTU_TAG
|
|
needs:
|
|
- "tier3:ubuntu:24.04@prep"
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
|
|
t_ubuntu:rolling:
|
|
extends:
|
|
- .build@template
|
|
- .fdo.distribution-image@ubuntu
|
|
- .nm_artifacts_debug
|
|
stage: tier3
|
|
variables:
|
|
FDO_DISTRIBUTION_VERSION: 'rolling'
|
|
FDO_DISTRIBUTION_TAG: $UBUNTU_TAG
|
|
needs:
|
|
- "tier3:ubuntu:rolling@prep"
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
|
|
t_debian:stable:
|
|
extends:
|
|
- .build@template
|
|
- .fdo.distribution-image@debian
|
|
- .nm_artifacts_debug
|
|
stage: tier3
|
|
variables:
|
|
FDO_DISTRIBUTION_VERSION: 'stable'
|
|
FDO_DISTRIBUTION_TAG: $DEBIAN_TAG
|
|
needs:
|
|
- "tier3:debian:stable@prep"
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
|
|
t_debian:oldstable:
|
|
extends:
|
|
- .build@template
|
|
- .fdo.distribution-image@debian
|
|
- .nm_artifacts_debug
|
|
stage: tier3
|
|
variables:
|
|
FDO_DISTRIBUTION_VERSION: 'oldstable'
|
|
FDO_DISTRIBUTION_TAG: $DEBIAN_TAG
|
|
needs:
|
|
- "tier3:debian:oldstable@prep"
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
|
|
t_centos:stream8:
|
|
extends:
|
|
- .build@template
|
|
- .fdo.distribution-image@centos
|
|
- .nm_artifacts_debug
|
|
stage: tier3
|
|
variables:
|
|
FDO_DISTRIBUTION_VERSION: 'stream8'
|
|
FDO_DISTRIBUTION_TAG: $CENTOS_TAG
|
|
needs:
|
|
- "tier3:centos:stream8@prep"
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
|
|
t_alpine:latest:
|
|
extends:
|
|
- .build@template
|
|
- .fdo.distribution-image@alpine
|
|
- .nm_artifacts_debug
|
|
stage: tier3
|
|
variables:
|
|
FDO_DISTRIBUTION_VERSION: 'latest'
|
|
FDO_DISTRIBUTION_TAG: $ALPINE_TAG
|
|
needs:
|
|
- "tier3:alpine:latest@prep"
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
|
|
#################################################################
|
|
# #
|
|
# specific jobs #
|
|
# #
|
|
#################################################################
|
|
|
|
check-patch:
|
|
extends:
|
|
- .fdo.distribution-image@fedora
|
|
variables:
|
|
FDO_DISTRIBUTION_VERSION: '40'
|
|
FDO_DISTRIBUTION_TAG: $FEDORA_TAG
|
|
needs:
|
|
- "tier1:fedora:40@prep"
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
stage: tier1
|
|
script:
|
|
- date '+%Y%m%d-%H%M%S'; NM_CHECKPATCH_FETCH_UPSTREAM=1 contrib/scripts/checkpatch-feature-branch.sh
|
|
allow_failure: true
|
|
|
|
check-tree:
|
|
extends:
|
|
- .fdo.distribution-image@fedora
|
|
variables:
|
|
FDO_DISTRIBUTION_VERSION: '40'
|
|
FDO_DISTRIBUTION_TAG: $FEDORA_TAG
|
|
needs:
|
|
- "tier1:fedora:40@prep"
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE != 'schedule'
|
|
stage: tier1
|
|
script:
|
|
- date '+%Y%m%d-%H%M%S'; clang-format --version
|
|
- date '+%Y%m%d-%H%M%S'; black --version
|
|
- date '+%Y%m%d-%H%M%S'; contrib/scripts/nm-python-black-format.sh --check
|
|
- date '+%Y%m%d-%H%M%S'; git ls-files -z -- 'po/*.po' | xargs -0 -n1 msgfmt -vc
|
|
- date '+%Y%m%d-%H%M%S'; contrib/scripts/nm-code-format.sh -n
|
|
- date '+%Y%m%d-%H%M%S'; ci-fairy generate-template && git diff --exit-code
|
|
- date '+%Y%m%d-%H%M%S'; ./autogen.sh --disable-autotools-deprecation && [ "$(LANG=C make -C po update-po 2>&1 1>/dev/null | grep -c 'warning:')" = 0 ]
|
|
|
|
pages:
|
|
stage: deploy
|
|
script:
|
|
- mv docs-html public
|
|
artifacts:
|
|
expire_in: 20 days
|
|
paths:
|
|
- public
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE == 'schedule'
|
|
when: never
|
|
- if: $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME == 'main'
|
|
dependencies:
|
|
- "t_fedora:40: [meson+gcc+docs+valgrind]"
|
|
needs:
|
|
- "t_fedora:40: [meson+gcc+docs+valgrind]"
|
|
|
|
triage:issues:
|
|
stage: triage
|
|
image: ruby:3
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE == "schedule" && $SCHEDULED_PIPELINE_NAME == "daily"
|
|
tags:
|
|
- placeholder-job # The job mostly waits on network requests, so use only one CPU: https://gitlab.freedesktop.org/freedesktop/freedesktop/-/issues/1358#note_2457416
|
|
script:
|
|
- gem install gitlab-triage
|
|
- gitlab-triage --debug --token $API_TOKEN --source-id $CI_PROJECT_ID
|
|
|
|
# Clean the generated images periodically to get updated snapshots of the distribution images.
|
|
# Create an scheduled pipeline to run it, passing an AUTHFILE environment variable of type
|
|
# 'File' with an authentication token with API access level.
|
|
clean-images:
|
|
extends:
|
|
- .fdo.ci-fairy
|
|
stage: prep
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE == "schedule" && $SCHEDULED_PIPELINE_NAME == "weekly"
|
|
script:
|
|
- ci-fairy -v --authfile $AUTHFILE delete-image --project NetworkManager/NetworkManager --all
|
|
|
|
# Have detached MR pipeline (https://docs.gitlab.com/ee/ci/pipelines/merge_request_pipelines.html)
|
|
# https://gitlab.freedesktop.org/freedesktop/freedesktop/-/issues/540#what-it-means-for-me-a-maintainer-of-a-project-part-of-gitlabfreedesktoporg
|
|
workflow:
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE == 'merge_request_event'
|
|
- if: $CI_PIPELINE_SOURCE == 'schedule'
|
|
- if: $CI_COMMIT_BRANCH && $CI_OPEN_MERGE_REQUESTS
|
|
when: never
|
|
- if: $CI_COMMIT_BRANCH
|