.forgejo/workflows | ||
.husky | ||
bin | ||
flux | ||
k3s-host | ||
.editorconfig | ||
.gitignore | ||
.lintstagedrc.json | ||
.markdownlint-cli2.cjs | ||
.npmrc | ||
.prettierignore | ||
.prettierrc.json | ||
k8s-forgefriends.md | ||
k8s-forgejo.md | ||
k8s-maintenance.md | ||
k8s.md | ||
LICENSE | ||
package.json | ||
pnpm-lock.yaml | ||
README.md | ||
renovate.json |
There is a dedicated chatroom. A mirror of this repository is available at https://codeberg.org/forgejo/k8s-cluster.
Table of content
- Setting up a new K8S/DRBD/NFS k8s node deployed with flux.
- Maintenance and disaster recovery of a K8S/DRBD/NFS k8s node
- Installing a Forgejo instance in the K8S cluster
- Installing a forgefriends instance in the K8S cluster
- Local Development
Monitoring
Cluster monitoring will send warnings to a private Matrix chatroom dedicated to this purpose. The error messages may contain sensitive information. They should not but they are error messages after all and that possibility cannot be dismissed.
The forgejo-matrix-devops account on matrix.org is associated with the matrix-devops at forgejo.org email which is an alias to contact. The password, session keys etc. are not stored anywhere. If there ever is a need for manual interaction with this account, the password will have to be reset.
The monitors related to a deployment (v*.next for instance) should be removed before removing the instance to avoid false negative.
hetzner{05,06}
https://hetzner05.forgejo.org & https://hetzner06.forgejo.org run on EX44 Hetzner hardware.
Nodes of a k8s cluster.
Development
Install following tools locally:
node
pnpm
or enablecorepack
helm
flux
yq
Run pnpm install
after code checkout to prepare development.
This installs git hooks to fix simple lint issues.
You can run pnpm lint
to run all lint checks.
Hacking
Evaluate a Forgejo helm release to verify the output is as expected before submitting a pull request, for instance after changing flux/apps/forgejo-code/forgejo-code.yaml
.
helm template -f <(yq .spec.values forgejo-code.yaml) oci://code.forgejo.org/forgejo-helm/forgejo
Note that although flux build kustomization forgejo-code --path ./flux/clusters --kustomization-file ./flux/clusters/forgejo-code.yaml --dry-run
will work, it will not call helm template and is not useful in that context.