2025-12-06 02:22:00 +00:00
|
|
|
#!/bin/bash
|
|
|
|
|
set -e
|
|
|
|
|
|
|
|
|
|
# Directory of this script
|
|
|
|
|
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|
|
|
|
ROOT_DIR="${SCRIPT_DIR}/.."
|
|
|
|
|
CHART_PATH="${ROOT_DIR}/k8s/monitoring/charts/kube-prometheus-stack-75.12.0.tgz"
|
2025-12-12 21:31:23 +00:00
|
|
|
OUTPUT_FILE="${ROOT_DIR}/k8s/crds/all-crds.yaml"
|
2025-12-06 02:22:00 +00:00
|
|
|
TEMP_DIR=$(mktemp -d)
|
|
|
|
|
|
|
|
|
|
echo "Extracting CRDs from ${CHART_PATH}..."
|
|
|
|
|
|
|
|
|
|
# Extract the chart to a temporary directory
|
|
|
|
|
tar -xf "${CHART_PATH}" -C "${TEMP_DIR}"
|
|
|
|
|
|
|
|
|
|
# Concatenate all CRDs into the output file
|
|
|
|
|
echo "# Generated by scripts/update-crds.sh" > "${OUTPUT_FILE}"
|
|
|
|
|
echo "# Source: kube-prometheus-stack-75.12.0.tgz" >> "${OUTPUT_FILE}"
|
|
|
|
|
|
|
|
|
|
# The CRDs are located in kube-prometheus-stack/charts/crds/crds/
|
|
|
|
|
CRD_DIR="${TEMP_DIR}/kube-prometheus-stack/charts/crds/crds"
|
|
|
|
|
|
|
|
|
|
if [ ! -d "${CRD_DIR}" ]; then
|
|
|
|
|
echo "Error: CRD directory not found at ${CRD_DIR}"
|
|
|
|
|
rm -rf "${TEMP_DIR}"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# Loop through yaml files and append them
|
|
|
|
|
for crd in "${CRD_DIR}"/*.yaml; do
|
|
|
|
|
echo "---" >> "${OUTPUT_FILE}"
|
|
|
|
|
cat "${crd}" >> "${OUTPUT_FILE}"
|
|
|
|
|
done
|
|
|
|
|
|
|
|
|
|
echo "CRDs updated in ${OUTPUT_FILE}"
|
|
|
|
|
|
|
|
|
|
# Cleanup
|
|
|
|
|
rm -rf "${TEMP_DIR}"
|