]>
Commit | Line | Data |
---|---|---|
d7fbec21 | 1 | stages: |
46d858be AD |
2 | - build |
3 | - test | |
4 | - deploy | |
586f0bd4 | 5 | |
fd4f2876 | 6 | variables: |
81b6f9a5 AD |
7 | VERSION: 0.3.13 |
8 | VERUS_CLI_LINUX: "verus-cli-linux-v${VERSION}-beta.tar.gz" | |
9 | VERUS_CLI_WINDOWS: "verus-cli-windows-v${VERSION}-beta.zip" | |
10 | VERUS_CLI_MACOS: "verus-cli-mac-v${VERSION}-beta.tar.gz" | |
11 | POST_COMMENT: "Branch: ${CI_COMMIT_REF_NAME} Commit: ${CI_COMMIT_SHA}" | |
46d858be AD |
12 | |
13 | build:linux: | |
d7fbec21 | 14 | image: asherd/veruscoin-cross-compiler:linux |
d7fbec21 AD |
15 | variables: |
16 | DOCKER_DRIVER: overlay2 | |
17 | stage: build | |
e7f4832f | 18 | before_script: # Setup Cache |
eddc1d45 AD |
19 | - rm -rf /root/.ccache || true |
20 | - mv .ccache /root/ || true | |
9892a176 | 21 | script: |
eddc1d45 AD |
22 | - zcutil/build.sh -j4 |
23 | - cp src/komodod src/komodo-cli kmd/linux/verus-cli | |
eddc1d45 | 24 | - chmod +x kmd/linux/verus-cli/komodod |
81b6f9a5 AD |
25 | kmd/linux/verus-cli/komodo-cli |
26 | kmd/linux/verus-cli/verus | |
27 | kmd/linux/verus-cli/verusd | |
28 | kmd/linux/verus-cli/fetch-params | |
eddc1d45 | 29 | - dos2unix kmd/linux/verus-cli/README.txt |
46d858be | 30 | - tar -C kmd/linux/ -czvf $VERUS_CLI_LINUX verus-cli ./ |
e7f4832f | 31 | after_script: |
eddc1d45 | 32 | - mv /root/.ccache ./ || true |
e7f4832f AD |
33 | cache: |
34 | key: ${CI_JOB_NAME} | |
35 | paths: | |
36 | - depends/built | |
37 | - .ccache | |
d7fbec21 AD |
38 | artifacts: |
39 | paths: | |
46d858be | 40 | - $VERUS_CLI_LINUX |
d7fbec21 AD |
41 | expire_in: 1 week |
42 | ||
6116053b | 43 | |
9892a176 | 44 | build:windows: |
d7fbec21 | 45 | image: asherd/veruscoin-cross-compiler:latest |
d7fbec21 AD |
46 | variables: |
47 | DOCKER_DRIVER: overlay2 | |
48 | stage: build | |
49 | cache: | |
50 | key: ${CI_JOB_NAME} | |
51 | paths: | |
52 | - depends/built | |
9892a176 | 53 | - .ccache |
d7fbec21 | 54 | - .cargo |
d7fbec21 | 55 | before_script: |
46d858be AD |
56 | - mkdir .ccache || echo ccache exists |
57 | - ln -s $PWD/.ccache /root/.ccache | |
58 | - mkdir .zcash-params || echo zcash-params exists | |
59 | - mkdir .cargo || echo .cargo exists | |
60 | - ln -s $PWD/.cargo /root/.cargo | |
9892a176 | 61 | script: |
81b6f9a5 | 62 | - zcutil/build-win.sh -j4 |
46d858be AD |
63 | - cp src/komodod.exe src/komodo-cli.exe src/komodo-tx.exe kmd/windows/verus-cli |
64 | - cd kmd/windows/ | |
65 | - zip -r $VERUS_CLI_WINDOWS verus-cli | |
66 | - mv $VERUS_CLI_WINDOWS ../.. | |
d7fbec21 | 67 | artifacts: |
81b6f9a5 | 68 | paths: [$VERUS_CLI_WINDOWS] |
d7fbec21 AD |
69 | expire_in: 1 week |
70 | ||
6116053b | 71 | |
46d858be | 72 | build:mac: |
d7fbec21 | 73 | stage: build |
e7f4832f | 74 | tags: ["High Sierra"] |
d7fbec21 AD |
75 | cache: |
76 | key: ${CI_JOB_NAME} | |
77 | paths: | |
78 | - depends/built | |
9892a176 | 79 | script: |
46d858be AD |
80 | - brew bundle |
81 | - zcutil/build-mac.sh | xcpretty | |
81b6f9a5 | 82 | - ./makeReleaseMac.sh -j6 |
46d858be AD |
83 | - dos2unix kmd/mac/verus-cli/README.txt |
84 | - tar -C kmd/mac/ -czvf $VERUS_CLI_MACOS verus-cli ./ | |
d7fbec21 | 85 | artifacts: |
81b6f9a5 | 86 | paths: [$VERUS_CLI_MACOS] |
d7fbec21 | 87 | expire_in: 1 week |
9892a176 | 88 | |
6116053b | 89 | |
81b6f9a5 | 90 | code_quality: |
9892a176 AD |
91 | image: docker:stable |
92 | variables: | |
93 | DOCKER_DRIVER: overlay2 | |
94 | allow_failure: true | |
95 | services: | |
46d858be | 96 | - docker:stable-dind |
9892a176 | 97 | script: |
46d858be AD |
98 | - export SP_VERSION=$(echo "$CI_SERVER_VERSION" | sed 's/^\([0-9]*\)\.\([0-9]*\).*/\1-\2-stable/') |
99 | - docker run | |
100 | --env SOURCE_CODE="$PWD" | |
101 | --volume "$PWD":/code | |
102 | --volume /var/run/docker.sock:/var/run/docker.sock | |
103 | "registry.gitlab.com/gitlab-org/security-products/codequality:$SP_VERSION" /code | |
9892a176 AD |
104 | artifacts: |
105 | paths: [gl-code-quality-report.json] | |
106 | ||
6116053b | 107 | |
81b6f9a5 | 108 | sast: |
9892a176 AD |
109 | image: docker:stable |
110 | variables: | |
111 | DOCKER_DRIVER: overlay2 | |
112 | allow_failure: true | |
113 | services: | |
46d858be | 114 | - docker:stable-dind |
9892a176 | 115 | script: |
46d858be AD |
116 | - export SP_VERSION=$(echo "$CI_SERVER_VERSION" | sed 's/^\([0-9]*\)\.\([0-9]*\).*/\1-\2-stable/') |
117 | - docker run | |
118 | --env SAST_CONFIDENCE_LEVEL="${SAST_CONFIDENCE_LEVEL:-3}" | |
119 | --volume "$PWD:/code" | |
120 | --volume /var/run/docker.sock:/var/run/docker.sock | |
121 | "registry.gitlab.com/gitlab-org/security-products/sast:$SP_VERSION" /app/bin/run /code | |
9892a176 AD |
122 | artifacts: |
123 | paths: [gl-sast-report.json] | |
46d858be | 124 | |
e96d89da | 125 | |
e7f4832f | 126 | |
81b6f9a5 | 127 | license_management: |
e7f4832f AD |
128 | image: docker:stable |
129 | variables: | |
130 | DOCKER_DRIVER: overlay2 | |
131 | allow_failure: true | |
132 | services: | |
46d858be | 133 | - docker:stable-dind |
e7f4832f | 134 | script: |
46d858be AD |
135 | - export LICENSE_MANAGEMENT_VERSION=$(echo "$CI_SERVER_VERSION" | sed 's/^\([0-9]*\)\.\([0-9]*\).*/\1-\2-stable/') |
136 | - docker run | |
137 | --volume "$PWD:/code" | |
138 | "registry.gitlab.com/gitlab-org/security-products/license-management:$LICENSE_MANAGEMENT_VERSION" analyze /code | |
e7f4832f AD |
139 | artifacts: |
140 | paths: [gl-license-management-report.json] | |
141 | ||
5f48c779 | 142 | |
81b6f9a5 | 143 | ubuntu:xenial: |
e7f4832f AD |
144 | image: ubuntu:xenial |
145 | variables: | |
146 | DOCKER_DRIVER: overlay2 | |
147 | stage: test | |
148 | before_script: | |
46d858be | 149 | - apt update && apt install -y wget g++-multilib libcurl3 python |
81b6f9a5 AD |
150 | - rm -rf /root/.komodo || true |
151 | - mv .komodo /root/ || true | |
e7f4832f | 152 | script: |
46d858be AD |
153 | - tar -xzvf $VERUS_CLI_LINUX |
154 | - export PATH=$PATH:$CI_PROJECT_DIR/verus-cli | |
155 | - python qa/verus-cli-tests/verus-cli-tester.py | |
81b6f9a5 AD |
156 | after_script: |
157 | - mv /root/.komodo ./ || true | |
158 | cache: | |
159 | key: ${CI_JOB_NAME} | |
160 | paths: [.komodo] | |
e7f4832f AD |
161 | artifacts: |
162 | paths: [log.txt] | |
163 | expire_in: 1 week | |
164 | dependencies: | |
46d858be | 165 | - build:linux |
e7f4832f AD |
166 | |
167 | ||
81b6f9a5 | 168 | ubuntu:bionic: |
e7f4832f AD |
169 | image: ubuntu:bionic |
170 | variables: | |
171 | DOCKER_DRIVER: overlay2 | |
172 | stage: test | |
173 | before_script: | |
46d858be | 174 | - apt update && apt install -y wget g++-multilib libcurl3 python |
81b6f9a5 AD |
175 | - rm -rf /root/.komodo || true |
176 | - mv .komodo /root/ || true | |
e7f4832f | 177 | script: |
46d858be AD |
178 | - tar -xzvf $VERUS_CLI_LINUX |
179 | - export PATH=$PATH:$CI_PROJECT_DIR/verus-cli | |
180 | - python qa/verus-cli-tests/verus-cli-tester.py | |
81b6f9a5 AD |
181 | after_script: |
182 | - mv /root/.komodo ./ || true | |
183 | cache: | |
184 | key: ${CI_JOB_NAME} | |
185 | paths: [.komodo] | |
e7f4832f AD |
186 | artifacts: |
187 | paths: [log.txt] | |
188 | expire_in: 1 week | |
189 | dependencies: | |
46d858be | 190 | - build:linux |
e7f4832f AD |
191 | |
192 | ||
66e6ec96 | 193 | .osx:sierra: # fetch-params.sh needs to be fixed for MacOS |
e7f4832f AD |
194 | stage: test |
195 | tags: ["Sierra"] | |
196 | script: | |
46d858be AD |
197 | - tar -xzvf $VERUS_CLI_MACOS |
198 | - export PATH=$PATH:$CI_PROJECT_DIR/verus-cli | |
199 | - python qa/verus-cli-tests/verus-cli-tester.py | |
e7f4832f AD |
200 | artifacts: |
201 | paths: [log.txt] | |
202 | expire_in: 1 week | |
203 | dependencies: | |
46d858be | 204 | - build:mac |
e7f4832f AD |
205 | |
206 | ||
66e6ec96 | 207 | .osx:high-sierra: # fetch-params.sh needs to be fixed for MacOS |
e7f4832f AD |
208 | stage: test |
209 | tags: ["High Sierra"] | |
210 | script: | |
46d858be AD |
211 | - tar -xzvf $VERUS_CLI_MACOS |
212 | - export PATH=$PATH:$CI_PROJECT_DIR/verus-cli | |
213 | - python qa/verus-cli-tests/verus-cli-tester.py | |
e7f4832f AD |
214 | artifacts: |
215 | paths: [log.txt] | |
216 | expire_in: 1 week | |
217 | dependencies: | |
46d858be | 218 | - build:mac |
e7f4832f AD |
219 | |
220 | ||
4474ce24 | 221 | .windows:10: |
e7f4832f AD |
222 | stage: test |
223 | tags: ["Windows 10"] | |
224 | script: | |
46d858be AD |
225 | - PowerShell Expand-Archive -Path %VERUS_CLI_WINDOWS% -DestinationPath %CI_PROJECT_DIR% |
226 | - set PATH=%PATH%;%CI_PROJECT_DIR%\verus-cli | |
227 | - qa\verus-cli-tests\verus-cli-tester.py | |
e7f4832f AD |
228 | artifacts: |
229 | paths: [log.txt] | |
230 | expire_in: 1 week | |
231 | dependencies: | |
46d858be | 232 | - build:windows |
586f0bd4 | 233 | |
e7f4832f | 234 | |
e96d89da AD |
235 | deploy: |
236 | stage: deploy | |
237 | image: google/cloud-sdk:alpine | |
238 | variables: | |
239 | DOCKER_DRIVER: overlay2 | |
240 | dependencies: | |
46d858be AD |
241 | - build:linux |
242 | - build:windows | |
243 | - build:mac | |
e96d89da | 244 | script: |
81b6f9a5 AD |
245 | - curl -F file=@"$VERUS_CLI_LINUX" |
246 | -F channels="$CLI_POST_CHANNEL" | |
247 | -F initial_comment="${POST_COMMENT}" | |
248 | -H "${SLACK_BOT_AUTH}" | |
249 | "https://slack.com/api/files.upload" | |
250 | - curl -F file=@"$VERUS_CLI_WINDOWS" | |
251 | -F channels="$CLI_POST_CHANNEL" | |
252 | -F initial_comment="${POST_COMMENT}" | |
253 | -H "${SLACK_BOT_AUTH}" | |
254 | "https://slack.com/api/files.upload" | |
255 | - curl -F file=@"$VERUS_CLI_MACOS" | |
256 | -F channels="$CLI_POST_CHANNEL" | |
257 | -F initial_comment="${POST_COMMENT}" | |
258 | -H "${SLACK_BOT_AUTH}" | |
259 | "https://slack.com/api/files.upload" | |
46d858be AD |
260 | - mkdir Windows |
261 | - mkdir Linux | |
262 | - mkdir MacOS | |
81b6f9a5 AD |
263 | - mv $VERUS_CLI_WINDOWS Windows |
264 | - mv $VERUS_CLI_LINUX Linux | |
265 | - mv $VERUS_CLI_MACOS MacOS | |
46d858be | 266 | - echo "$AUTH_KEY" > AUTH_KEY.json |
81b6f9a5 AD |
267 | - gcloud auth activate-service-account |
268 | --key-file AUTH_KEY.json | |
46d858be | 269 | - gsutil cp -r Windows Linux MacOS $STAGING/VerusCoin/$CI_COMMIT_REF_NAME/ |
81b6f9a5 AD |
270 | - curl -X POST |
271 | -F token="$CI_JOB_TOKEN" | |
272 | -F ref=master | |
273 | -F variables\[CLI_VERSION\]="$VERSION" | |
274 | -F variables\[AGAMA_VERSION\]="$VERSION" | |
275 | "https://gitlab.com/api/v4/projects/8018638/trigger/pipeline" | |
6116053b | 276 |