Skip to content

Instantly share code, notes, and snippets.

@mamachanko
Created May 17, 2024 06:20
Show Gist options
  • Save mamachanko/43298e5a3fc4e3508e941f42a177df15 to your computer and use it in GitHub Desktop.
Save mamachanko/43298e5a3fc4e3508e941f42a177df15 to your computer and use it in GitHub Desktop.
kapp-controller downward API experiment
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: install-sa
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: install-cluster-admin-role
rules:
- apiGroups:
- "*"
resources:
- "*"
verbs:
- "*"
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: install-cluster-admin-role-binding
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: install-cluster-admin-role
subjects:
- kind: ServiceAccount
name: install-sa
namespace: default
---
apiVersion: data.packaging.carvel.dev/v1alpha1
kind: Package
metadata:
name: test.example.com.0.1.0
spec:
refName: test.example.com
version: 0.1.0
template:
spec:
deploy:
- kapp: {}
fetch:
- path: config
inline:
paths:
config/config.yaml: |
#@ load("@ytt:data", "data")
#@ load("@ytt:yaml", "yaml")
---
apiVersion: v1
kind: ConfigMap
metadata:
name: test
namespace: default
data:
kubernetes_version: #@ data.values.kubernetes_version
kubernetes_gvs: #@ yaml.encode(data.values.kubernetes_gvs)
template:
- ytt:
paths:
- ./config
valuesFrom:
- downwardAPI:
items:
- name: kubernetes_version
kubernetesVersion: {}
- name: kubernetes_gvs
kubernetesAPIs: {}
---
apiVersion: packaging.carvel.dev/v1alpha1
kind: PackageInstall
metadata:
name: test
spec:
packageRef:
refName: test.example.com
versionSelection:
constraints: "> 0.0.0"
serviceAccountName: install-sa
syncPeriod: 10s
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment