release-packages.sh 1000 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. #!/usr/bin/env bash
  2. GRAFANA_TAG=${1:-}
  3. RELEASE_CHANNEL="latest"
  4. if echo "$GRAFANA_TAG" | grep -q "^v"; then
  5. _grafana_version=$(echo "${GRAFANA_TAG}" | cut -d "v" -f 2)
  6. else
  7. echo "Provided tag is not a version tag, skipping packages release..."
  8. exit
  9. fi
  10. if grep -q "beta" <<< "$GRAFANA_TAG"; then
  11. RELEASE_CHANNEL="next"
  12. fi
  13. echo "$_grafana_version"
  14. # Get current version from lerna.json
  15. # Since this happens on tagged branch, the lerna.json version and package.json file SHOULD be updated already
  16. # as specified in release guideline
  17. PACKAGE_VERSION=$(grep '"version"' lerna.json | cut -d '"' -f 4)
  18. echo "Releasing grafana packages @ ${PACKAGE_VERSION} under ${RELEASE_CHANNEL} channel"
  19. if [ $RELEASE_CHANNEL == "latest" ]; then
  20. SCRIPT="publishLatest"
  21. elif [ $RELEASE_CHANNEL == "next" ]; then
  22. SCRIPT="publishNext"
  23. else
  24. echo "Unknown channel, skipping packages release"
  25. exit
  26. fi
  27. echo $'\nBuilding packages'
  28. yarn packages:build
  29. echo $'\nPublishing packages'
  30. yarn packages:${SCRIPT}