mirror of
https://github.com/k8s-at-home/charts.git
synced 2025-01-23 15:39:02 +00:00
5fe9446653
* [meta] Generate charts summary page Signed-off-by: Bᴇʀɴᴅ Sᴄʜᴏʀɢᴇʀs <me@bjw-s.dev>
42 lines
1.5 KiB
Bash
Executable File
42 lines
1.5 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -e
|
|
|
|
# require yq
|
|
command -v yq >/dev/null 2>&1 || {
|
|
echo >&2 "yq (https://github.com/mikefarah/yq) is not installed. Aborting."
|
|
exit 1
|
|
}
|
|
|
|
# Absolute path of repository
|
|
repository=$(git rev-parse --show-toplevel)
|
|
charts_folder="${repository}/charts"
|
|
charts_summary_file="${charts_folder}"/README.md
|
|
|
|
# Gather all charts using the common library, excluding common-test
|
|
incubator_charts=$(find "${charts_folder}/incubator" -name "Chart.yaml" | sort)
|
|
stable_charts=$(find "${charts_folder}/stable" -name "Chart.yaml" | sort)
|
|
|
|
echo "# Helm charts overview" > "${charts_summary_file}"
|
|
|
|
echo "### Stable charts:" >> "${charts_summary_file}"
|
|
echo "| Chart | Description |" >> "${charts_summary_file}"
|
|
echo "| ----- | ----------- |" >> "${charts_summary_file}"
|
|
for i in ${stable_charts[@]}
|
|
do
|
|
chart_data=($(yq eval '.name, .description' "$i"))
|
|
chart_name="${chart_data[0]}"
|
|
chart_description="${chart_data[@]:1}"
|
|
echo "| [${chart_name}](stable/${chart_name}) | ${chart_description} |" >> "${charts_summary_file}"
|
|
done
|
|
|
|
echo "### Incubator charts:" >> "${charts_summary_file}"
|
|
echo "| Chart | Description |" >> "${charts_summary_file}"
|
|
echo "| ----- | ----------- |" >> "${charts_summary_file}"
|
|
for i in ${incubator_charts[@]}
|
|
do
|
|
chart_data=($(yq eval '.name, .description' "$i"))
|
|
chart_name="${chart_data[0]}"
|
|
chart_description="${chart_data[@]:1}"
|
|
echo "| [${chart_name}](incubator/${chart_name}) | ${chart_description} |" >> "${charts_summary_file}"
|
|
done
|