1
0
Fork 0
mirror of https://git.sr.ht/~goorzhel/turboprop synced 2024-12-15 17:50:52 +00:00
Commit graph

262 commits

Author SHA1 Message Date
Antonio Gurgel
0405524191 Organize lib/vars; don't hard-code Gateway name 2023-11-18 02:20:55 -08:00
Antonio Gurgel
2ccc03bde6 Factor out app-template main container image 2023-11-18 02:19:19 -08:00
Antonio Gurgel
4a86b9a6d6 Missed a spot
I forgot upstream's default value for `route.main.enabled` is false.

And here I only had to change it IN ONE PLACE. This is truly the future.
2023-11-18 02:10:03 -08:00
Antonio Gurgel
05604660ea Factor out app-template HTTPRoutes 2023-11-18 02:09:30 -08:00
Antonio Gurgel
1b63b4bda1 Refactor lib/
NixOS configs taught me wrong; `imports=[]` is not a magic sequence.
But because `lib/default.nix` returns an attrset, I can use attrset
mechanics on it.
2023-11-18 01:55:21 -08:00
Antonio Gurgel
3f0961f456 Add Calibre 2023-11-18 01:40:40 -08:00
Antonio Gurgel
4f1e23c7c0 Cool it with the inherits
`http.port = port` and `http = {inherit port;}` both look bad, so
I shall use the less punctuation-laden one.
2023-11-18 01:30:01 -08:00
Antonio Gurgel
f5b9d92e0f Devise way to retrieve Helm values as YAML
Even though I've refactored the values into Nix, I'd like them easily
available as YAML. This is impossible to do inside the flake, because
it requires `nix derivation show`, so I made do with a helper script.
2023-11-18 00:52:31 -08:00
Antonio Gurgel
7bebbb7bf3 Refactor values into Nix
There's a lot of potential for abstracting this into `lib/`.
2023-11-17 23:50:29 -08:00
Antonio Gurgel
5a616953fd Add Breezewiki 2023-11-17 23:33:54 -08:00
Antonio Gurgel
8a53be1d9f Have devshell follow root nixpkgs; update deps 2023-11-17 23:22:32 -08:00
Antonio Gurgel
1ab0281d9d Build top- and namespace-level Kustomizations
For `kubectl apply -k result`.
2023-11-17 23:09:06 -08:00
Antonio Gurgel
e97d3cca75 Clean up 2023-11-16 23:30:02 -08:00
Antonio Gurgel
430b576766 Withdraw releases from output
I only needed it for debugging before I finished the default output.
Charts are still available for anyone using this flake as an input.
2023-11-16 22:11:43 -08:00
Antonio Gurgel
c327804905 Add SOPS 2023-11-16 22:07:26 -08:00
Antonio Gurgel
293b4da857 Factor out a generic builder
This definitely wasn't a ridiculous amount of premature optimization...
2023-11-16 21:51:57 -08:00
Antonio Gurgel
cb4dda1812 Hopefully the last format-only commit 2023-11-16 21:31:26 -08:00
Antonio Gurgel
afb5aeea36 Truck in dev niceties from previous k8s repo 2023-11-16 21:29:59 -08:00
Antonio Gurgel
924cf69fb8 Create lib.gitChart
That was easy.
2023-11-16 21:20:58 -08:00
Antonio Gurgel
50d31e52ec Next challenge: importing a chart from Git 2023-11-16 20:54:10 -08:00
Antonio Gurgel
0121f1f91a License under Apache-2.0 2023-11-16 20:46:03 -08:00
Antonio Gurgel
7d912d6ba4 Add Kustomizations for each release in output 2023-11-16 20:34:15 -08:00
Antonio Gurgel
e6ee6049bf Import upstream fix for fromYAML 2023-11-16 20:29:32 -08:00
Antonio Gurgel
75a8bd35c6 Improve readability 2023-11-16 20:11:10 -08:00
Antonio Gurgel
1ade63a493 Pull packages.*.default's installPhase out into lib/ 2023-11-16 20:11:09 -08:00
Antonio Gurgel
60cab327ed Finally build the envisioned output 2023-11-16 19:50:44 -08:00
Antonio Gurgel
88bd864322 Include ns/name in derivations 2023-11-16 18:40:20 -08:00
Antonio Gurgel
a90896c0b9 Finally build the whole flake 2023-11-16 18:16:27 -08:00
Antonio Gurgel
1cdfed6c58 Leave another note to self
Getting this right will be important.
2023-11-15 22:18:32 -08:00
Antonio Gurgel
46b20e720d Fumble more with gathering releases for .#default 2023-11-15 18:36:31 -08:00
Antonio Gurgel
1826882c13 Factor out values-gathering 2023-11-15 18:34:32 -08:00
Antonio Gurgel
29e6ef6c4f Give sota-slack-spotter values already
app-template won't build without them.
2023-11-15 18:30:27 -08:00
Antonio Gurgel
59116a7f13 Flail at creating default output
I envision the derivation output to be a directory with nested namespace
directories with each release as a single YAML inside.

