This package provides a development platform on top of Kubernetes. This is a special package as it provides an opinionated flavor of a ready to use set of packages.
- cert-manager
- MetalLB
- external-dns
- contour
- docker registry
- TLS certificates support
- Secret Copier Operator
- Knative Serving
- Test Application (Kuar)
- Test KNative Application (Kuar)
The following configuration values can be set to customize the dev-platform installation.
Configuration can be found in values file. These are provided as --data-values-file
so not need for ytt annotations.
This walkthrough guides you through using dev-platform...
NOTE: develop
version of the package needs to comply with semver, hence the package will be versioned as 0.0.0+develop
Start minikube:
minikube start
Install kapp-controller 0.20+
kubectl apply -f https://github.com/vmware-tanzu/carvel-kapp-controller/releases/latest/download/release.yml
Install the Package Metadata:
kubectl apply -f target/k8s
Install the Required RBAC for the package install (create the control NS):
kubectl apply -f target/test/packageinstall-ns-rbac.yaml
Create the configuration file for your cluster:
kubectl create secret generic dev-platform -n dev-platform-package --from-file=values.yaml=./profiles/minikube.yaml -o yaml --dry-run=client | kubectl apply -f -
Create the package:
kubectl apply -f target/test/packageinstall.yaml
Verify the installation:
watch kubectl get packageinstall -A
If there's an issue, you can verify the problem with:
kubectl get packageinstall dev-platform -n dev-platform-package -o yaml
Install kapp-controller 0.20+
kubectl apply -f https://raw.githubusercontent.com/failk8s-packages/kapp-controller-package/develop/release.yaml
Install the Package Repository:
tanzu package repository add failk8s --url quay.io/failk8s/failk8s-repo:develop --namespace tanzu-package-repo-global
NOTE: Namespaces can be tanzu-package-repo-global
when TMC/TKG/TCE or kapp-controller-packaging-global
when upstream
List available packages:
tanzu package available list
Crate package control namespace:
kubectl create ns dev-platform-package
Create the package:
tanzu package install dev-platform -p dev-platform.dev.failk8s.com -v 0.0.0+develop -f profiles/minikube.yaml -n dev-platform-package
Verify the installation:
watch kubectl get packageinstall -n dev-platform-package
If there's an issue, you can verify the problem with:
kubectl get packageinstall dev-platform -n dev-platform-package -o yaml
To update the package:
tanzu package installed update dev-platform [-v 0.0.0+develop] [-f profiles/minikube.yaml] -n dev-platform-package
To delete the package:
tanzu package installed delete dev-platform -n dev-platform-package
- Update your config.json with the package info
- Add overlays and values
- Test your bundle:
ytt --data-values-file src/example-values/minikube.yaml -f target/bundle/config
providing a sample values file from example-values - Build your bundle
./hack/build.sh
- Add it to the failk8s-repo and publish the new repo and test the package from there, or test with local files
NOTE: develop
versions will not be image locked and will have a version of 0.0.0+develop to comply with semver.