-
Notifications
You must be signed in to change notification settings - Fork 15
/
.gitlab-ci.yml
105 lines (96 loc) · 2.88 KB
/
.gitlab-ci.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
include:
- remote: 'https://gitlab.freedesktop.org/freedesktop/ci-templates/-/raw/593a0a5fe35a523a646a7efae5471c9759b8fba3/templates/fedora.yml'
variables:
FDO_UPSTREAM_REPO: gnome/gnome-initial-setup
stages:
- prepare
- build
.fedora.container.common:
variables:
# When branching a stable release, change 'main'
# to the release number/branch to ensure that
# a new image will be created, tailored for the
# stable branch.
FDO_DISTRIBUTION_TAG: '2024-11-09.01-main'
FDO_DISTRIBUTION_VERSION: 42
# Workaround for https://gitlab.gnome.org/Infrastructure/Infrastructure/-/issues/1247
FDO_DISTRIBUTION_EXEC: |
rm -r /var/lib/gdm/.config
# See also https://gitlab.freedesktop.org/freedesktop/ci-templates
build.container.fedora@x86_64:
extends:
- '.fdo.container-build@fedora'
- '.fedora.container.common'
stage: 'prepare'
variables:
# no need to pull the whole tree for rebuilding the image
GIT_STRATEGY: none
# Expiry sets fdo.expires on the image
FDO_EXPIRES_AFTER: 8w
FDO_DISTRIBUTION_PACKAGES: >-
@c-development
accountsservice-devel
ccache
desktop-file-utils
fontconfig-devel
gdm-devel
geoclue2-devel
geocode-glib-devel
glib2-devel
gnome-desktop4-devel
gsettings-desktop-schemas-devel
gtk4-devel
ibus-devel
krb5-devel
libgweather4-devel
libadwaita-devel
libnma-gtk4-devel
libpwquality-devel
libsecret-devel
malcontent-ui-devel
meson
polkit-devel
webkitgtk6.0-devel
.job_template: &job_definition
extends:
- '.fdo.distribution-image@fedora'
- '.fedora.container.common'
stage: build
script:
# In general, we would like warnings to be fatal. However, code copied from
# gnome-control-center uses many deprecated functions. Until we have a good
# answer to sharing that code (#68), make those warnings non-fatal.
- meson setup
--wrap-mode=nofallback
--fatal-meson-warnings
-Dsystemd=${EXPLICIT_FEATURES}
--auto-features ${AUTO_FEATURES}
${OPTIONS}
-Dwerror=true -Dc_args=-Wno-error=deprecated-declarations
${EXTRA_PARAMETERS}
_build
.
- cd _build
- ninja -v
# Check that strings can be extracted
- ninja -v gnome-initial-setup-pot
# Check the package can be installed
- DESTDIR=$(mktemp -d) ninja -v install
- meson test
artifacts:
when: on_failure
name: "gnome-initial-setup-${CI_COMMIT_REF_NAME}-${CI_JOB_NAME}"
paths:
- "${CI_PROJECT_DIR}/_build/meson-logs"
build-minimal:
<<: *job_definition
variables:
EXPLICIT_FEATURES: 'false'
AUTO_FEATURES: 'disabled'
OPTIONS: ''
build-maximal:
<<: *job_definition
variables:
EXPLICIT_FEATURES: 'true'
AUTO_FEATURES: 'enabled'
OPTIONS: '-Dvendor-conf-file=/var/lib/weird-vendor-specific-path.ini'