1
0
Fork 0
mirror of https://git.sr.ht/~goorzhel/turboprop synced 2024-12-15 17:50:52 +00:00
turboprop/flake.nix
2023-12-03 17:07:21 -08:00

53 lines
1.3 KiB
Nix

{
description = "Templates Helm deployments using Nix";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs";
flake-utils.url = "github:numtide/flake-utils";
haumea = {
url = "github:nix-community/haumea/v0.2.2";
inputs.nixpkgs.follows = "nixpkgs";
};
nix-kube-generators.url = "github:farcaller/nix-kube-generators";
nixhelm = {
url = "github:farcaller/nixhelm";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = inputs @ {
self,
nixpkgs,
haumea,
flake-utils,
nix-kube-generators,
nixhelm,
}:
flake-utils.lib.eachDefaultSystem (system: let
pkgs = import nixpkgs {inherit system;};
kubelib = nix-kube-generators.lib {inherit pkgs;};
lib = import ./lib {inherit charts haumea kubelib pkgs;};
charts =
pkgs.lib.attrsets.recursiveUpdate
nixhelm.chartsDerivations.${system}
(lib.mkCharts ./charts);
in {
packages = {
inherit charts lib;
default = {
# TODO: move to default.nix
charts ? charts,
lib ? lib,
pkgs ? pkgs,
user ? {},
}:
import ./src {
inherit charts lib pkgs user;
};
};
# TODO: make a template
formatter = pkgs.alejandra;
});
}