Packages: update versioning and release process (#18195)

This commit is contained in:
Dominik Prokop
2019-09-12 08:00:31 +02:00
committed by GitHub
parent fa007423e3
commit c2dea633e6
14 changed files with 140 additions and 22 deletions

View File

@@ -0,0 +1,40 @@
#!/usr/bin/env bash
GRAFANA_TAG=${1:-}
RELEASE_CHANNEL="latest"
if echo "$GRAFANA_TAG" | grep -q "^v"; then
_grafana_version=$(echo "${GRAFANA_TAG}" | cut -d "v" -f 2)
else
echo "Provided tag is not a version tag, skipping packages release..."
exit
fi
if grep -q "beta" <<< "$GRAFANA_TAG"; then
RELEASE_CHANNEL="next"
fi
echo "$_grafana_version"
# Get current version from lerna.json
# Since this happens on tagged branch, the lerna.json version and package.json file SHOULD be updated already
# as specified in release guideline
PACKAGE_VERSION=$(grep '"version"' lerna.json | cut -d '"' -f 4)
echo "Releasing grafana packages @ ${PACKAGE_VERSION} under ${RELEASE_CHANNEL} channel"
if [ $RELEASE_CHANNEL == "latest" ]; then
SCRIPT="publishLatest"
elif [ $RELEASE_CHANNEL == "next" ]; then
SCRIPT="publishNext"
else
echo "Unknown channel, skipping packages release"
exit
fi
echo $'\nBuilding packages'
yarn packages:build
echo $'\nPublishing packages'
yarn packages:${SCRIPT}

View File

@@ -16,9 +16,13 @@ function unpublish_previous_canary () {
for PACKAGE in ui toolkit data runtime
do
# dist-tag next to be changed to canary when https://github.com/grafana/grafana/pull/18195 is merged
CURRENT_CANARY=$(npm view @grafana/${PACKAGE} dist-tags.next)
echo "Unpublish @grafana/${PACKAGE}@${CURRENT_CANARY}"
npm unpublish "@grafana/${PACKAGE}@${CURRENT_CANARY}"
CURRENT_CANARY=$(npm view @grafana/${PACKAGE} dist-tags.canary)
if [ -z "${CURRENT_CANARY}" ]; then
echo "@grafana/${PACKAGE} - Nothing to unpublish"
else
echo "Unpublish @grafana/${PACKAGE}@${CURRENT_CANARY}"
npm unpublish "@grafana/${PACKAGE}@${CURRENT_CANARY}"
fi
done
}
@@ -57,6 +61,6 @@ else
unpublish_previous_canary
echo $'\nPublishing packages'
yarn packages:publishNext
yarn packages:publishCanary
fi