2020-01-13 10:35:34 +00:00
|
|
|
include:
|
|
|
|
- 'https://source.puri.sm/Librem5/librem5-ci/raw/master/librem5-pipeline-definitions.yml'
|
2022-08-30 12:08:26 +00:00
|
|
|
- 'https://gitlab.gnome.org/GNOME/citemplates/raw/master/flatpak/flatpak_ci_initiative.yml'
|
2020-01-13 10:35:34 +00:00
|
|
|
|
2020-01-13 10:33:42 +00:00
|
|
|
stages:
|
|
|
|
- build
|
|
|
|
- test
|
2020-01-13 10:35:34 +00:00
|
|
|
- package
|
|
|
|
- test-package
|
2022-01-23 19:38:45 +00:00
|
|
|
- deploy
|
2020-01-13 10:33:42 +00:00
|
|
|
|
2021-07-12 08:30:14 +00:00
|
|
|
variables:
|
2021-08-25 07:36:56 +00:00
|
|
|
L5_DOCKER_IMAGE: debian:bookworm
|
2023-01-20 16:08:42 +00:00
|
|
|
DEBIAN_IMAGE: $CI_REGISTRY/gnome/calls/debian:v0.0.20230120
|
2021-10-01 16:34:51 +00:00
|
|
|
GIT_SUBMODULE_STRATEGY: normal
|
2021-07-12 08:30:14 +00:00
|
|
|
|
2018-07-27 08:06:04 +00:00
|
|
|
build:native:
|
|
|
|
stage: build
|
|
|
|
artifacts:
|
|
|
|
paths:
|
|
|
|
- _build
|
2020-12-04 17:39:53 +00:00
|
|
|
variables:
|
2021-10-06 11:42:05 +00:00
|
|
|
COMMON_BUILD_OPTS: -Db_coverage=true
|
2020-12-04 17:39:53 +00:00
|
|
|
BUILD_OPTS: -Dgtk_doc=true ${COMMON_BUILD_OPTS}
|
2021-01-22 12:12:01 +00:00
|
|
|
WANT_BUILD_DEPS: "true"
|
2020-07-03 08:20:39 +00:00
|
|
|
except:
|
|
|
|
variables:
|
|
|
|
- $PKG_ONLY == "1"
|
2021-12-21 11:35:24 +00:00
|
|
|
image: "${DEBIAN_IMAGE}"
|
2021-07-12 08:30:14 +00:00
|
|
|
tags: []
|
2021-01-22 12:12:01 +00:00
|
|
|
script:
|
|
|
|
- 'echo "Build opts: ${BUILD_OPTS}"'
|
|
|
|
- meson ${BUILD_OPTS} . _build
|
|
|
|
- ninja -C _build
|
2018-07-27 08:06:04 +00:00
|
|
|
|
|
|
|
test:native:
|
2021-01-22 12:12:01 +00:00
|
|
|
extends: build:native
|
2018-07-27 08:06:04 +00:00
|
|
|
stage: test
|
|
|
|
dependencies:
|
|
|
|
- build:native
|
|
|
|
script:
|
|
|
|
- export LC_ALL=C.UTF-8
|
2021-04-05 01:35:48 +00:00
|
|
|
- xvfb-run -s -noreset ninja -C _build test
|
2021-04-27 02:46:34 +00:00
|
|
|
- cp _build/src/libcalls-vala.a.p/*.c _build
|
|
|
|
- ninja -C _build coverage
|
2021-11-24 13:07:37 +00:00
|
|
|
coverage: '/^lines:\s+([\d.]+\%)\s+/'
|
2018-07-27 08:06:04 +00:00
|
|
|
|
2020-12-04 17:39:53 +00:00
|
|
|
build-gtkdoc:
|
2021-01-22 12:12:01 +00:00
|
|
|
extends: build:native
|
2020-12-04 17:39:53 +00:00
|
|
|
stage: test
|
|
|
|
dependencies:
|
|
|
|
- build:native
|
|
|
|
script:
|
|
|
|
- ninja -C _build calls-doc
|
|
|
|
- mv _build/doc/html/ _reference/
|
|
|
|
artifacts:
|
|
|
|
paths:
|
|
|
|
- _reference
|
|
|
|
|
2020-11-09 09:37:12 +00:00
|
|
|
check-po:
|
2021-01-22 12:12:01 +00:00
|
|
|
extends: build:native
|
2020-11-09 09:37:12 +00:00
|
|
|
stage: test
|
|
|
|
dependencies:
|
|
|
|
- build:native
|
|
|
|
script:
|
2021-10-01 16:34:55 +00:00
|
|
|
# barf on untranslated C or UI files. Seems intltool
|
2020-11-09 09:37:12 +00:00
|
|
|
# can't be told to exit with non-zero exit status
|
|
|
|
# in this case
|
|
|
|
- cd po/
|
2021-10-01 16:34:55 +00:00
|
|
|
- intltool-update -m 2>&1 | grep -qs '/.*\.\(c|ui\)' && { intltool-update -m; exit 1; } || exit 0
|
2021-06-22 04:26:57 +00:00
|
|
|
|
2022-03-05 02:59:11 +00:00
|
|
|
package:deb-pureos-byzantium:arm64:
|
2021-07-12 08:30:14 +00:00
|
|
|
variables:
|
2021-08-25 07:36:56 +00:00
|
|
|
L5_DOCKER_IMAGE: pureos/byzantium
|
|
|
|
DEB_BUILD_PROFILES: nodoc
|
2021-07-12 08:30:14 +00:00
|
|
|
tags:
|
|
|
|
- aarch64
|
|
|
|
extends: .l5-build-debian-package
|
|
|
|
|
2022-09-21 12:09:20 +00:00
|
|
|
.vars-devel:
|
2021-06-22 04:26:57 +00:00
|
|
|
variables:
|
2021-07-10 02:34:23 +00:00
|
|
|
MANIFEST_PATH: "org.gnome.Calls.json"
|
2021-06-22 04:26:57 +00:00
|
|
|
FLATPAK_MODULE: "calls"
|
2021-07-10 02:34:23 +00:00
|
|
|
APP_ID: "org.gnome.Calls"
|
2022-09-21 12:09:20 +00:00
|
|
|
RUNTIME_REPO: "https://nightly.gnome.org/gnome-nightly.flatpakrepo"
|
2021-06-22 04:26:57 +00:00
|
|
|
BUNDLE: "calls.flatpak"
|
2022-09-21 12:09:20 +00:00
|
|
|
CONFIG_OPTS: >-
|
|
|
|
-Dmanpages=false
|
2022-11-19 15:56:49 +00:00
|
|
|
TEST_RUN_ARGS: >-
|
|
|
|
"calls:Validate desktop file"
|
|
|
|
"calls:Validate daemon desktop file"
|
|
|
|
calls:util
|
|
|
|
calls:settings
|
|
|
|
calls:origin
|
|
|
|
calls:provider
|
|
|
|
calls:call
|
|
|
|
calls:plugins
|
|
|
|
calls:contacts
|
|
|
|
calls:ui-call
|
|
|
|
calls:manager
|
|
|
|
calls:ringer
|
|
|
|
calls:media
|
|
|
|
calls:srtp
|
|
|
|
calls:sdp-crypto
|
|
|
|
# Disable test because it fails in flatpak
|
|
|
|
#calls:sip
|
2022-09-21 12:09:20 +00:00
|
|
|
|
|
|
|
# Build Flatpak for x86_64
|
|
|
|
flatpak@x86_64:
|
2023-01-04 11:49:10 +00:00
|
|
|
stage: package
|
2022-09-21 12:09:20 +00:00
|
|
|
extends: ['.flatpak@x86_64', '.vars-devel']
|
2023-01-22 05:36:24 +00:00
|
|
|
except:
|
|
|
|
variables:
|
|
|
|
- $PKG_ONLY == "1"
|
2022-09-21 12:09:20 +00:00
|
|
|
|
|
|
|
# Build Flatpak for aarch64
|
|
|
|
flatpak@aarch64:
|
2023-01-04 11:49:10 +00:00
|
|
|
stage: package
|
2022-09-21 12:09:20 +00:00
|
|
|
extends: ['.flatpak@aarch64', '.vars-devel']
|
2023-01-22 05:36:24 +00:00
|
|
|
except:
|
|
|
|
variables:
|
|
|
|
- $PKG_ONLY == "1"
|
2022-09-21 12:09:20 +00:00
|
|
|
|
|
|
|
# Publish Flatpak for x86_64
|
|
|
|
nightly@x86_64:
|
|
|
|
extends: '.publish_nightly'
|
|
|
|
needs: ['flatpak@x86_64']
|
|
|
|
|
|
|
|
# Publish Flatpak for aarch64
|
|
|
|
nightly@aarch64:
|
|
|
|
extends: '.publish_nightly'
|
|
|
|
needs: ['flatpak@aarch64']
|
2022-01-23 19:38:45 +00:00
|
|
|
|
|
|
|
pages:
|
|
|
|
stage: deploy
|
|
|
|
needs:
|
|
|
|
- build-gtkdoc
|
|
|
|
script:
|
|
|
|
mv _reference/ public/
|
|
|
|
artifacts:
|
|
|
|
paths:
|
|
|
|
- public
|
|
|
|
only:
|
2022-09-03 14:33:12 +00:00
|
|
|
- main
|