Skip to content

Development platform. This includes everything a developer needs on top of a k8s cluster

Notifications You must be signed in to change notification settings

failk8s-packages/dev-platform

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dev-platform-package

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.

Packages

Configuration

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.

Usage Example

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

Test in minikube

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

Test in TMC Provided cluster (using Tanzu CLI)

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

Develop checklist

  1. Update your config.json with the package info
  2. Add overlays and values
  3. Test your bundle: ytt --data-values-file src/example-values/minikube.yaml -f target/bundle/config providing a sample values file from example-values
  4. Build your bundle ./hack/build.sh
  5. 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.

About

Development platform. This includes everything a developer needs on top of a k8s cluster

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages