From 636f03257ffaa0ef17360d2b6b657e283e105ec4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ivar=20Conradi=20=C3=98sthus?= Date: Wed, 20 Apr 2022 23:38:55 +0200 Subject: [PATCH] fix: update npm publish script to select correct dist-tag --- .github/workflows/release.yaml | 3 ++- scripts/npm-tag.js | 18 ++++++++++++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 scripts/npm-tag.js diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 4fc1af55c8..bdf29efa5a 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -23,7 +23,8 @@ jobs: - run: | yarn install --frozen-lockfile - run: | - TAG=$(echo $GITHUB_REF_NAME | grep -oP '^v\d+\.\d+\.\d+-?\K(\w+)?') + LATEST=$(npm show unleash-server version) + TAG=${node scripts/npm-tag.js $LATEST} npm publish --tag ${TAG:-latest} env: NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} diff --git a/scripts/npm-tag.js b/scripts/npm-tag.js new file mode 100644 index 0000000000..a3bf86dd9c --- /dev/null +++ b/scripts/npm-tag.js @@ -0,0 +1,18 @@ +const semver = require('semver'); + +const latestUnleashVersion = process.argv[2]; + +const version = require('../package.json').version; + +function isPrerelease(version) { + const arr = semver.prerelease(version); + return arr && arr.length > 0; +} + +if(isPrerelease(version)){ + console.log('beta') +}else if(semver.gt(version, latestUnleashVersion)) { + console.log('latest'); +} else { + console.log('previous'); +} \ No newline at end of file