commit 0e2b465738128eed3ea53b6e6a907deda46c6922 Author: emma peel emma.peel@riseup.net Date: Thu Oct 7 17:54:33 2021 +0200
update gitlabCI file --- .gitlab-ci.yml | 101 ++++++++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 78 insertions(+), 23 deletions(-)
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 0fa8dfb..619afa8 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,13 +1,5 @@ -image: python:3.9-slim-buster +image: debian:buster-slim
-cache: - key: $CI_PROJECT_PATH_SLUG.${CI_COMMIT_REF_SLUG} - paths: - - packages - - venv - - i18n - - lego - - apt-cache
# This template should be usable on any system that's based on apt. # taken from tor gitlabci @@ -29,35 +21,98 @@ cache: apt-get upgrade -qy
variables: - GIT_SUBMODULE_STRATEGY: recursive + GIT_SUBMODULE_STRATEGY: recursive + PIP_CACHE_DIR: "$CI_PROJECT_DIR/.cache/pip" + TRANSLATION_BRANCH: "tbmanual-contentspot"
-before_script: + +stages: + - build + - test_l10n + +pages: + cache: + key: $CI_PROJECT_PATH_SLUG.${CI_COMMIT_REF_SLUG} + paths: + - packages + - lego + - apt-cache + - venv + - .cache/pip + - .cache/lektor/builds/ + stage: build + script: - *apt-template - - DEBIAN_FRONTEND=noninteractive apt-get install gettext python3-babel python3-pip git python3-inifile python3-dev python3-setuptools python3-openssl python3-cryptography i18nspector -y + - DEBIAN_FRONTEND=noninteractive apt-get install gettext python3-babel python3-pip git python3-inifile python3-dev python3-setuptools python3-openssl python3-cryptography i18nspector apt-utils ca-certificates -y - pip3 install virtualenv - virtualenv venv - source venv/bin/activate - pip3 install lektor - echo 'checking out translations' - rm -rf i18n - - git clone https://git.torproject.org/translation.git i18n - - cd i18n && git checkout tbmanual-contentspot && cd .. - -pages: - script: - - echo 'building lektor 3 times to get translations in place' + - git clone --branch $TRANSLATION_BRANCH https://git.torproject.org/translation.git i18n + - echo 'reinstall lektor plugins' + - lektor project-info --output-path - lektor plugins reinstall + - echo 'building lektor 3 more times to get translations in place' - lektor build --output-path public && lektor build --output-path public && lektor build --output-path public artifacts: paths: - public - i18n - only: - - translations + rules: + - when: always
-check_l10n: +check_new_strings: + cache: + key: $CI_PROJECT_PATH_SLUG.${CI_COMMIT_REF_SLUG} + paths: + - packages + - lego + - apt-cache + - venv + - .cache/pip + + stage: test_l10n + needs: [pages] + allow_failure: true + rules: + - if: '$CI_PIPELINE_SOURCE == "merge_request_event"' + - if: $CI_COMMIT_REF_NAME == $CI_DEFAULT_BRANCH + - if: '$CI_COMMIT_BRANCH == "translations"' + when: never + - changes: + - content/**/*.lr + - templates/**/* script: - - rm -rf l10n/ + - *apt-template + - DEBIAN_FRONTEND=noninteractive apt-get install gettext git python3-dev python3-setuptools i18nspector python3-polib python3-requests ca-certificates apt-utils -y - git clone https://gitlab.torproject.org/tpo/community/l10n.git - - pip3 install polib + - echo 'lets see if there are any updates in the strings for translation' + - l10n/bin/check_po_status.py $TRANSLATION_BRANCH + artifacts: + paths: + - public + - i18n + - l10n + +check_l10n: + allow_failure: true + cache: + key: $CI_PROJECT_PATH_SLUG.${CI_COMMIT_REF_SLUG} + paths: + - packages + - lego + - apt-cache + - venv + - i18n + - .cache/pip + stage: test_l10n + needs: [pages] + only: + - translations + script: + - DEBIAN_FRONTEND=noninteractive apt-get install gettext i18nspector python3-polib ca-certificates -y + - echo 'lets see if there are any broken links on the translations' - l10n/bin/check_markdown_links.py i18n/ +
tor-commits@lists.torproject.org