Commit Graph

249 Commits

Author SHA1 Message Date
Khue Doan
94b6c5d2e9 chore(external-secrets): upgrade to v0.10.2 2024-09-03 02:21:01 +07:00
Khue Doan
209a950ed0 chore(kanidm): upgrade to v1.3.3 2024-09-02 13:22:51 +07:00
Khue Doan
90614871cc chore(woodpecker): upgrade to latest version
v1.1.1 is not available in the repository anymore, causing 404 on
rebuilding the homelab.
2024-08-31 02:05:24 +07:00
Khue Doan
2cd8a249b6 refactor!: replace ZeroTier with Tailscale and Wireguard
- Tailscale UX is better, and the Headscale control server is also
  easier to self-host than ZeroTier (although Headscale is not the
  official control server, the author now works at Tailscale)
- Wireguard is also added as an alternative to avoid relying on a
  third-party service, however it requires port-forwarding
2024-04-18 20:11:18 +07:00
Khue Doan
21808e1a0f fix(kandim): upgrade to 1.1.0-rc.16
Fixes ERR_ZSTD_WINDOW_SIZE_TOO_BIG
2024-04-18 17:44:11 +07:00
Khue Doan
6c294a5d6a fix: add missing apiVersion
Make the linter happy
2024-04-02 11:18:28 +07:00
Khue Doan
5e960681c4 fix(gitea): increase config job backoff limit
Oops, 0 means no retry
2024-03-27 10:37:32 +07:00
Khue Doan
66a92da77b fix(gitea): retry config job until successful 2024-03-27 10:32:43 +07:00
Khue Doan
e30028ec39 docs: replace docker registry with Zot 2024-03-27 00:31:19 +07:00
Khue Doan
8d6cc2b84e refactor!: replace docker registry with Zot 2024-03-26 23:26:28 +07:00
Khue Doan
4a4828f20b chore(deps): update all non-major dependencies 2024-03-03 00:20:54 +07:00
Khue Doan
a7cdb00550 refactor!: move alert setup from Grafana to Alertmanager 2024-03-02 14:32:55 +07:00
Khue Doan
250e6d2712 feat(grafana): add ntfy integration 2024-01-21 16:14:37 +07:00
Khue Doan
169f24fed3 chore: update kube-prometheus-stack and grafana 2024-01-21 15:50:02 +07:00
Khue Doan
bed4134ef0 feat: add ntfy relay for Grafana alerts 2024-01-21 14:43:27 +07:00
Khue Doan
11e407e880 refactor(paperless)!: switch to app-template
Explicitly define PAPERLESS_PORT due to environment variable conflict.

https://docs.paperless-ngx.com/troubleshooting/#gunicorn-fails-to-start-with-is-not-a-valid-port-number
2024-01-19 02:43:58 +07:00
Khue Doan
1af664d6c0 refactor!: replace Hajimari with Homepage
More eye candies.
2024-01-17 21:15:16 +07:00
Khue Doan
f51d3f95a9 feat(gitea): automatically setup Dex as authentication source
It's very ugly but it works ¯\_(ツ)_/¯
2024-01-17 01:51:43 +07:00
Khue Doan
86221b920c feat(dex): add Gitea SSO client 2024-01-17 00:15:59 +07:00
Khue Doan
b98060294d refactor!: remove Tekton
Replaced by Woodpecker CI. It turns out I don't need that much power
from Tekton's flexibility, so it's not worth the maintenance overhead
for my specific use case at home.
2024-01-15 10:55:29 +07:00
Khue Doan
7f933a0355 refactor(gitea): disable unused features
Keep Gitea minimal.
2024-01-08 21:16:29 +07:00
Khue Doan
172c7c7c2b chore(gitea)!: ugrade Helm chart to v10
This is a breaking change, see https://gitea.com/gitea/helm-chart#upgrading
before upgrading to avoid losing data. Personally I have my repos saved
in many Git hosting providers so I just nuke it and reinstall.

