forked from GNOME/meld
-
Notifications
You must be signed in to change notification settings - Fork 121
/
.gitlab-ci.yml
86 lines (74 loc) · 2.49 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
include: 'https://gitlab.gnome.org/GNOME/citemplates/raw/master/flatpak/flatpak_ci_initiative.yml'
variables:
GNOME_SDK: 42
image: registry.gitlab.gnome.org/gnome/gnome-runtime-images/gnome:${GNOME_SDK}
stages:
- check
- test
- build
- deploy
flatpak:
extends: .flatpak
stage: build
variables:
MANIFEST_PATH: "data/org.gnome.MeldDevel.json"
FLATPAK_MODULE: "meld"
RUNTIME_REPO: "https://nightly.gnome.org/gnome-nightly.flatpakrepo"
APP_ID: "org.gnome.MeldDevel"
BUNDLE: "meld-dev.flatpak"
nightly:
extends: '.publish_nightly'
dependencies:
- 'flatpak'
.pythonchecks:
stage: check
tags: # test in the same org.gnome.Sdk environment that is used for creating flatpaks
- flatpak
script:
- flatpak run --share=network --filesystem=`pwd` --env=PATH=$PATH:/var/data/python/bin --command=sh org.gnome.Sdk -c 'pip3 install --user -r dev-requirements.txt; $PYTHON_CHECK_COMMAND'
lint:
extends: .pythonchecks
variables:
PYTHON_CHECK_COMMAND: "pre-commit run --all-files --show-diff-on-failure"
pytest:
extends: .pythonchecks
variables:
PYTHON_CHECK_COMMAND: "pytest"
.mingw-common:
stage: build
tags: # select gitlab runners with specific tag (unrelated to git repo tags)
- win32-ps
artifacts:
name: "${env:CI_JOB_STAGE}-${env:CI_COMMIT_REF_NAME}"
paths:
- dist/
before_script:
- $env:Path = "C:\msys64\${env:MSYSTEM}\bin;C:\msys64\usr\bin;${env:PATH}"
- >
C:\msys64\usr\bin\pacman --noconfirm -S --refresh --sysupgrade --needed
mingw-w64-${env:MSYS2_ARCH}-python3-cx_Freeze
mingw-w64-${env:MSYS2_ARCH}-python3-gobject
mingw-w64-${env:MSYS2_ARCH}-python3-pytest
mingw-w64-${env:MSYS2_ARCH}-python3-setuptools
mingw-w64-${env:MSYS2_ARCH}-gtksourceview4
mingw-w64-${env:MSYS2_ARCH}-gsettings-desktop-schemas
glib2-devel
intltool
script:
- glib-compile-schemas data
- python3 setup_win32.py bdist_dumb --bdist-dir build\bdist.mingw\msi --keep-temp bdist_msi --keep-temp
# main purpose of this job is creating installers and not checking for breakage by changes in code
# so allow failures since the status of the build may depend on updates of rolling-release msys2 packages
allow_failure: true
mingw64-dist:
extends: .mingw-common
variables:
MSYS2_ARCH: "x86_64"
MSYSTEM: "MINGW64"
CHERE_INVOKING: "yes"
mingw32-dist:
extends: .mingw-common
variables:
MSYS2_ARCH: "i686"
MSYSTEM: "MINGW32"
CHERE_INVOKING: "yes"