check-chart-vsn.sh 881 B

1234567891011121314151617181920212223242526272829303132333435
  1. #!/usr/bin/env bash
  2. set -euo pipefail
  3. if [ "${DEBUG:-}" = 1 ]; then
  4. set -x
  5. fi
  6. # ensure dir
  7. cd -P -- "$(dirname -- "$0")/../.."
  8. PROFILE="$1"
  9. CHART_FILE="deploy/charts/${PROFILE}/Chart.yaml"
  10. if [ ! -f "$CHART_FILE" ]; then
  11. echo "Chart file $CHART_FILE is not found"
  12. echo "Current working dir: $(pwd)"
  13. exit 1
  14. fi
  15. CHART_VSN="$(grep -oE '^version:.*' "$CHART_FILE" | cut -d ':' -f 2 | tr -d ' ')"
  16. APP_VSN="$(grep -oE '^appVersion:.*' "$CHART_FILE" | cut -d ':' -f 2 | tr -d ' ')"
  17. if [ "$CHART_VSN" != "$APP_VSN" ]; then
  18. echo "Chart version and app version mismatch in $CHART_FILE"
  19. exit 2
  20. fi
  21. RELEASE_VSN="$(./pkg-vsn.sh "$PROFILE" --release)"
  22. if [ "$CHART_VSN" != "$RELEASE_VSN" ]; then
  23. echo "Chart version in $CHART_FILE is not in sync with release version."
  24. echo "Chart version: $CHART_VSN"
  25. echo "Release version: $RELEASE_VSN"
  26. exit 3
  27. fi