diff --git a/charts/kube-prometheus-stack/charts/crds/files/crds.tar.xz b/charts/kube-prometheus-stack/charts/crds/files/crds.tar.xz deleted file mode 100644 index 4fce0225990c..000000000000 Binary files a/charts/kube-prometheus-stack/charts/crds/files/crds.tar.xz and /dev/null differ diff --git a/charts/kube-prometheus-stack/ci/06-upgrade-crds-values.yaml b/charts/kube-prometheus-stack/ci/06-upgrade-crds-values.yaml new file mode 100644 index 000000000000..97a1d39ab2f0 --- /dev/null +++ b/charts/kube-prometheus-stack/ci/06-upgrade-crds-values.yaml @@ -0,0 +1,3 @@ +crds: + upgradeJob: + enabled: true diff --git a/charts/kube-prometheus-stack/ci/lint.sh b/charts/kube-prometheus-stack/ci/lint.sh index f47f16acbb54..4962fa744a65 100644 --- a/charts/kube-prometheus-stack/ci/lint.sh +++ b/charts/kube-prometheus-stack/ci/lint.sh @@ -14,11 +14,27 @@ set -euo pipefail echo "Please run ./hack/update_crds.sh" echo "Diff:" + ls -l /tmp/crds.tar.xz charts/crds/files/crds.tar.xz + echo "Diff:" + shasum -a 256 /tmp/crds.tar.xz charts/crds/files/crds.tar.xz + echo "Diff:" + tar tvf /tmp/crds.tar.xz + echo "-----" + tar tvf charts/crds/files/crds.tar.xz + echo "Diff:" + git diff --color=always <( strings /tmp/crds.tar.xz ) <( strings charts/crds/files/crds.tar.xz ) + echo "Diff:" + + git diff --color=always <( + xxd /tmp/crds.tar.xz + ) <( + xxd charts/crds/files/crds.tar.xz + ) exit 1 fi diff --git a/charts/kube-prometheus-stack/hack/update_crds.sh b/charts/kube-prometheus-stack/hack/update_crds.sh index a797825d8d77..aaedeeedc4ce 100755 --- a/charts/kube-prometheus-stack/hack/update_crds.sh +++ b/charts/kube-prometheus-stack/hack/update_crds.sh @@ -39,23 +39,25 @@ for line in "${FILES[@]}"; do fi done -_TAR=$(which gtar 2>/dev/null || which tar 2>/dev/null) +_TAR=$(which gtar 2>/dev/null) + +cd "${SCRIPT_DIR}/../charts/crds/crds/" case $($_TAR --help) in - *GNU*) ;; + *GNU*) + find crd-*.yaml -print0 | sort -z | env COPYFILE_DISABLE=1 ZSTD_CLEVEL=19 $_TAR --sort=name --format=ustar \ + --mtime="@0" \ + --numeric-owner --owner=0 --group=0 \ + --mode='go+u,go-w' \ + --no-xattrs --no-acls --no-selinux \ + -I zstd -cpf ../files/crds.tar.zst crd-*.yaml + ;; *) - echo "Please install GNU tar" - echo "On macOS: brew install gnu-tar" - exit 1 + find crd-*.yaml -print0 -exec touch -t 197001010000 {} + | sort -z | env COPYFILE_DISABLE=1 ZSTD_CLEVEL=19 $_TAR --format=ustar \ + --numeric-owner --uid=0 --gid=0 \ + --no-xattrs \ + --no-recursion --null --files-from - \ + --options zstd:compression-level=19 \ + --zstd -cf ../files/crds.tar.zst ;; esac - -cd "${SCRIPT_DIR}/../charts/crds/crds/" - -$_TAR --sort=name --format=posix \ - --pax-option='exthdr.name=%d/PaxHeaders/%f,delete=atime,delete=ctime,delete=btime,delete=mtime' \ - --mtime="@0" \ - --numeric-owner --owner=0 --group=0 \ - --mode='go+u,go-w' \ - --no-xattrs --no-acls --no-selinux \ - --xz -cf ../files/crds.tar.xz crd-*.yaml