2019-01-28 02:34:48 +00:00
|
|
|
stages:
|
2019-02-13 19:34:07 +00:00
|
|
|
- review
|
2019-01-28 02:34:48 +00:00
|
|
|
- source_check
|
2019-02-12 16:53:42 +00:00
|
|
|
- build
|
2019-02-12 21:39:47 +00:00
|
|
|
- test
|
2019-01-28 02:34:48 +00:00
|
|
|
|
|
|
|
variables:
|
|
|
|
JS_LOG: "js-report.txt"
|
2019-02-09 03:51:00 +00:00
|
|
|
POT_LOG: "pot-update.txt"
|
2019-01-28 02:34:48 +00:00
|
|
|
|
2019-02-12 16:53:42 +00:00
|
|
|
.only_default: &only_default
|
|
|
|
only:
|
|
|
|
- branches
|
|
|
|
- tags
|
|
|
|
- merge_requests
|
|
|
|
|
2019-02-13 19:34:07 +00:00
|
|
|
check_commit_log:
|
|
|
|
image: registry.fedoraproject.org/fedora:latest
|
|
|
|
stage: review
|
|
|
|
before_script:
|
|
|
|
- dnf install -y git
|
|
|
|
script:
|
|
|
|
- ./.gitlab-ci/check-commit-log.sh
|
|
|
|
only:
|
|
|
|
- merge_requests
|
|
|
|
|
2019-01-28 02:34:48 +00:00
|
|
|
js_check:
|
2019-02-13 04:49:37 +00:00
|
|
|
image: registry.gitlab.gnome.org/gnome/gnome-shell/extension-ci:v1
|
2019-01-28 02:34:48 +00:00
|
|
|
stage: source_check
|
|
|
|
script:
|
|
|
|
- find js -name '*.js' -exec js60 -c -s '{}' ';' 2>&1 | tee $JS_LOG
|
|
|
|
- (! grep -q . $JS_LOG)
|
2019-02-12 16:53:42 +00:00
|
|
|
<<: *only_default
|
2019-02-12 19:17:07 +00:00
|
|
|
only:
|
|
|
|
changes:
|
|
|
|
- js/**/*
|
2019-01-28 02:34:48 +00:00
|
|
|
artifacts:
|
|
|
|
paths:
|
|
|
|
- ${JS_LOG}
|
|
|
|
when: on_failure
|
2019-02-12 16:53:42 +00:00
|
|
|
|
|
|
|
build:
|
|
|
|
image: registry.gitlab.gnome.org/gnome/gnome-shell/master:v1
|
|
|
|
stage: build
|
|
|
|
before_script:
|
|
|
|
- .gitlab-ci/checkout-mutter.sh
|
|
|
|
- meson mutter mutter/build --prefix=/usr -Dtests=false
|
|
|
|
- ninja -C mutter/build install
|
|
|
|
script:
|
|
|
|
- meson . build -Dbuiltype=debugoptimized
|
|
|
|
- ninja -C build
|
|
|
|
- ninja -C build install
|
|
|
|
<<: *only_default
|
2019-02-12 21:39:47 +00:00
|
|
|
artifacts:
|
|
|
|
expire_in: 1 day
|
|
|
|
paths:
|
|
|
|
- mutter
|
|
|
|
- build
|
|
|
|
|
|
|
|
test:
|
|
|
|
image: registry.gitlab.gnome.org/gnome/gnome-shell/master:v1
|
|
|
|
stage: test
|
|
|
|
before_script:
|
|
|
|
- ninja -C mutter/build install
|
|
|
|
script:
|
|
|
|
- xvfb-run meson test -C build --no-rebuild
|
|
|
|
<<: *only_default
|
|
|
|
artifacts:
|
|
|
|
expire_in: 1 day
|
|
|
|
paths:
|
|
|
|
- build/meson-logs/testlog.txt
|
|
|
|
when: on_failure
|
2019-02-09 03:51:00 +00:00
|
|
|
|
|
|
|
test-pot:
|
|
|
|
image: registry.gitlab.gnome.org/gnome/gnome-shell/master:v1
|
|
|
|
stage: test
|
|
|
|
before_script:
|
|
|
|
- ninja -C mutter/build install
|
|
|
|
script:
|
|
|
|
# Check that pot files are generated correctly:
|
|
|
|
# https://savannah.gnu.org/bugs/?50920#comment5
|
|
|
|
- ninja -C build gnome-shell-pot 2>&1 | awk '
|
|
|
|
BEGIN { start=0; }
|
|
|
|
start==1 { print $0; }
|
|
|
|
/gnome-shell-pot/ { start=1; }
|
|
|
|
' | tee $POT_LOG
|
|
|
|
- (! grep -q . $POT_LOG)
|
|
|
|
<<: *only_default
|