-
Notifications
You must be signed in to change notification settings - Fork 1
/
.gitlab-ci.yml
86 lines (78 loc) · 2.57 KB
/
.gitlab-ci.yml
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
# This file is a template, and might need editing before it works on your project.
# To contribute improvements to CI/CD templates, please follow the Development guide at:
# https://docs.gitlab.com/ee/development/cicd/templates.html
# This specific template is located at:
# https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Getting-Started.gitlab-ci.yml
# This is a sample GitLab CI/CD configuration file that should run without any modifications.
# It demonstrates a basic 3 stage CI/CD pipeline. Instead of real tests or scripts,
# it uses echo commands to simulate the pipeline execution.
#
# A pipeline is composed of independent jobs that run scripts, grouped into stages.
# Stages run in sequential order, but jobs within stages run in parallel.
#
# For more information, see: https://docs.gitlab.com/ee/ci/yaml/index.html#stages
variables:
GIT_SSL_NO_VERIFY: "true"
ELECTRON_CACHE: ".cache/electron"
ELECTRON_BUILDER_CACHE: ".cache/electron-builder"
#cache:
# paths:
# - node_modules/
# - .cache/electron/
# - .cache/electron-builder/
stages: # List of stages for jobs, and their order of execution
- build-win
- build-mac
- build-linux
# - test
# - deploy
before_script:
# - npm install --global [email protected]
build-win-job: # for windows
tags:
- windows
stage: build-win
script:
- echo $env:Path
- $env:Path += ";C:\ProgramData\chocolatey;C:\Windows\system32\config\systemprofile\.windows-build-tools\;C:\Python27\;C:\Program Files\nodejs"
- systeminfo /fo csv | ConvertFrom-Csv | select OS* | Format-List
- echo $env:Path
# - choco upgrade nodejs -y
- node -v
- Set-Variable -Name "time" -Value (date -Format "%H:%m")
- echo ${time}
- echo "started by ${GITLAB_USER_NAME}"
- npm -v
- npm --force install
- ./run.ps1
- npm run publish:win
only:
- master
build-mac-job: # for mac
tags:
- mac
stage: build-mac
script:
- echo $CERTIFICATE_P12 | base64 --decode > cert.p12
- npm --force install
- npm run publish:mac
only:
- master
build-linux-job: # for linux
tags:
- ubuntu
stage: build-linux
script:
- export NVM_DIR="$HOME/.nvm"
- source $NVM_DIR/nvm.sh
- export PYENV_ROOT="$HOME/.pyenv"
- export PATH="$PYENV_ROOT/bin:$PATH"
- pyenv global 3.6.5
- source $NVM_DIR/nvm.sh
- source $NVM_DIR/bash_completion
- export PYTHON="/home/gitlab-runner/.pyenv/versions/3.6.5"
- export PATH="$PYTHON/bin:$PATH"
- npm --force install
- npm run publish:linux
only:
- master