mirror of
https://github.com/shadoll/helm-charts.git
synced 2026-08-28 11:33:17 +00:00
feat: Add home-assistant-dev chart and update update-charts script for image tag management
This commit is contained in:
@@ -17,6 +17,8 @@ Icon
|
||||
charts/*.tgz
|
||||
charts/*/charts/
|
||||
charts/*/tmpcharts/
|
||||
**/charts/*.tgz
|
||||
**/Chart.lock
|
||||
|
||||
# IDE files
|
||||
.vscode/
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
apiVersion: v2
|
||||
name: home-assistant-dev
|
||||
description: Home Assistant development build - wraps home-assistant chart with dev defaults
|
||||
type: application
|
||||
annotations:
|
||||
version-source: dockerhub-dev:homeassistant/home-assistant:^[0-9]+\.[0-9]+\.[0-9]+\.dev[0-9]+$
|
||||
version: 0.1.9-dev
|
||||
appVersion: "2026.4.0.dev202603240309"
|
||||
dependencies:
|
||||
- name: home-assistant
|
||||
version: ">=0.1.0"
|
||||
repository: "file://../home-assistant"
|
||||
@@ -0,0 +1,25 @@
|
||||
home-assistant:
|
||||
image:
|
||||
# Must match Chart.yaml appVersion — subchart can't access parent's appVersion
|
||||
tag: "2026.4.0.dev202603240309"
|
||||
|
||||
hostNetwork: false
|
||||
|
||||
homekit:
|
||||
enabled: false
|
||||
|
||||
persistence:
|
||||
config:
|
||||
type: pvc
|
||||
size: 5Gi
|
||||
storageClass: local-path
|
||||
media:
|
||||
enabled: false
|
||||
|
||||
resources:
|
||||
requests:
|
||||
cpu: "100m"
|
||||
memory: "512Mi"
|
||||
limits:
|
||||
cpu: "2"
|
||||
memory: "2Gi"
|
||||
@@ -25,6 +25,11 @@ fetch_latest() {
|
||||
local pattern="${source_data#*:}"
|
||||
version=$(curl -s "https://registry.hub.docker.com/v2/repositories/$repo/tags?page_size=100" | jq -r '.results[].name' | grep -E "$pattern" | sort -V -r | head -1)
|
||||
;;
|
||||
"dockerhub-dev")
|
||||
local repo="${source_data%%:*}"
|
||||
local pattern="${source_data#*:}"
|
||||
version=$(curl -s "https://registry.hub.docker.com/v2/repositories/$repo/tags?page_size=100" | jq -r '.results[].name' | grep -E "$pattern" | head -1)
|
||||
;;
|
||||
*)
|
||||
return 1
|
||||
;;
|
||||
@@ -46,10 +51,16 @@ apply_pattern() {
|
||||
# Bump semver patch version (0.1.9 -> 0.1.10)
|
||||
bump_version() {
|
||||
local version=$1
|
||||
# Extract optional suffix (e.g., -dev, -beta)
|
||||
local suffix=""
|
||||
if [[ "$version" == *-* ]]; then
|
||||
suffix="-${version#*-}"
|
||||
version="${version%%-*}"
|
||||
fi
|
||||
local major minor patch
|
||||
IFS='.' read -r major minor patch <<< "$version"
|
||||
patch=$((patch + 1))
|
||||
echo "$major.$minor.$patch"
|
||||
echo "$major.$minor.$patch$suffix"
|
||||
}
|
||||
|
||||
# Main loop through charts
|
||||
@@ -101,6 +112,16 @@ for chart_dir in "$REPO_ROOT"/*/; do
|
||||
"$chart_yaml"
|
||||
rm -f "$chart_yaml.bak"
|
||||
|
||||
# Update image.tag in values.yaml if it has a non-empty tag (for wrapper charts)
|
||||
values_yaml="$chart_dir/values.yaml"
|
||||
if [ -f "$values_yaml" ] && grep -qE 'tag: ".+"' "$values_yaml"; then
|
||||
sed -i.bak \
|
||||
-e 's|tag: "[^"][^"]*"|tag: "'"$latest_clean"'"|' \
|
||||
"$values_yaml"
|
||||
rm -f "$values_yaml.bak"
|
||||
echo " Updated values.yaml image.tag"
|
||||
fi
|
||||
|
||||
UPDATES_FOUND="$UPDATES_FOUND\n- **$chart_name**: $current_app_version ➔ $latest_clean (Chart v$new_chart_version)"
|
||||
else
|
||||
echo " Up to date."
|
||||
|
||||
Reference in New Issue
Block a user