From 04348702a9cdc7b642694842d5e1e6f566f94a61 Mon Sep 17 00:00:00 2001 From: Alen Zubic <alen.zubic@relaymonkey.com> Date: Thu, 31 Aug 2023 23:18:31 +0200 Subject: [PATCH] feat: Add semantic release --- .gitlab-ci.yml | 37 +++++++++++++++++++++++++++++++---- .releaserc.json | 28 ++++++++++++++++++++++++++ package-semantic-release.json | 7 +++++++ 3 files changed, 68 insertions(+), 4 deletions(-) create mode 100644 .releaserc.json create mode 100644 package-semantic-release.json diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 4868ca4a1..bb6d93250 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -3,7 +3,36 @@ variables: IMAGE_TAG_HELM_FILE: "helm/staging/graphpolaris-frontend/values.yaml" IMAGE_TAG_HELM_FILE_VARIABLE: "image.tag" -include: - - project: 'graphpolaris/pipelines' - ref: main - file: 'docker-build-push.yml' +#include: +# - project: 'graphpolaris/pipelines' +# ref: main +# file: 'docker-build-push.yml' + +stages: + - tag-release + +release: + image: node:20-bookworm-slim + stage: tag-release + tags: + - gp-runners + before_script: + - apt-get update && apt-get install -y --no-install-recommends git-core ca-certificates + - mv package.json package.json.tmp | true + - mv package-semantic-release.json package.json + - npm install +# - npm install -g semantic-release@21.1.1 @semantic-release/gitlab-config@12.0.1 @semantic-release/exec@6.0.3 + - mv package.json package-semantic-release.json + - mv package.json.tmp package.json | true + script: + # Configuration is in .releaserc.json + - npx semantic-release +# - semantic-release + artifacts: + paths: + - version.txt + rules: + # Run if .releaserc.json exists + - exists: + - .releaserc.json +# - package-semantic-release.json diff --git a/.releaserc.json b/.releaserc.json new file mode 100644 index 000000000..d8cc936ea --- /dev/null +++ b/.releaserc.json @@ -0,0 +1,28 @@ +{ + "branches": [ + "master", + { + "name": "beta", + "prerelease": true + }, + { + "name": "alpha", + "prerelease": true + }, + "feat/add-semantic-release" + ], + "extends": [ + "@semantic-release/gitlab-config" + ], + "dryRun": true, + "plugins": [ + "@semantic-release/commit-analyzer", + "@semantic-release/release-notes-generator", + [ + "@semantic-release/exec", + { + "successCmd": "echo ${nextRelease.version} > version.txt" + } + ] + ] +} diff --git a/package-semantic-release.json b/package-semantic-release.json new file mode 100644 index 000000000..8970f6e9c --- /dev/null +++ b/package-semantic-release.json @@ -0,0 +1,7 @@ +{ + "dependencies": { + "semantic-release": "^21.0.0", + "@semantic-release/gitlab-config": "^12.0.0", + "@semantic-release/exec": "^6.0.0" + } +} -- GitLab