Welcome to mirror list, hosted at ThFree Co, Russian Federation.

.gitlab-ci.yml - github.com/marius-wieschollek/passwords-webextension.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: a65e72e4c21eca88b32193bb1595b93fecb28976 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
stages:
  - compiling
  - publishing

image: passwords-webextension-builder

Compile Firefox:
  stage: compiling
  variables:
    GIT_SUBMODULE_STRATEGY: recursive
  script:
    - mkdir dist
    - npm ci
    - npm run build:firefox
    - if [ "${CI_COMMIT_REF_NAME}" == "stable" ] ; then sed -i -e "s|.BUILD||g" ./build/manifest.json ; fi
    - if [ "${CI_COMMIT_REF_NAME}" != "stable" ] ; then sed -i -e "s|BUILD|${CI_PIPELINE_ID}|g" ./build/manifest.json ; fi
    - sed -i -e "s|CI_COMMIT_REF_NAME|${CI_COMMIT_REF_NAME}|g" ./build/html/build.html
    - sed -i -e "s|CI_PROJECT_NAME|${CI_PROJECT_NAME}|g" ./build/html/build.html
    - sed -i -e "s|CI_PROJECT_URL|${CI_PROJECT_URL}|g" ./build/html/build.html
    - sed -i -e "s|CI_PIPELINE_ID|${CI_PIPELINE_ID}|g" ./build/html/build.html
    - sed -i -e "s|CI_COMMIT_SHA|${CI_COMMIT_SHA}|g" ./build/html/build.html
    - sed -i -e "s|CI__|CI_|g" ./build/html/build.html
    - mv build dist/firefox-extension
  artifacts:
    paths:
      - ./dist/firefox-extension

Compile Chrome:
  stage: compiling
  variables:
    GIT_SUBMODULE_STRATEGY: recursive
  script:
    - mkdir dist
    - npm ci
    - npm run build:chrome
    - sed -i -e "s|99999|${CI_PIPELINE_ID}|g" ./build/manifest.json
    - sed -i -e "s|CI_COMMIT_REF_NAME|${CI_COMMIT_REF_NAME}|g" ./build/html/build.html
    - sed -i -e "s|CI_PROJECT_NAME|${CI_PROJECT_NAME}|g" ./build/html/build.html
    - sed -i -e "s|CI_PROJECT_URL|${CI_PROJECT_URL}|g" ./build/html/build.html
    - sed -i -e "s|CI_PIPELINE_ID|${CI_PIPELINE_ID}|g" ./build/html/build.html
    - sed -i -e "s|CI_COMMIT_SHA|${CI_COMMIT_SHA}|g" ./build/html/build.html
    - sed -i -e "s|CI__|CI_|g" ./build/html/build.html
    - mv build dist/chrome-extension
  artifacts:
    paths:
      - ./dist/chrome-extension

Publish Nightly Firefox:
  stage: publishing
  script:
    - 'export ARTIFACT_URL=${CI_PROJECT_URL}/firefox/${CI_COMMIT_REF_NAME}/FILENAME'
    - 'sed -i -e "s|\"gecko\": {|\"gecko\":{\"update_url\":\"ARTIFACT_URL\",|g" ./dist/firefox-extension/manifest.json'
    - 'sed -i -e "s|ARTIFACT_URL|${ARTIFACT_URL}|g" ./dist/firefox-extension/manifest.json'
    - 'sed -i -e "s|FILENAME|updates.json|g" ./dist/firefox-extension/manifest.json'
    - 'web-ext sign --channel unlisted --ignore-files updates.json'
    - 'sed -i -e "s|ARTIFACT_URL|${ARTIFACT_URL}|g" ./dist/firefox-extension/updates.json'
    - 'export EXT_FILENAME=$(cd ./dist/firefox-extension/ && ls *.xpi)'
    - 'sed -i -e "s|FILENAME|${EXT_FILENAME}|g" ./dist/firefox-extension/updates.json'
    - 'export EXT_VERSION=$(node -p -e "require(\"./dist/firefox-extension/manifest.json\").version")'
    - 'sed -i -e "s|VERSION|${EXT_VERSION}|g" ./dist/firefox-extension/updates.json'
    - 'export SHA_512=$(sha512sum ./dist/firefox-extension/${EXT_FILENAME} | cut -d\  -f 1)'
    - 'sed -i -e "s|SHA_512|${SHA_512}|g" ./dist/firefox-extension/updates.json'
    - 'export CHANGELOG_URL=${CI_PROJECT_URL}/blob/${CI_COMMIT_REF_NAME}/Changelog.md'
    - 'sed -i -e "s|CHANGELOG_URL|${CHANGELOG_URL}|g" ./dist/firefox-extension/updates.json'
  environment:
    name: Testing
  only:
    - testing
  artifacts:
    paths:
      - ./dist/firefox-extension/updates.json
      - ./dist/firefox-extension/*.xpi

Publish Nightly Chrome:
  stage: publishing
  allow_failure: true
  script:
    - 'export WEXT_SHIPIT_CHROME_EXTENSION_ID=${CHROME_EXTENSION_ID_TESTING}'
    - 'shipit chrome dist/chrome-extension'
  environment:
    name: Testing
  only:
    - testing

Publish Stable Firefox:
  stage: publishing
  script:
    - 'rm dist/firefox-extension/updates.json'
    - 'web-ext-submit --channel listed'
  environment:
    name: Stable
  only:
    - stable

Publish Stable Chrome:
  stage: publishing
  script:
    - 'export WEXT_SHIPIT_CHROME_EXTENSION_ID=${CHROME_EXTENSION_ID_STABLE}'
    - 'shipit chrome dist/chrome-extension'
  environment:
    name: Stable
  only:
    - stable