Adding comments to structure GitLab-CI configuration
enabling tests
This commit is contained in:
171
.gitlab-ci.yml
171
.gitlab-ci.yml
@@ -2,8 +2,9 @@ stages:
|
|||||||
- build
|
- build
|
||||||
- test
|
- test
|
||||||
- deploy
|
- deploy
|
||||||
|
########################################################################################################################
|
||||||
|
####START#### PROJECT LEVEL VARIABLES ####START####
|
||||||
|
########################################################################################################################
|
||||||
variables:
|
variables:
|
||||||
VERSION: 0.4.0a
|
VERSION: 0.4.0a
|
||||||
VERUS_CLI_LINUX: Verus-CLI-Linux-v${VERSION}.tar.gz
|
VERUS_CLI_LINUX: Verus-CLI-Linux-v${VERSION}.tar.gz
|
||||||
@@ -14,27 +15,35 @@ variables:
|
|||||||
Pipeline Trigger: ${CI_PIPELINE_SOURCE}\n
|
Pipeline Trigger: ${CI_PIPELINE_SOURCE}\n
|
||||||
Commit: ${CI_COMMIT_SHA}$\n
|
Commit: ${CI_COMMIT_SHA}$\n
|
||||||
${CI_COMMIT_MESSAGE}"
|
${CI_COMMIT_MESSAGE}"
|
||||||
|
########################################################################################################################
|
||||||
|
####END#### PROJECT LEVEL VARIABLES ####END####
|
||||||
|
########################################################################################################################
|
||||||
|
########################################################################################################################
|
||||||
|
########################################################################################################################
|
||||||
|
####START#### Build Stage: compile and package komodo binaries for Verus CLI ####START#####
|
||||||
|
########################################################################################################################
|
||||||
|
########################################################################################################################
|
||||||
|
####START#### LINUX ####START####
|
||||||
|
########################################################################################################################
|
||||||
build:linux:
|
build:linux:
|
||||||
image: asherd/verus-builders:verus-ubuntu
|
image: asherd/verus-builders:verus-ubuntu
|
||||||
variables:
|
variables:
|
||||||
DOCKER_DRIVER: overlay2
|
DOCKER_DRIVER: overlay2
|
||||||
stage: build
|
stage: build
|
||||||
cache:
|
cache:
|
||||||
key: ${CI_JOB_NAME}
|
key: "${CI_JOB_NAME}${CI_COMMIT_REF_NAME}"
|
||||||
paths:
|
paths:
|
||||||
- depends/built
|
- depends/built
|
||||||
script:
|
script:
|
||||||
- zcutil/build.sh -j$(nproc)
|
- zcutil/build.sh -j$(nproc)
|
||||||
- mkdir verus-cli
|
- mkdir verus-cli
|
||||||
- cp src/komodod
|
- cp src/komodod
|
||||||
src/komodo-cli
|
src/komodo-cli
|
||||||
src/verus
|
src/verus
|
||||||
src/verusd
|
src/verusd
|
||||||
doc/man/verus-cli/linux/README.txt
|
doc/man/verus-cli/linux/README.txt
|
||||||
zcutil/fetch-params.sh
|
zcutil/fetch-params.sh
|
||||||
verus-cli
|
verus-cli
|
||||||
- mv verus-cli/fetch-params.sh verus-cli/fetch-params
|
- mv verus-cli/fetch-params.sh verus-cli/fetch-params
|
||||||
- chmod +x verus-cli/komodod
|
- chmod +x verus-cli/komodod
|
||||||
- chmod +x verus-cli/komodo-cli
|
- chmod +x verus-cli/komodo-cli
|
||||||
@@ -53,27 +62,30 @@ build:linux:
|
|||||||
- ${VERUS_CLI_LINUX}
|
- ${VERUS_CLI_LINUX}
|
||||||
- ${VERUS_CLI_LINUX}.md5
|
- ${VERUS_CLI_LINUX}.md5
|
||||||
expire_in: 1 week
|
expire_in: 1 week
|
||||||
|
########################################################################################################################
|
||||||
|
####END#### LINUX ####END####
|
||||||
|
########################################################################################################################
|
||||||
|
####START#### WINDOWS ####START####
|
||||||
|
########################################################################################################################
|
||||||
build:windows:
|
build:windows:
|
||||||
image: asherd/verus-builders:verus-windows
|
image: asherd/verus-builders:verus-windows
|
||||||
variables:
|
variables:
|
||||||
DOCKER_DRIVER: overlay2
|
DOCKER_DRIVER: overlay2
|
||||||
stage: build
|
stage: build
|
||||||
cache:
|
cache:
|
||||||
key: ${CI_JOB_NAME}
|
key: "${CI_JOB_NAME}${CI_COMMIT_REF_NAME}"
|
||||||
paths:
|
paths:
|
||||||
- depends/built
|
- depends/built
|
||||||
script:
|
script:
|
||||||
- zcutil/build-win.sh -j$(nproc)
|
- zcutil/build-win.sh -j$(nproc)
|
||||||
- mkdir verus-cli
|
- mkdir verus-cli
|
||||||
- cp src/komodod.exe
|
- cp src/komodod.exe
|
||||||
src/komodo-cli.exe
|
src/komodo-cli.exe
|
||||||
src/komodo-tx.exe
|
src/komodo-tx.exe
|
||||||
doc/man/verus-cli/windows/README.txt
|
doc/man/verus-cli/windows/README.txt
|
||||||
zcutil/fetch-params.bat
|
zcutil/fetch-params.bat
|
||||||
zcutil/wget64.exe
|
zcutil/wget64.exe
|
||||||
verus-cli
|
verus-cli
|
||||||
- zip -r ${VERUS_CLI_WINDOWS} verus-cli
|
- zip -r ${VERUS_CLI_WINDOWS} verus-cli
|
||||||
- md5sum ${VERUS_CLI_WINDOWS} > ${VERUS_CLI_WINDOWS}.md5
|
- md5sum ${VERUS_CLI_WINDOWS} > ${VERUS_CLI_WINDOWS}.md5
|
||||||
- curl -F file=@"${VERUS_CLI_WINDOWS}"
|
- curl -F file=@"${VERUS_CLI_WINDOWS}"
|
||||||
@@ -86,17 +98,19 @@ build:windows:
|
|||||||
- ${VERUS_CLI_WINDOWS}
|
- ${VERUS_CLI_WINDOWS}
|
||||||
- ${VERUS_CLI_WINDOWS}.md5
|
- ${VERUS_CLI_WINDOWS}.md5
|
||||||
expire_in: 1 week
|
expire_in: 1 week
|
||||||
|
########################################################################################################################
|
||||||
|
####END#### WINDOWS ####END####
|
||||||
|
########################################################################################################################
|
||||||
|
####START#### MACOS ####START####
|
||||||
|
########################################################################################################################
|
||||||
build:mac:
|
build:mac:
|
||||||
stage: build
|
stage: build
|
||||||
tags: ["High Sierra"]
|
tags: ["High Sierra"]
|
||||||
cache:
|
cache:
|
||||||
key: ${CI_JOB_NAME}
|
key: "${CI_JOB_NAME}${CI_COMMIT_REF_NAME}"
|
||||||
paths:
|
paths:
|
||||||
- depends/built
|
- depends/built
|
||||||
script:
|
script:
|
||||||
- brew bundle
|
|
||||||
- zcutil/build-mac.sh -j$(sysctl -n hw.physicalcpu)
|
- zcutil/build-mac.sh -j$(sysctl -n hw.physicalcpu)
|
||||||
- ./makeReleaseMac.sh
|
- ./makeReleaseMac.sh
|
||||||
- tar -czvf ${VERUS_CLI_MACOS} verus-cli
|
- tar -czvf ${VERUS_CLI_MACOS} verus-cli
|
||||||
@@ -111,9 +125,22 @@ build:mac:
|
|||||||
- ${VERUS_CLI_MACOS}
|
- ${VERUS_CLI_MACOS}
|
||||||
- ${VERUS_CLI_MACOS}.md5
|
- ${VERUS_CLI_MACOS}.md5
|
||||||
expire_in: 1 week
|
expire_in: 1 week
|
||||||
|
########################################################################################################################
|
||||||
|
####END#### MACOS ####END####
|
||||||
.code_quality:
|
########################################################################################################################
|
||||||
|
########################################################################################################################
|
||||||
|
####END#### Build Stage ####END####
|
||||||
|
########################################################################################################################
|
||||||
|
########################################################################################################################
|
||||||
|
########################################################################################################################
|
||||||
|
########################################################################################################################
|
||||||
|
####START#### Test stage: Test functionality of komodo binaries. Produce code quality and SAST reports. ####START####
|
||||||
|
########################################################################################################################
|
||||||
|
########################################################################################################################
|
||||||
|
########################################################################################################################
|
||||||
|
####START#### Code Quality ####START####
|
||||||
|
########################################################################################################################
|
||||||
|
code_quality:
|
||||||
image: docker:stable
|
image: docker:stable
|
||||||
variables:
|
variables:
|
||||||
DOCKER_DRIVER: overlay2
|
DOCKER_DRIVER: overlay2
|
||||||
@@ -129,9 +156,13 @@ build:mac:
|
|||||||
"registry.gitlab.com/gitlab-org/security-products/codequality:$SP_VERSION" /code
|
"registry.gitlab.com/gitlab-org/security-products/codequality:$SP_VERSION" /code
|
||||||
artifacts:
|
artifacts:
|
||||||
paths: [gl-code-quality-report.json]
|
paths: [gl-code-quality-report.json]
|
||||||
|
########################################################################################################################
|
||||||
|
####END#### Code Quality ####END####
|
||||||
.sast:
|
########################################################################################################################
|
||||||
|
########################################################################################################################
|
||||||
|
####START#### Static Application Security Tests ####START####
|
||||||
|
########################################################################################################################
|
||||||
|
sast:
|
||||||
image: docker:stable
|
image: docker:stable
|
||||||
variables:
|
variables:
|
||||||
DOCKER_DRIVER: overlay2
|
DOCKER_DRIVER: overlay2
|
||||||
@@ -147,31 +178,19 @@ build:mac:
|
|||||||
"registry.gitlab.com/gitlab-org/security-products/sast:$SP_VERSION" /app/bin/run /code
|
"registry.gitlab.com/gitlab-org/security-products/sast:$SP_VERSION" /app/bin/run /code
|
||||||
artifacts:
|
artifacts:
|
||||||
paths: [gl-sast-report.json]
|
paths: [gl-sast-report.json]
|
||||||
|
########################################################################################################################
|
||||||
|
####END#### Static Application Security Tests ####END####
|
||||||
.license_management:
|
########################################################################################################################
|
||||||
image: docker:stable
|
########################################################################################################################
|
||||||
variables:
|
####START#### Run Verus CLI on Ubuntu Xenial (16.04) ####START####
|
||||||
DOCKER_DRIVER: overlay2
|
########################################################################################################################
|
||||||
allow_failure: true
|
ubuntu:xenial:
|
||||||
services:
|
|
||||||
- docker:stable-dind
|
|
||||||
script:
|
|
||||||
- export LICENSE_MANAGEMENT_VERSION=$(echo "$CI_SERVER_VERSION" | sed 's/^\([0-9]*\)\.\([0-9]*\).*/\1-\2-stable/')
|
|
||||||
- docker run
|
|
||||||
--volume "$PWD:/code"
|
|
||||||
"registry.gitlab.com/gitlab-org/security-products/license-management:$LICENSE_MANAGEMENT_VERSION" analyze /code
|
|
||||||
artifacts:
|
|
||||||
paths: [gl-license-management-report.json]
|
|
||||||
|
|
||||||
|
|
||||||
.ubuntu:xenial:
|
|
||||||
image: ubuntu:xenial
|
image: ubuntu:xenial
|
||||||
variables:
|
variables:
|
||||||
DOCKER_DRIVER: overlay2
|
DOCKER_DRIVER: overlay2
|
||||||
stage: test
|
stage: test
|
||||||
before_script:
|
before_script:
|
||||||
- apt update && apt install -y wget libgomp1 libcurl3 python
|
- apt update && apt install -y wget libgomp1 libcurl4-gnutls-dev python
|
||||||
- rm -rf /root/.komodo || true
|
- rm -rf /root/.komodo || true
|
||||||
- mv .komodo /root/ || true
|
- mv .komodo /root/ || true
|
||||||
script:
|
script:
|
||||||
@@ -188,15 +207,19 @@ build:mac:
|
|||||||
expire_in: 1 week
|
expire_in: 1 week
|
||||||
dependencies:
|
dependencies:
|
||||||
- build:linux
|
- build:linux
|
||||||
|
########################################################################################################################
|
||||||
|
####END#### Run Verus CLI on Ubuntu Xenial (16.04) ####END####
|
||||||
.ubuntu:bionic:
|
########################################################################################################################
|
||||||
|
########################################################################################################################
|
||||||
|
####START#### Run Verus CLI on Ubuntu Bionic (18.04) ####START####
|
||||||
|
########################################################################################################################
|
||||||
|
ubuntu:bionic:
|
||||||
image: ubuntu:bionic
|
image: ubuntu:bionic
|
||||||
variables:
|
variables:
|
||||||
DOCKER_DRIVER: overlay2
|
DOCKER_DRIVER: overlay2
|
||||||
stage: test
|
stage: test
|
||||||
before_script:
|
before_script:
|
||||||
- apt update && apt install -y wget libgomp1 libcurl3 python
|
- apt update && apt install -y wget libgomp1 libcurl4-gnutls-dev python
|
||||||
- rm -rf /root/.komodo || true
|
- rm -rf /root/.komodo || true
|
||||||
- mv .komodo /root/ || true
|
- mv .komodo /root/ || true
|
||||||
script:
|
script:
|
||||||
@@ -213,9 +236,13 @@ build:mac:
|
|||||||
expire_in: 1 week
|
expire_in: 1 week
|
||||||
dependencies:
|
dependencies:
|
||||||
- build:linux
|
- build:linux
|
||||||
|
########################################################################################################################
|
||||||
|
####END#### Run Verus CLI on Ubuntu Bionic (18.04) ####END####
|
||||||
.macos:sierra: # fetch-params.sh needs to be fixed for MacOS
|
########################################################################################################################
|
||||||
|
########################################################################################################################
|
||||||
|
####START#### Run Verus CLI on MacOS Sierra (10.12.6) ####START####
|
||||||
|
########################################################################################################################
|
||||||
|
.macos:sierra:
|
||||||
stage: test
|
stage: test
|
||||||
tags: ["Sierra"]
|
tags: ["Sierra"]
|
||||||
script:
|
script:
|
||||||
@@ -227,8 +254,12 @@ build:mac:
|
|||||||
expire_in: 1 week
|
expire_in: 1 week
|
||||||
dependencies:
|
dependencies:
|
||||||
- build:mac
|
- build:mac
|
||||||
|
########################################################################################################################
|
||||||
|
####END#### Run Verus CLI on MacOS Sierra (10.12.6) ####END####
|
||||||
|
########################################################################################################################
|
||||||
|
########################################################################################################################
|
||||||
|
####START#### Run Verus CLI on MacOS High Sierra (10.12.6) ####START####
|
||||||
|
########################################################################################################################
|
||||||
.macos:high-sierra:
|
.macos:high-sierra:
|
||||||
stage: test
|
stage: test
|
||||||
tags: ["High Sierra"]
|
tags: ["High Sierra"]
|
||||||
@@ -241,8 +272,12 @@ build:mac:
|
|||||||
expire_in: 1 week
|
expire_in: 1 week
|
||||||
dependencies:
|
dependencies:
|
||||||
- build:mac
|
- build:mac
|
||||||
|
########################################################################################################################
|
||||||
|
####START#### Run Verus CLI on MacOS High Sierra (10.12.6) ####START####
|
||||||
|
########################################################################################################################
|
||||||
|
########################################################################################################################
|
||||||
|
####START#### Run Verus CLI on Windows 10 ####START####
|
||||||
|
########################################################################################################################
|
||||||
.windows:10:
|
.windows:10:
|
||||||
stage: test
|
stage: test
|
||||||
tags: ["Windows 10"]
|
tags: ["Windows 10"]
|
||||||
@@ -255,8 +290,15 @@ build:mac:
|
|||||||
expire_in: 1 week
|
expire_in: 1 week
|
||||||
dependencies:
|
dependencies:
|
||||||
- build:windows
|
- build:windows
|
||||||
|
########################################################################################################################
|
||||||
|
####END#### Run Verus CLI on Windows 10 ####END####
|
||||||
|
########################################################################################################################
|
||||||
|
########################################################################################################################
|
||||||
|
####END#### Test Stage ####END####
|
||||||
|
########################################################################################################################
|
||||||
|
########################################################################################################################
|
||||||
|
####START#### Deploy ####START####
|
||||||
|
########################################################################################################################
|
||||||
deploy:
|
deploy:
|
||||||
stage: deploy
|
stage: deploy
|
||||||
image: google/cloud-sdk:alpine
|
image: google/cloud-sdk:alpine
|
||||||
@@ -283,3 +325,6 @@ deploy:
|
|||||||
-F variables\[VERUS_CLI_WINDOWS\]="${VERUS_CLI_WINDOWS}"
|
-F variables\[VERUS_CLI_WINDOWS\]="${VERUS_CLI_WINDOWS}"
|
||||||
-F variables\[VERUS_CLI_MACOS\]="${VERUS_CLI_MACOS}"
|
-F variables\[VERUS_CLI_MACOS\]="${VERUS_CLI_MACOS}"
|
||||||
"https://gitlab.com/api/v4/projects/8018592/trigger/pipeline"
|
"https://gitlab.com/api/v4/projects/8018592/trigger/pipeline"
|
||||||
|
########################################################################################################################
|
||||||
|
####END#### Deploy ####END####
|
||||||
|
########################################################################################################################
|
||||||
|
|||||||
Reference in New Issue
Block a user