This reposity contains utilities for building and deploying projects meant to run in my own personal kubernetes cluster. They may be of inspiration to others. The main technologies at play are Make, Nix, and Dhall.
- Semantic version tagging of git and docker images.
- Bootstrapping docker image generation via Nix.
- Generation of Kubernetes yamls via Dhall.
- Deployment of Kubernetes yamls via kubectl or flux.
- Nix
- A service.dhall file containing the following record of the following type:
{ name :
Text
, repo :
Text
, port :
Natural
, gateway :
Text
, hosts :
List Text
}
The primary way to plug this into a project is to import it in a makefile.
- If cloned to a local directory:
include $(shell nix-shell ../service_utils/shell.nix --run "")
- If installed via nix:
include $(shell print-utils-make)
This will make the utility make functions defined by this repository available in including repo.