Categorygithub.com/bythepowerof/kmake-controller
repositorypackage
0.1.14
Repository: https://github.com/bythepowerof/kmake-controller.git
Documentation: pkg.go.dev

# Packages

No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author

# README

kmake-controller - WIP

A kubebuilder based controller to run Makefiles inside a cluster.

The idea is to shrink-wrap configuration into docker images, deploy them onto a cluster (optionally mutating the config) and then run make targets inside the cluster.

So multiple clusters can be supported from the same container with the resource mutated with kustomize

Build status

PlatformCI StatusCoverageReport CardDocumentation
linuxBuild StatuscodecovGo Report CardGoDoc

Process

  • Load the CRD defintion
  • Run the controller on your cluster
  • add kmake.mk to your Makefile
  • Convert your Makefile into yaml with pymake -y
  • Add the yaml into your kmake definition
  • Load the definition into your cluster
  • Create kmake-run definitions
  • Run the definitions into your cluster

How it works

kmake creates:-

  • a persistent volume claim
  • an env config map of any variables in the Makefile
  • a config map containing the target part of the Makefile as yaml and a reduced Makefile

A first run of kmake-run will populate the PVC from the source docker image using the target defined in kmake.mk

TODO

  • Write kmake-run controller
  • Improve the readme ;)
  • Write some tests