ci: Use custom image for JS checks

Running dnf to update and install additional packages every time
the job is executed slows down the CI pipeline. Avoid this by
using another custom images for JS source checks.

In addition to the js shell we use for the existing syntax check,
also include eslint for future jobs and some extension-specific
tooling to make the image more useful to extension authors.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/408
This commit is contained in:
Florian Müllner 2019-02-13 05:49:37 +01:00 committed by Georges Basile Stavracas Neto
parent ad8690bb2e
commit 72be8eeb31
2 changed files with 19 additions and 3 deletions

View File

@ -25,10 +25,8 @@ check_commit_log:
- merge_requests - merge_requests
js_check: js_check:
image: registry.fedoraproject.org/fedora:latest image: registry.gitlab.gnome.org/gnome/gnome-shell/extension-ci:v1
stage: source_check stage: source_check
before_script:
- dnf install -y findutils mozjs60-devel
script: script:
- find js -name '*.js' -exec js60 -c -s '{}' ';' 2>&1 | tee $JS_LOG - find js -name '*.js' -exec js60 -c -s '{}' ';' 2>&1 | tee $JS_LOG
- (! grep -q . $JS_LOG) - (! grep -q . $JS_LOG)

View File

@ -0,0 +1,18 @@
FROM registry.fedoraproject.org/fedora:latest
RUN dnf -y update && dnf -y upgrade && \
dnf install -y 'dnf-command(copr)' && \
# For syntax checks with `find . -name '*.js' -exec js60 -c -s '{}' ';'`
dnf install -y findutils mozjs60-devel && \
# For static analysis with eslint
dnf install -y nodejs && \
npm install -g eslint && \
# Shameless plug for my own tooling; useful for generating zip
dnf copr enable -y fmuellner/gnome-shell-ci && \
dnf install -y gnome-extensions-tool meson && \
dnf clean all && \
rm -rf /var/cache/dnf