summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
blob: 2d8d8ae6beb7118f4e87f07867b4b3229f5b68b1 (plain)
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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
# Copyright © 2015-2022 Collabora Ltd.
# SPDX-License-Identifier: MIT
#
# Permission is hereby granted, free of charge, to any person
# obtaining a copy of this software and associated documentation files
# (the "Software"), to deal in the Software without restriction,
# including without limitation the rights to use, copy, modify, merge,
# publish, distribute, sublicense, and/or sell copies of the Software,
# and to permit persons to whom the Software is furnished to do so,
# subject to the following conditions:
#
# The above copyright notice and this permission notice shall be
# included in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.

image: debian:bookworm-slim

stages:
  - build

before_script:
  - ./tools/ci-install.sh

variables:
  dbus_ci_configure_flags: ''
  ci_in_docker: "yes"
  ci_parallel: "2"
  ci_sudo: "yes"
  ci_distro: "debian"
  ci_suite: "bookworm"

.common:
  script: &script
    - chown -R user .
    - runuser -u user -- env PATH="/home/user/.local/bin:/usr/lib/ccache:$PATH" ./tools/ci-build.sh $dbus_ci_configure_flags
  artifacts: &artifacts
    paths:
      - _autotools/*.log
    when: always

build:python3.7:
  stage: build
  image: "debian:buster-slim"
  variables:
    ci_suite: buster
    dbus_ci_system_python: python3
  script: *script
  artifacts: *artifacts

build:python3.7-dbg:
  stage: build
  image: "debian:buster-slim"
  variables:
    ci_suite: buster
    dbus_ci_system_python: python3-dbg
  script: *script
  artifacts: *artifacts

build:python3.9:
  stage: build
  image: "debian:bullseye-slim"
  variables:
    ci_suite: bullseye
    dbus_ci_system_python: python3.9
  script: *script
  artifacts: *artifacts

build:python3.9-dbg:
  stage: build
  image: "debian:bullseye-slim"
  variables:
    ci_suite: bullseye
    dbus_ci_system_python: python3.9-dbg
    dbus_ci_system_python_module_suffix: -dbg
  script: *script
  artifacts: *artifacts

build:python3.10:
  stage: build
  image: "debian:bookworm-slim"
  variables:
    ci_suite: bookworm
    dbus_ci_system_python: python3.10
  script: *script
  artifacts: *artifacts

build:python3.10-dbg:
  stage: build
  image: "debian:bookworm-slim"
  variables:
    ci_suite: bookworm
    dbus_ci_system_python: python3.10-dbg
    dbus_ci_system_python_module_suffix: -dbg
  script: *script
  artifacts: *artifacts

build:python3.11:
  stage: build
  image: "debian:bookworm-slim"
  variables:
    ci_suite: bookworm
    dbus_ci_system_python: python3.11
  script: *script
  artifacts: *artifacts

build:python3.11-dbg:
  stage: build
  image: "debian:bookworm-slim"
  variables:
    ci_suite: bookworm
    dbus_ci_system_python: python3.11-dbg
    dbus_ci_system_python_module_suffix: -dbg
  script: *script
  artifacts: *artifacts

# vim:set sw=2 sts=2 et: