Skip to content
Snippets Groups Projects

Use common CI configuration scripts and configs

Merged Mateusz Tyszczak requested to merge tm-use-common-ci-conf-2 into main
2 files
+ 11
24
Compare changes
  • Side-by-side
  • Inline
Files
2
+ 13
46
@@ -11,7 +11,7 @@ variables:
include:
- project: 'hive/common-ci-configuration'
ref: 40451cfbe8c2995c66b2d4150dbb3c4d11fd8590
ref: 5806284d3c6feb2ce52bdb6077c20a9a578bb643
file:
- '/templates/npm_projects.gitlab-ci.yml'
@@ -25,6 +25,7 @@ lint:
script:
- npm run lint-ci
# Builds and supplements wiki URL so it is available in Wiki and published package README
build:
stage: build
extends: .npm_build_template
@@ -32,32 +33,25 @@ build:
DIST_DIR: "$CI_PROJECT_DIR/dist"
NPM_PACKAGE_SCOPE: "@hiveio"
NPM_PACKAGE_NAME: "workerbee"
artifacts:
paths:
- "${DIST_DIR}/*.tgz"
when: always
expire_in: 1 week
REPLACE_DOC_URL_ENV: "GEN_DOC_URL"
REPLACE_FILE_PATH: "${CI_PROJECT_DIR}/README.md"
needs:
- job: lint
# Generates documentation
generate_docs:
stage: build
extends: .npm_process_built_package_tarball
extends: .npm_based_job_base
variables:
DIST_DIR: "$CI_PROJECT_DIR/dist"
PACKAGE_TGZ_PATH: "${BUILT_PACKAGE_PATH}"
script:
- scripts/generate_api_docs.sh "${CI_PROJECT_URL}" "${CI_COMMIT_SHA}"
needs:
- job: build
artifacts: true
artifacts:
paths:
- "${DIST_DIR}/docs"
when: always
expire_in: 1 week
@@ -74,44 +68,16 @@ push_to_wiki:
extends: .npm_push_doc_template
stage: deploy
variables:
PACKAGE_TGZ_PATH: "${BUILT_PACKAGE_PATH}"
WIKI_PUSH_TOKEN: "$WIKI_PUSH_TOKEN"
DIST_DIR: "$CI_PROJECT_DIR/dist"
needs:
- job: generate_docs
artifacts: true
supplement_documentation_url:
extends: .npm_process_built_package_tarball
stage: deploy
needs:
- job: build
artifacts: true
- job: push_to_wiki
- job: generate_docs
artifacts: true
variables:
PACKAGE_TGZ_PATH: "${BUILT_PACKAGE_PATH}"
DIST_DIR: "$CI_PROJECT_DIR/dist"
script:
- |
scripts/generate_api_docs.sh "${CI_PROJECT_URL}" "${CI_COMMIT_SHA}" "${GEN_DOC_URL}" tmp_doc
npm pack --pack-destination "${DIST_DIR}" --json > "${DIST_DIR}/built_package_info.json" # repack to include updated README in final package
BUILT_PACKAGE_NAME=$(jq -r .[].filename "${DIST_DIR}/built_package_info.json")
echo BUILT_PACKAGE_PATH="${DIST_DIR}/${BUILT_PACKAGE_NAME}" > built_package_info.env
artifacts:
reports:
dotenv:
- "${SOURCE_DIR}/built_package_info.env" # contains path to produced tgz
paths:
- "${DIST_DIR}/*.tgz" # Built package
when: always
expire_in: 1 week
deploy_dev_package:
stage: deploy
extends: .npm_deploy_package_template
@@ -119,9 +85,9 @@ deploy_dev_package:
PACKAGE_TGZ_PATH: "${BUILT_PACKAGE_PATH}"
NPM_PACKAGE_SCOPE: "@hiveio"
needs:
- job: lint
- job: test
- job: supplement_documentation_url
- job: push_to_wiki
- job: build
artifacts: true
deploy_production_public_npm:
@@ -136,7 +102,8 @@ deploy_production_public_npm:
NPM_PROVENANCE_ENABLE: "0" # XXX: Temporarly disable as it is not working - we have to find a way to get it working
PACKAGE_TGZ_PATH: "${BUILT_PACKAGE_PATH}"
needs:
- job: lint
- job: deploy_dev_package
- job: test
- job: supplement_documentation_url
- job: push_to_wiki
- job: build
artifacts: true
Loading