forked from feast-dev/feast
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathvalidate-helm-chart-versions.sh
executable file
·36 lines (26 loc) · 1.55 KB
/
validate-helm-chart-versions.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#!/usr/bin/env bash
set -e
# Amount of file locations that need to be bumped in unison when versions increment
UNIQUE_VERSIONS_COUNT=20 # Change in release 0.27.0
if [ $# -ne 1 ]; then
echo "Please provide a single semver version (without a \"v\" prefix) to test the repository against, e.g 0.99.0"
exit 1
fi
CHART_ROOT_DIR=$(git rev-parse --show-toplevel)/infra/charts
echo "Finding how many versions have been set to ${1} in the current repository"
CHANGED_VERSIONS_COUNT=$(grep -R --exclude-dir='.*' ${1} ${CHART_ROOT_DIR} | wc -l)
echo "Found ${CHANGED_VERSIONS_COUNT} versions that have been changed"
echo "This repository should contain ${UNIQUE_VERSIONS_COUNT} changed versions"
if [ $UNIQUE_VERSIONS_COUNT -ne "${CHANGED_VERSIONS_COUNT}" ]; then
echo "We expected $UNIQUE_VERSIONS_COUNT to have been updated to the latest version, but only ${CHANGED_VERSIONS_COUNT} have. This number is statically defined based on a simple grep"
echo "Please confirm that all versions in all charts and requirements files have been bumped to the tagged release version. If you have successfully bumped all versions and there is still a mismatch in the expected and actual counts, then rerun the following command"
echo "grep -R 'insert_your_semver_version_here' . | wc -l"
echo "and update the script scripts/validate-helm-chart-versions.sh"
echo
echo For your reference, the following lines were detected as changed
echo
grep -R --exclude-dir='.*' ${1} ${CHART_ROOT_DIR} || true
echo
exit 1
fi
echo "All versions validated. Passing test."