64 lines
1.4 KiB
YAML
64 lines
1.4 KiB
YAML
image: node:14.15.5-stretch-slim
|
|
|
|
variables:
|
|
GIT_DEPTH: 0
|
|
GIT_STRATEGY: fetch
|
|
|
|
stages:
|
|
- build
|
|
- release
|
|
|
|
build:
|
|
stage: build
|
|
image: $CI_REGISTRY/$CI_PROJECT_ROOT_NAMESPACE/ci-tools/docker/ci-tools-docker-node-14:1.0.0
|
|
variables:
|
|
MODULE_DIRS: lang styles
|
|
MODULE_ZIP_DIRS: elements lang styles
|
|
extends: .build
|
|
|
|
.build:
|
|
stage: build
|
|
image: $CI_REGISTRY/$CI_PROJECT_ROOT_NAMESPACE/ci-tools/docker/ci-tools-docker-node-14:1.0.0
|
|
before_script:
|
|
- npm ci
|
|
- npm run build
|
|
script:
|
|
- cp -r $MODULE_DIRS dist/
|
|
- cp module.json dist
|
|
- cd dist
|
|
- zip $CI_PROJECT_NAME.zip -r *.* $MODULE_ZIP_DIRS -x ".*"
|
|
- echo ARTIFACT_LOC="${CI_JOB_URL}/artifacts/raw" > $CI_PROJECT_DIR/variables.env
|
|
artifacts:
|
|
name: $CI_COMMIT_REF_NAME
|
|
when: on_success
|
|
reports:
|
|
dotenv: variables.env
|
|
paths:
|
|
- dist/$CI_PROJECT_NAME.zip
|
|
- dist/module.json
|
|
expire_in: never
|
|
only:
|
|
- tags
|
|
- master
|
|
- main
|
|
|
|
release:
|
|
stage: release
|
|
image: registry.gitlab.com/gitlab-org/release-cli:latest
|
|
script:
|
|
- echo 'Running the release job.'
|
|
release:
|
|
tag_name: $CI_COMMIT_TAG
|
|
name: 'Release $CI_COMMIT_TAG'
|
|
description: './CHANGELOG.md'
|
|
assets:
|
|
links:
|
|
- name: 'module'
|
|
url: '$ARTIFACT_LOC/dist/$CI_PROJECT_NAME.zip'
|
|
link_type: package
|
|
- name: 'manifest'
|
|
url: '$ARTIFACT_LOC/dist/module.json'
|
|
link_type: package
|
|
only:
|
|
- tags
|