-
David Byers authoredDavid Byers authored
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
.gitlab-ci.yml 3.19 KiB
---
stages:
- version
- prepare
- build
- collect
- deploy
version:
image: python:3.7-stretch
stage: version
script:
- python3 scripts/update-version.py -k "$SSH_TAGGING_KEY" -o version -v
artifacts:
paths:
- version
only:
- branches
prepare:
stage: prepare
image: python:3.7-stretch
script:
- bash scripts/build.sh --version "$(cat version)"
artifacts:
paths:
- build/**
only:
- master
- beta
.build:firefox:
stage: build
image: node:lts-buster
cache:
paths:
- $CI_PROJECT_DIR/.cache/npm
before_script:
- mkdir -p "$CI_PROJECT_DIR/.cache/npm"
script:
- npm install --global web-ext --cache "$CI_PROJECT_DIR/.cache/npm" --prefer-offline --no-audit
- cd build/firefox
- web-ext -a . sign --channel=$CHANNEL
- mv atp_safe_links_cleaner* ../../safelinks-cleaner-firefox.xpi
artifacts:
paths:
- safelinks-cleaner-firefox.xpi
build:firefox:beta:
extends: .build:firefox
variables:
CHANNEL: unlisted
rules:
- if: '$CI_PIPELINE_SOURCE == "push" && $CI_COMMIT_BRANCH == "beta"'
changes:
- shared/**
- firefox/**
when: always
- if: '$CI_COMMIT_MESSAGE =~ /#force-build:(all|firefox)/ && $CI_COMMIT_BRANCH == "beta"'
when: always
- when: never
build:firefox:master:
extends: .build:firefox