Fixes changed files detection in pull_request event in Woodpecker.
2024-01-08 21:16:29 +07:00
Khue Doan
5bf9c03cf8 feat: install Woodpecker CI 2024-01-06 03:03:35 +07:00
Khue Doan
4673f91558 refactor(dex): remove Gitea connector
Use Kanidm instead.
2024-01-06 03:03:29 +07:00
Khue Doan
50220aaf6a feat(dex): add Kanidm connector 2024-01-06 00:44:45 +07:00
Khue Doan
1d1ebb9fc2 feat: install Kanidm for identity management 2024-01-04 10:40:43 +07:00
Khue Doan
bb27f0a607 perf(gitea): only run config job when config files changed 2023-11-27 00:41:38 +07:00
Khue Doan
002e725e6b perf(secret-generator): only run job when config changed 2023-11-27 00:36:03 +07:00
Khue Doan
5e76122a04 refactor(global-secrets): move secret store to the same namespace
Otherwise RBAC will be much more complicated.
2023-11-26 17:39:49 +07:00
Khue Doan
dc16d94071 fix(external-secrets): fix incorrect service account name 2023-11-26 17:26:22 +07:00
Khue Doan
97d3fbc0eb refactor!: make secret generator write to k8s Secrets instead of Vault 2023-11-26 16:11:50 +07:00
Khue Doan
37a324f71a refactor!: replace Vault with in-cluster global secrets 2023-11-26 03:11:08 +07:00
Khue Doan
e28bada08e refactor: remove explicit StorageClass selection
Previously PVCs need to define storage class explicitly because if
a PVC was created before Longhorn is ready, it will stay pending forever
until we delete and recreate it (ArgoCD didn't have sync wave for
ApplicationSet back then).

Kubernetes 1.28 has retroactive assignment of a default StorageClass for
existing unbound persistent volume claims without any storage class assigned.

https://kubernetes.io/blog/2023/08/15/kubernetes-v1-28-release/#automatic-retroactive-assignment-of-a-default-storageclass-graduates-to-stable
2023-11-19 12:04:10 +07:00
Khue Doan
4b69ec2dfc refactor(platform)!: replace Harbor with a simple Docker Regisry
https://github.com/distribution/distribution

Docker Registry is stateless and easier to automate.
The tiny footprint is an added bonus.
2023-05-21 14:08:42 +07:00
Khue Doan
b517985272 refactor(harbor): remove unnecessary components
Don't need them at least for now.
2023-05-19 13:59:42 +07:00
Khue Doan
c2d1263cbd fix(grafana): enable side car for dashboards and datasources
Copied config from kube-prometheus-stack
2023-05-19 13:11:02 +07:00
Khue Doan
b1a716dae9 refactor!: move Grafana to platform
Grafana depends on secret created by ExternalSecret, with the values
pulled from Vault, causing circular dependency problem: system requires
platform components but platform requires system components.
2023-05-19 01:36:47 +07:00
Khue Doan
96a968bc9f fix(harbor): fix Ingress cert and class 2023-02-22 18:34:21 +07:00
Khue Doan
75aaf731c9 refactor: switch back to Harbor 2023-02-22 18:33:57 +07:00
Khue Doan
bc8beffb73 fix(tekton): fix incorrect pull request revision 2023-01-26 15:31:22 +07:00
Khue Doan
220e5c5480 feat(tekton): add pull request workflow 2023-01-26 10:44:50 +07:00
Khue Doan
22a3ccd331 feat: auto create Gitea webhook for Tekton 2023-01-26 01:26:52 +07:00
Khue Doan
d5eb6d9a76 fix(tekton): update new Dashboard install link 2023-01-25 22:10:42 +07:00
Khue Doan
a7016de626 refactor(tekton): use common workflows that create pipelines 2023-01-25 22:01:31 +07:00
Khue Doan
8df13c3ef4 refactor(tekton): use remote tasks from Tekton Hub 2023-01-25 17:26:16 +07:00
Khue Doan
330393080a feat(tekton): install experimental Workflow 2023-01-25 14:49:50 +07:00
Khue Doan
3718f99096 refactor(tekton): move common tasks back to platform 2023-01-25 14:25:27 +07:00
Khue Doan
39e79fc0e8 fix(gitea): allow webhook in private network
Default is external https://docs.gitea.io/en-us/config-cheat-sheet/#webhook-webhook
2023-01-24 22:29:20 +07:00
Khue Doan
3b7e8f1688 chore: upgrade Go version of config jobs to 1.19 2022-12-29 23:22:47 +07:00
Khue Doan
5cb5f822aa chore(external-secrets): upgrade to latest version 2022-12-24 14:22:45 +07:00