-
Notifications
You must be signed in to change notification settings - Fork 14
/
Copy path.gitlab-ci.yml
110 lines (105 loc) · 3.22 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
106
107
108
109
110
stages:
- build
- release
- analysis
variables:
DEBIAN_FRONTEND: noninteractive
.install-ubuntu-dependencies: &install-ubuntu-dependencies
apt-get install -q -y --no-install-recommends
autoconf-archive
automake
autopoint
build-essential
gettext
gsettings-desktop-schemas-dev
libcanberra-gtk3-dev
libglib2.0-dev
libgtk-3-dev
libgtop2-dev
libice-dev
libpango1.0-dev
libsm-dev
libstartup-notification0-dev
libtool
libvulkan-dev
libx11-dev
libxcomposite-dev
libxcursor-dev
libxdamage-dev
libxext-dev
libxfixes-dev
libxinerama-dev
libxpresent-dev
libxrandr-dev
libxrender-dev
libxres-dev
libxt-dev
yelp-tools
zenity
ubuntu:
image: ubuntu:devel
stage: build
before_script:
- apt-get update
- *install-ubuntu-dependencies
script:
- ./autogen.sh
- make
- make distcheck
artifacts:
name: "${CI_JOB_NAME}-${CI_COMMIT_REF_NAME}"
when: always
paths:
- "${CI_PROJECT_NAME}-*.tar.xz"
release:
image: ubuntu:devel
stage: release
needs:
- job: ubuntu
artifacts: true
before_script:
- apt-get update
- apt-get install -q -y --no-install-recommends
ca-certificates
curl
variables:
GNOME_RELEASE_SERVICE_API_URL: "https://gnome-release-route-gnome-release-service.apps.openshift.gnome.org"
GNOME_RELEASE_SERVICE_API_INSTALL_MODULE_RELEASE_ENDPOINT: "$GNOME_RELEASE_SERVICE_API_URL/install-module-release"
TARBALL_ARTIFACT_PATH: "${CI_PROJECT_NAME}-${CI_COMMIT_TAG}.tar.xz"
id_tokens:
JWT_TOKEN:
aud: gnome-release-service
script:
- ls -al "${TARBALL_ARTIFACT_PATH}"
- >
curl --fail-with-body -X POST "$GNOME_RELEASE_SERVICE_API_INSTALL_MODULE_RELEASE_ENDPOINT"
-H "Authorization: Bearer $JWT_TOKEN"
-F "tarball=@${TARBALL_ARTIFACT_PATH}"
rules:
- if: $CI_COMMIT_TAG && $CI_COMMIT_REF_PROTECTED
coverity:
image: ubuntu:devel
stage: analysis
when: manual
before_script:
- apt-get update
- *install-ubuntu-dependencies
- apt-get install -q -y --no-install-recommends
ca-certificates
clang
curl
script:
- curl https://scan.coverity.com/download/linux64
--data "token=$COVERITY_TOKEN&project=metacity"
--output /tmp/coverity_tool.tgz
- tar zxf /tmp/coverity_tool.tgz
- CC=clang ./autogen.sh --disable-Werror
- ./cov-analysis-linux64-*/bin/cov-build --dir cov-int make
- tar czf cov-int.tar.gz cov-int
- curl --form token=$COVERITY_TOKEN
--form email=$GITLAB_USER_EMAIL
--form file=@cov-int.tar.gz
--form version="$(autoconf --trace='AC_INIT:$2')-$CI_COMMIT_SHORT_SHA"
https://scan.coverity.com/builds?project=metacity
only:
- master