But I'm currently stuck at the `nix build` part.
2023-11-15 17:36:29 -08:00
Antonio Gurgel
e99474e22b Use pname in yamlFile
Instead of recooking derivation names.
2023-11-15 16:50:32 -08:00
Antonio Gurgel
bef2c80e9f Make release tree itself an output
I was puzzling over how to cobble all these derivations into one
mega-derivation, but I might not have to.
2023-11-15 16:44:34 -08:00
Antonio Gurgel
771aeccb54 Simplify leaf derivations
An attrset with a single attr named `out`? Nah, pull it all up one level
and make the _module_ the derivation.
2023-11-15 16:43:54 -08:00
Antonio Gurgel
d26e1356de Create lib.yamlBundle
rakeLeaves moved to a separate module so that it still won't require
`pkgs`, which would pull it into `eachDefaultSystem`.
2023-11-15 15:37:28 -08:00
Antonio Gurgel
c2c860d613 Figure out how to install YAML bundle 2023-11-15 15:20:39 -08:00
Antonio Gurgel
da5b6c0336 wip gw 2023-11-15 10:58:06 -08:00
Antonio Gurgel
08cd7f8082 Simplify buildReleases 2023-11-15 10:57:46 -08:00
Antonio Gurgel
a0bec492c0 DRY and explain dirToAttrs 2023-11-15 10:56:50 -08:00
Antonio Gurgel
caa0f0b3b2 Increase godlike genericness
Now releases can be built with a single function, be they Helm releases
or YAML bundles copied from Git.
2023-11-15 09:12:40 -08:00
Antonio Gurgel
581ad284dd Trim bogusVersion check
YAGNI (yet).
2023-11-15 08:44:05 -08:00
Antonio Gurgel
b645542f8a Fix last vestige of copy-pasta 2023-11-15 08:43:46 -08:00
Antonio Gurgel
c95fec6476 Credit farcaller properly 2023-11-15 01:39:20 -08:00
Antonio Gurgel
a2abba2889 Ascend to godlike levels of genericness
charts/ and src/ both have two levels of children:
- charts/$repo/$chart
- src/$ns/$release

So, why not use one function to rake them both?

Also, the leaf-raking doesn't require nixpkgs or nix-kube-generators so
I moved everything that does (e.g.: `downloadCharts`) into the
`eachDefaultSystem` part of the output, following the example of
nixhelm's flake.
2023-11-15 01:36:46 -08:00
Antonio Gurgel
6ad3bf06e4 Template a single package 2023-11-15 00:34:07 -08:00
Antonio Gurgel
a28eda512f Refine output and establish vague direction 2023-11-14 23:58:37 -08:00
Antonio Gurgel
37cabf581d Fix app-template hash 2023-11-14 23:39:05 -08:00
Antonio Gurgel
2a784978f5 Don't redundantly pass nixpkgs
Why instantiate kubelib in `lib` when I have one in `flake.nix`?

Also, refactor `lib` so I understand it better. (It's straight copypasta
from `nixhelm`, and that bit me several times already.)
2023-11-14 23:37:27 -08:00