feat: begin migrating to OCIRepository for Helm charts

This commit is contained in:
JJGadgets
2025-11-13 17:20:51 +08:00
parent 9e3af8baa8
commit 829313f425
5 changed files with 55 additions and 9 deletions

View File

@@ -12,6 +12,17 @@
"versioningTemplate": "helm",
"depNameTemplate": "app-template",
"registryUrlTemplate": "https://bjw-s-labs.github.io/helm-charts"
},
{
"description": ["app-template OCI versions"],
"customType": "regex",
"managerFilePatterns": ["/^kube/.+/ks\\.ya?ml$/"],
"matchStrings": [
"APP_TEMPLATE: \\\"+(?<currentValue>[\\d\\.]+)\\\"+",
],
"datasourceTemplate": "docker",
"versioningTemplate": "docker",
"depNameTemplate": "ghcr.io/bjw-s-labs/helm/app-template"
}
]
}

View File

@@ -0,0 +1,28 @@
---
# yaml-language-server: $schema=https://flux.jank.ing/ocirepository-source-v1.json?test
apiVersion: source.toolkit.fluxcd.io/v1
kind: OCIRepository
metadata:
name: app-template
spec:
interval: 1h
layerSelector:
mediaType: application/vnd.cncf.helm.chart.content.v1.tar+gzip
operation: copy
url: oci://ghcr.io/bjw-s-labs/helm/app-template
ref:
tag: "${APP_TEMPLATE:=4.4.0}"
---
# yaml-language-server: $schema=https://flux.jank.ing/ocirepository-source-v1.json?test
apiVersion: source.toolkit.fluxcd.io/v1
kind: OCIRepository
metadata:
name: app-template-renovate-test
spec:
interval: 1h
layerSelector:
mediaType: application/vnd.cncf.helm.chart.content.v1.tar+gzip
operation: copy
url: oci://ghcr.io/bjw-s-labs/helm/app-template
ref:
tag: 4.2.0

View File

@@ -0,0 +1,7 @@
---
# yaml-language-server: $schema=https://json.schemastore.org/kustomization
apiVersion: kustomize.config.k8s.io/v1alpha1
kind: Component
resources:
- ./chart.yaml

View File

@@ -7,14 +7,10 @@ metadata:
namespace: *app
spec:
interval: 5m
chart:
spec:
chart: app-template
version: 4.4.0
sourceRef:
name: bjw-s
kind: HelmRepository
namespace: flux-system
chartRef:
kind: OCIRepository
name: *app
namespace: *ns
values:
controllers:
app:

View File

@@ -13,11 +13,15 @@ spec:
path: ./kube/deploy/apps/${APPNAME}/app
components:
- ../../../core/flux-system/alerts/template/
- ../../../../repos/flux/helm/oci/app-template/
dependsOn:
- name: crds
namespace: flux-system
- name: ${APPNAME}-db
# - name: ${APPNAME}-db
- name: ${APPNAME}-pvc
postBuild:
substitute:
APP_TEMPLATE: 4.4.0
---
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization