From fb892ef4014c8f114a9995816bc8ef25a87b0d2b 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 | 10 ++++++++++ .releaserc.json | 25 +++++++++++++++++++++++++ package-semantic-release.json | 9 +++++++++ 3 files changed, 44 insertions(+) create mode 100644 .releaserc.json create mode 100644 package-semantic-release.json diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 4868ca4a1..8068f02bb 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -3,7 +3,17 @@ variables: IMAGE_TAG_HELM_FILE: "helm/staging/graphpolaris-frontend/values.yaml" IMAGE_TAG_HELM_FILE_VARIABLE: "image.tag" +stages: + - tag-release + - container-image + - deploy-staging + include: + # Release needs to happen before build-and-push, because build-and-push + # searches for a tag that contains the current commit SHA. + - project: 'graphpolaris/pipelines' + ref: main + file: 'semantic-release.yml' - project: 'graphpolaris/pipelines' ref: main file: 'docker-build-push.yml' diff --git a/.releaserc.json b/.releaserc.json new file mode 100644 index 000000000..18aa47a04 --- /dev/null +++ b/.releaserc.json @@ -0,0 +1,25 @@ +{ + "branches": [ + "master", + { + "name": "beta", + "prerelease": true + }, + { + "name": "alpha", + "prerelease": true + } + ], + "dryRun": false, + "plugins": [ + "@semantic-release/commit-analyzer", + "@semantic-release/release-notes-generator", + [ + "@semantic-release/exec", + { + "successCmd": "echo ${nextRelease.version} > version.txt" + } + ], + "@semantic-release/gitlab" + ] +} diff --git a/package-semantic-release.json b/package-semantic-release.json new file mode 100644 index 000000000..8348eac1e --- /dev/null +++ b/package-semantic-release.json @@ -0,0 +1,9 @@ +{ + "dependencies": { + "semantic-release": "^21.0.0", + "@semantic-release/exec": "^6.0.0", + "@semantic-release/commit-analyzer": "^10.0.0", + "@semantic-release/gitlab": "^12.0.0", + "@semantic-release/release-notes-generator": "^11.0.0" + } +} -- GitLab