Compare commits

..

206 Commits

Author SHA1 Message Date
renovate-bot e4d8a55871 Update ghcr.io/juanfont/headscale Docker tag to v0.28.0 2026-02-13 17:11:31 +00:00
renovate-bot 91a6795bfc Update dragonfly-operator Docker tag to v1.4.0 2026-02-13 17:00:13 +00:00
renovate-bot 46d0dcb545 Update Helm release plugin-barman-cloud to v0.5.0 2026-02-13 16:57:12 +00:00
renovate-bot a5da0f745a Update Helm release opentelemetry-collector to v0.145.0 2026-02-13 16:50:03 +00:00
renovate-bot 27f407d685 Update Helm release openfga to v0.2.54 2026-02-13 16:47:05 +00:00
mrtz e3d70b6c7f feat: Bump beta to 1.42.2 2026-02-13 17:41:43 +01:00
Gitea Actions e88544abdb ci(prod): deploy codex v1.42.2 2026-02-13 16:39:03 +00:00
Gitea Actions 7961dc30db ci(prod): deploy atlantis v1.42.2 2026-02-13 16:38:59 +00:00
Gitea Actions fce0f71832 ci(staging): deploy atlantis bc9dccaa-debug 2026-02-13 16:37:47 +00:00
Gitea Actions 4207c28e45 ci(prod): deploy sorcerer v1.42.2 2026-02-13 16:37:31 +00:00
Gitea Actions abaeae3603 ci(prod): deploy plume v1.6.13 2026-02-13 16:11:27 +00:00
Gitea Actions 6ee7490954 ci(staging): deploy plume 9d99f7cf-debug 2026-02-13 16:11:07 +00:00
Gitea Actions 3cab8a1edf ci(staging): deploy plume 982a30de-debug 2026-02-13 16:06:07 +00:00
mrtz 461f2a8f7d fix: Switch plume to gitea 2026-02-13 17:01:28 +01:00
mrtz debd8fe561 fix: Release 2026-02-13 16:59:36 +01:00
Gitea Actions 7352efcaa5 ci(prod): deploy atlantis v1.42.1 2026-02-13 15:58:08 +00:00
Gitea Actions c4a6539913 ci(prod): deploy codex v1.42.1 2026-02-13 15:58:05 +00:00
Gitea Actions 14ed79c528 ci(prod): deploy sorcerer v1.42.1 2026-02-13 15:56:56 +00:00
Gitea Actions e3dcf6b0a8 ci(prod): deploy atlantis v1.42.0 2026-02-13 15:47:35 +00:00
Gitea Actions add314bbf1 ci(prod): deploy codex v1.42.0 2026-02-13 15:45:14 +00:00
Gitea Actions aab18c0a72 ci(staging): deploy codex d34652dd-debug 2026-02-13 15:44:23 +00:00
Gitea Actions d311fcc17c ci(staging): deploy atlantis d34652dd-debug 2026-02-13 15:44:14 +00:00
Gitea Actions 3f1ca12a8a ci(prod): deploy sorcerer v1.42.0 2026-02-13 15:43:42 +00:00
Gitea Actions bde7b6068a ci(staging): deploy plume d9375078-debug 2026-02-13 15:16:18 +00:00
Gitea Actions d317537799 ci(staging): deploy plume bfbc0be1-debug 2026-02-13 14:50:51 +00:00
Gitea Actions 8e5016284e ci(staging): deploy plume ff7983ec-debug 2026-02-13 14:44:28 +00:00
Gitea Actions 9ecf89c8d0 ci(staging): deploy plume c10e4b29-debug 2026-02-13 14:31:00 +00:00
mrtz 9416ea5512 feat(poseidon): Release beta 1.41.7 2026-02-12 17:26:41 +01:00
mrtz b12deba899 fix(poseidon): Wrong way 2026-02-12 17:21:33 +01:00
Gitea Actions 83e446568f ci(prod): deploy codex v1.41.7 2026-02-12 16:21:32 +00:00
Gitea Actions c222b4dd12 ci(prod): deploy atlantis v1.41.7 2026-02-12 16:21:27 +00:00
Gitea Actions c8ca2e7fca ci(prod): deploy sorcerer v1.41.7 2026-02-12 16:20:18 +00:00
Gitea Actions 93484df20d ci(prod): deploy atlantis v1.41.6 2026-02-12 16:13:51 +00:00
Gitea Actions a15c24ed00 ci(prod): deploy sorcerer v1.41.6 2026-02-12 16:12:42 +00:00
Gitea Actions db0918c40a ci(prod): deploy sorcerer v1.41.5 2026-02-12 16:03:53 +00:00
Gitea Actions 64e37101be ci(staging): deploy sorcerer 06e2e5b9-debug 2026-02-12 16:02:07 +00:00
mrtz 9de9a27845 fix(atlantis): Remove secret remover 2026-02-12 16:56:32 +01:00
mrtz 5e1d6109db fix(atlantis): Try again to remove secret 2026-02-12 16:54:18 +01:00
mrtz a86dec26ae fix(atlantis): Remove old 2026-02-12 16:52:52 +01:00
mrtz 5ce6701aff fix(atlantis): Remove secret 2026-02-12 16:52:33 +01:00
mrtz 0fc78f9f01 fix(poseidon): No Autosync 2026-02-12 16:51:06 +01:00
mrtz 53950f1397 fix(sorcerer): Remvoe unused 2026-02-12 16:49:36 +01:00
mrtz e9db733f06 fix(sorcerer): No autosync 2026-02-12 16:48:25 +01:00
mrtz 966c1bb92c fix(atlantis): Remove db secret and autosync 2026-02-12 16:47:22 +01:00
mrtz b72fd6270d feat(poseidon): Push to beta 2026-02-12 16:36:04 +01:00
mrtz 4e30fbd542 fix(hs): Move makai 2026-02-12 16:22:20 +01:00
mrtz 6da4d37558 fix(makai/docs): Move to hel1 2026-02-12 16:19:28 +01:00
mrtz 4391a3d7cf fix(hs): Correct ip 2026-02-12 15:58:10 +01:00
mrtz e397903a6f fix(hs): Persist hel1 in dc net 2026-02-12 15:46:27 +01:00
mrtz a935926cf8 fix(hs): Change docs IP 2026-02-12 15:44:03 +01:00
mrtz 0f595fc2dd fix(atlantis): No super user secret please 2026-02-12 15:41:37 +01:00
mrtz fadb7ca5a6 fix(docs): No more envs 2026-02-12 15:34:20 +01:00
mrtz f47fa7d20d fix(docs): Move to hel1 2026-02-12 15:31:00 +01:00
mrtz 82c56c04ba fix(atlantis): Remove secrets 2026-02-12 14:14:53 +01:00
mrtz 4fc5b4f7e7 fix(sorcere/atlantis): Naming beta sorcerer *.ekman 2026-02-12 14:11:13 +01:00
mrtz 1904f02d65 fix(sorcerer): Correct store 2026-02-12 13:39:27 +01:00
mrtz 72fd6c638f fix(sorcerer): Bump redis specs 2026-02-12 13:37:14 +01:00
mrtz 9433bd431e fix(atlantius): No masters and wrong rabbit 2026-02-12 13:32:40 +01:00
mrtz 2bdaab1bd7 fix(sorcerer): Undo 2026-02-12 13:31:02 +01:00
mrtz 7239c6118b fix(sorcerer): Naming 2026-02-12 13:29:54 +01:00
mrtz 0229238c0c fix(sorcerer): Add missing kustomize dirs 2026-02-12 13:28:34 +01:00
mrtz 74ea8d1d05 fix(sorcerer): Switch to rbd 2026-02-12 13:25:59 +01:00
mrtz 01cbc0f588 fix(sorcerer): Beta only 2026-02-12 13:23:21 +01:00
mrtz 0b1d686b4a feat(sorcerer): Add beta 2026-02-12 13:19:50 +01:00
mrtz 7b0fef382d fix(atlatnis): Use beta bindings 2026-02-12 12:52:00 +01:00
mrtz 6d2e053a0b fix(atlantis): Use beta redis 2026-02-12 12:11:46 +01:00
mrtz e0682e740c fix(atlantis): Use dragonfly in beta 2026-02-12 11:11:37 +01:00
mrtz a34a63089d fix(atlantis): Beta 2026-02-12 11:00:44 +01:00
mrtz cf94f5b9b7 fix(cilium+hs): Back to lb for ssh 2026-02-10 12:05:38 +01:00
mrtz f1eb50fcd5 fix(headscale): Move internal git to cilium 2026-02-10 10:42:20 +01:00
mrtz 0fea3410a2 fix(cilium): Disable hostnetwork
https://github.com/cilium/cilium/issues/38559
2026-02-10 10:28:07 +01:00
mrtz 8d63ca97c3 fix(cilium): STRING 2026-02-10 10:19:15 +01:00
mrtz 89c291dcd9 fix(cilium): Force gatewayclass creation 2026-02-10 10:18:09 +01:00
mrtz deb3769f25 fix(namecheap): Set correct apikey 2026-02-10 09:45:12 +01:00
mrtz ba5f392e92 fix(cilium): Make argo happy 2026-02-10 09:39:31 +01:00
mrtz 382f8a6de1 fix(cilium): Use DNS cert 2026-02-10 09:38:40 +01:00
mrtz d4adb6eb7c fix(cilium): Combine Gateways 2026-02-10 09:33:43 +01:00
mrtz e527d32697 fix(cilium): Typo 2026-02-10 09:30:15 +01:00
mrtz 124fafcaf7 fix(cilium): Correct hostname 2026-02-10 09:27:54 +01:00
mrtz 8efdf8d4c8 feat(cilium): Enable gateway 2026-02-10 09:24:43 +01:00
mrtz c39c188020 fix(certmgr): Enable gatewayApi 2026-02-09 16:45:33 +01:00
mrtz 7e5836383c fix(cilium): Bump patch and set upgradeComp 2026-02-09 16:23:16 +01:00
mrtz 09d5ff9ab0 fix(cilium): Bump version 2026-02-09 16:09:31 +01:00
mrtz 36ed342f53 fix(cilium): Without v? 2026-02-09 16:08:36 +01:00
mrtz 3e811e03aa fix: Back to without cilium 2026-02-09 16:05:06 +01:00
mrtz 9233a5307e fix(cilium): Add cilium 2026-02-09 16:03:44 +01:00
mrtz 655679794a fix(cilium): Oci requires v 2026-02-09 16:02:32 +01:00
mrtz d802941faa fix(cilium): Switch to oci chart
Why OCI Registries?

Storing Helm charts in OCI registries alongside container images offers several advantages:

- Signed charts — All charts are signed with cosign for verification
- Simpler setup — No repository configuration needed
- Digest pinning — Reference exact chart versions by SHA for reproducibility
- Unified tooling — Use the same registry infrastructure for images and charts
2026-02-09 16:00:26 +01:00
mrtz c61617f276 fix(argo): Add cilium and certmgr oci charts 2026-02-09 15:59:04 +01:00
mrtz e1c78c3703 fix(cilium): Audit mode for now 2026-02-09 15:27:03 +01:00
mrtz c483dfc18b fix(cilium): Enable proxy protocol on hel1 2026-02-09 15:22:31 +01:00
mrtz cb8b035fe0 fix(cilium): Version based on cluster 2026-02-09 15:19:11 +01:00
renovate-bot 03d458be7e Update twinproduction/gatus Docker tag to v5.34.0 2026-02-09 13:40:04 +00:00
mrtz 305ca06352 fix(cilium): Enable gateway api on hel1 2026-02-09 14:35:21 +01:00
renovate-bot 9d1e04abf4 Update Helm release mariadb-operator to v25.10.4 2026-02-09 13:20:58 +00:00
mrtz 6f60b8c110 fix: Only works in root 2026-02-09 13:34:42 +01:00
mrtz e71f983a0b fix: Move archmeister to attic 2026-02-09 13:10:15 +01:00
mrtz 01b154ba8b fix(plume): Use new git repo 2026-02-09 13:05:36 +01:00
mrtz 7639eee45b ci: Remove gitlab-ci 2026-02-09 13:03:36 +01:00
renovate-bot bb33b5ec60 Update cert-manager Docker tag to v1.19.3 2026-02-09 11:59:35 +00:00
Gitea Actions 67675d0146 ci(staging): deploy docs 5c4cda2e-debug 2026-02-06 18:15:53 +00:00
Gitea Actions 1f1639aeaf ci(staging): deploy plume f8f5e004-debug 2026-02-06 18:04:29 +00:00
Gitea Actions 80f5cba2e9 ci(staging): deploy plume cdc4dda5-debug 2026-02-06 17:59:12 +00:00
mrtz 2f7218bc99 fix(hs): Readd so whitelist in gitea works 2026-02-06 18:56:30 +01:00
mrtz ffbdde94f7 fix(hs): Persist values 2026-02-06 18:47:04 +01:00
mrtz d8883a4ec8 fix(hs): Remove Magic DNS for gitea 2026-02-06 18:46:21 +01:00
Gitea Actions 562b21e4b2 ci(staging): deploy plume ff19f1a6-debug 2026-02-06 17:39:18 +00:00
Gitea Actions 7250ad80b2 ci(staging): deploy plume 2a7a94fe-debug 2026-02-06 17:32:47 +00:00
mrtz 30b3103cd3 Release staging atlantis/sorcerer 2026-02-05 17:58:26 +01:00
mrtz 05f067e691 chore(docs): Bump again 2026-02-05 10:28:50 +01:00
mrtz dc93f45e32 chore: Bump docs 2026-02-05 10:28:21 +01:00
mrtz feefc87ea7 fix(attic): Remove 2026-02-03 17:13:14 +01:00
mrtz 513361728e fix(headscale): Remove spacing 2026-02-03 13:24:07 +01:00
mrtz 166ba8ae58 fix(argo): Switch to gitea for oceanbox cluster 2026-02-03 13:10:01 +01:00
mrtz faabcea369 fix(gatus): Disable vtn sorcerer 2026-02-03 12:37:16 +01:00
mrtz 8fc175b209 fix: Switch hel1 to gitea 2026-02-03 12:10:49 +01:00
mrtz 9bd7adb057 fix(argo): Add new url to sys 2026-02-03 11:03:10 +01:00
mrtz b41171d8d1 feat(ekman): Move to git.oceanbox.io 2026-02-03 11:00:39 +01:00
mrtz 8c14fb7034 chore(nginx): Bump to fix CVE 2026-02-03 10:15:11 +01:00
juselius fceba8ccea fix: add eli and hansi to ocenographers acl 2026-02-02 15:37:19 +01:00
juselius bfb16288b9 Merge branch 'main' of gitlab.com:oceanbox/manifests 2026-02-02 12:31:00 +01:00
juselius d90f43411f fix: migrate rossby manifests to gitea 2026-02-02 12:28:36 +01:00
mrtz a30a5f28fb fix: Use working env 2026-02-01 22:46:56 +01:00
mrtz e4cb8b36df fix(gitea/pf): Add mail 2026-02-01 22:40:08 +01:00
juselius ff956948bf fix: add hel1 lb to whitelist 2026-02-01 15:18:36 +01:00
juselius 18e3815e03 fix: change attic source to git.oceanbox.io 2026-02-01 15:12:28 +01:00
juselius 2dfca9bcbc fix: add port 22 to hel1 for oceanographers 2026-02-01 14:56:52 +01:00
mrtz 5a013b42ba fix: Add gitea to sys-proj and whitelist 2026-02-01 11:56:37 +01:00
mrtz 5cb695e096 fix(gitea): Don't use azure scopes 2026-02-01 11:19:12 +01:00
mrtz 3b7582edd0 fix(gitea): TRy new claim 2026-02-01 11:04:04 +01:00
mrtz 49321a0fa0 fix(gitea): Set admins 2026-02-01 10:52:15 +01:00
mrtz 9b55685967 fix(gitea): Add ekman/oceanbox to whitelist 2026-02-01 10:34:41 +01:00
mrtz d257651195 fix(gitea): Only link on login 2026-02-01 10:33:35 +01:00
mrtz 63b6d99955 chore: Bump makai 2026-01-29 19:06:09 +01:00
mrtz a48077f9b3 fifix(gitea): Enable registrations for nickname and email 2026-01-29 17:40:34 +01:00
Radovan Bast 9c60baeff9 ci: docs 2026-01-29 09:57:25 +00:00
mrtz d30515ab76 ci: docs 2026-01-29 09:41:42 +00:00
mrtz 85117976c3 ci: docs 2026-01-29 09:32:30 +00:00
mrtz 2ec369f428 ci: docs 2026-01-29 09:29:39 +00:00
mrtz aadf8995e6 ci: docs 2026-01-29 09:27:09 +00:00
mrtz 53776f68dd ci: docs 2026-01-29 09:18:51 +00:00
mrtz d4a56867e5 fix: Add docs to headscale 2026-01-29 10:00:56 +01:00
mrtz 8ae4f2c854 fix: Set registry path 2026-01-29 09:43:47 +01:00
mrtz ee21078412 fix: docs 2026-01-29 09:40:34 +01:00
mrtz a0e69a053d ci: docs 2026-01-29 08:38:15 +00:00
mrtz 3bae9f5065 fix: makai -> docs 2026-01-29 09:29:01 +01:00
mrtz cf816e621b feat: Add docs 2026-01-29 09:26:53 +01:00
Radovan Bast b71da56da7 ci: makai 2026-01-28 12:35:09 +00:00
simkir 3b6ed8e544 ci: makai 2026-01-28 11:48:46 +00:00
mrtz 9cbb16ae08 fix(gitea): Increase session lifetime 2026-01-27 21:04:23 +01:00
mrtz 708a44fa9b fix(gitea): Typo 2026-01-26 17:39:33 +01:00
mrtz f4a53934c2 fix(gitea): remove unused 2026-01-26 17:30:44 +01:00
mrtz 79ad206db3 fix(gitea): Reset 2026-01-26 17:28:56 +01:00
mrtz 6c850b312c fix(gitae):... 2026-01-26 17:27:36 +01:00
mrtz d1c4b25499 fix(gitea): More secrets 2026-01-26 17:25:11 +01:00
mrtz 265c370787 fix(gitea): Also for attachements 2026-01-26 17:23:27 +01:00
mrtz ed017894b5 fix(gitea): Dup 2026-01-26 17:21:33 +01:00
mrtz 9f0503bbf3 fix(gitea): Use env 2026-01-26 17:18:29 +01:00
mrtz 5aa937acb3 fix(gitea): All in buckets 2026-01-26 17:16:08 +01:00
mrtz 548c942b42 fix(hs): Add new gitea 2026-01-26 09:42:38 +01:00
mrtz b49f8dc005 fix(gitea): Change to public DNS with private IP 2026-01-26 08:55:16 +01:00
mrtz 955424cc70 Merge branch 'renovate/gatus-1.x' into 'main'
Update Helm release gatus to v1.4.5

See merge request oceanbox/manifests!71
2026-01-25 21:08:35 +01:00
mrtz 6e7fa3a642 fix(gitea): Cleanup 2026-01-25 20:38:43 +01:00
mrtz f6d6282aea chore(gitea): Bump 2026-01-25 11:45:13 +01:00
Renovate Bot f20375c7ca Update Helm release gatus to v1.4.5 2026-01-25 08:58:18 +00:00
mrtz 127722c4b4 fix(argo): Add postfix 2026-01-24 16:51:12 +01:00
mrtz d345172d8a fix(postfix): Move into manifests 2026-01-24 16:49:33 +01:00
mrtz e55212a859 fix(postfix): Plain 2026-01-24 16:47:38 +01:00
mrtz 8a39fb8afc Intiall Postfix setup :/ 2026-01-24 15:52:10 +01:00
mrtz 212739ae94 Merge branch 'automated/npins-update-20260123' into 'main'
chore: update npins dependencies

See merge request oceanbox/manifests!70
2026-01-24 08:29:11 +01:00
mrtz a940a2fedf fix(gitea): More metrics and NodePort 2026-01-23 20:03:56 +01:00
mrtz 38264b4879 fix(gitea): LB 2026-01-23 19:43:51 +01:00
mrtz 941e98abb8 fix(gitea): Add push to create and lb 2026-01-23 19:42:51 +01:00
mrtz 09b8030d03 chore: update npins dependencies
Automated update of Nix dependencies via npins.

    Updated packages:
    +      "revision": "a1ef738813b15cf8ec759bdff5761b027e3e1d23",
+      "hash": "sha256-Efs3VUPelRduf3PpfPP2ovEB4CXT7vHf8W+xc49RL/U="
+      "hash": "sha256-XH6awru9NnBc/m+2YhRNT8r1PAKEiPGF3gs//F3ods0="
2026-01-23 15:01:05 +00:00
mrtz e7ba9bf363 fix(gitea): Via proxy protocol 2026-01-22 17:36:52 +01:00
mrtz 3a188746de fix(gitea): Secure cookie 2026-01-22 17:32:46 +01:00
mrtz f315c5019b fix(gitea): Rootless-Rootless 2026-01-22 16:31:00 +01:00
mrtz 6213f4ce2e fix(gitea): Rootless 2026-01-22 16:28:01 +01:00
mrtz 6d61ba9243 chore(gitea): Bump 2026-01-22 16:23:26 +01:00
mrtz ead05c101d fix(gitea|hs): Cool git domain 2026-01-22 16:16:38 +01:00
mrtz 44a93f15a6 fix(hs): New LB for git 2026-01-22 16:15:51 +01:00
mrtz 97d21660b1 fix(gitea): Back to svc for now 2026-01-22 15:46:31 +01:00
mrtz 9ff1f8aafc fix(gitea): Nodeport 2026-01-22 15:41:49 +01:00
mrtz f9cf9ad9b1 fix(gitea): Don't overwrite http LB 2026-01-22 15:28:16 +01:00
mrtz 807d9bca35 fix(gitea): Enabled by default 2026-01-22 15:26:28 +01:00
mrtz bf15426393 fix(gitea): LB take two 2026-01-22 15:25:14 +01:00
mrtz 21c57dac36 fix(gitea): Add LB 2026-01-22 15:24:05 +01:00
mrtz 1fd177b73a fix(gitea): Type again 2026-01-22 15:01:45 +01:00
mrtz 9d5b144d2d fix(gitea): Set nodePort 2026-01-22 14:59:01 +01:00
mrtz 24dfb63714 fix(gitea): Bump nodeport 2026-01-22 14:52:47 +01:00
mrtz e467799bd6 fix(gitea): Add admin secret and nodeport 2026-01-22 14:50:07 +01:00
mrtz ad258bf3fe feat: Add Gitea 2026-01-22 12:31:52 +01:00
mrtz 0801c0c6c7 fix: Remove attic reference 2026-01-22 09:57:37 +01:00
mrtz 924c7c74a4 fix(rabbitmq): Bump memroy 2026-01-22 08:42:42 +01:00
mrtz 1b766341cb ci: atlantis 2026-01-21 12:53:15 +00:00
mrtz b8c199718a fix(forgejo): Increase caching and don't send confirmation emails 2026-01-21 13:48:38 +01:00
mrtz b77b968420 fix(forgejo): Add metrics 2026-01-21 13:39:03 +01:00
mrtz 449a0f0e60 ci: atlantis 2026-01-21 09:42:26 +00:00
mrtz b1584703d1 fix: Remove nexus helmfile 2026-01-21 09:37:24 +01:00
mrtz d3ecef770f fix: Remove unused values 2026-01-21 09:36:29 +01:00
mrtz f43588cb93 fix(cilium): Autosync of by default 2026-01-21 09:03:41 +01:00
mrtz be985a1ac4 Merge branch 'renovate/forgejo-16.x' into 'main'
Update forgejo Docker tag to v16.0.1

See merge request oceanbox/manifests!68
2026-01-20 19:09:10 +01:00
mrtz 6a3e3855df Merge branch 'renovate/argocd-apps-2.x' into 'main'
Update Helm release argocd-apps to v2.0.4

See merge request oceanbox/manifests!69
2026-01-20 19:08:50 +01:00
Renovate Bot da5a2ea142 Update Helm release argocd-apps to v2.0.4 2026-01-20 18:04:14 +00:00
Renovate Bot d3db1db7c5 Update forgejo Docker tag to v16.0.1 2026-01-20 18:04:09 +00:00
mrtz 411550cc23 devel: Remove vCluster
Now available on the `vcluster` branch
2026-01-20 18:53:17 +01:00
156 changed files with 2046 additions and 756 deletions
-54
View File
@@ -1,54 +0,0 @@
# yaml-language-server: $schema=https://gitlab.com/gitlab-org/gitlab/-/raw/master/app/assets/javascripts/editor/schema/ci.json
default:
tags:
- nix
include:
- project: oceanbox/gitlab-ci
ref: v4.5
file: template/Base.gitlab-ci.yml
# stages:
# - release
# image:
# name: alpine/helm:latest
# entrypoint: ["/bin/bash", "-c"]
# release:
# stage: release
# rules:
# - if: "$CI_COMMIT_BRANCH =~ /^main/"
# when: always
# - when: never
# script:
# - |
# cd $CI_PROJECT_DIR
# for i in $(git show --pretty="" --name-only | grep '^charts/.*/Chart.yaml' | cut -d/ -f2); do
# pack=$(helm package ./charts/$i | sed 's/Success.*: \(.*\)/\1/')
# if [ ! -z $pack ]; then
# chart=$(basename $pack)
# curl --request POST \
# --user gitlab-ci-token:$CI_JOB_TOKEN \
# --form "chart=@${chart}" \
# "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/helm/api/stable/charts"
# fi
# done
# rebuild:
# stage: release
# rules:
# - when: manual
# allow_failure: true
# script:
# - |
# cd $CI_PROJECT_DIR
# for i in $(find ./charts -maxdepth 2 -name Chart.yaml | cut -d/ -f3); do
# pack=$(helm package ./charts/$i | sed 's/Success.*: \(.*\)/\1/')
# if [ ! -z $pack ]; then
# chart=$(basename $pack)
# curl --request POST \
# --user gitlab-ci-token:$CI_JOB_TOKEN \
# --form "chart=@${chart}" \
# "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/helm/api/stable/charts"
# fi
# done
+1 -1
View File
@@ -1,6 +1,6 @@
#!/bin/sh
img=registry.gitlab.com/oceanbox/manifests/helmfile-cmp
img=git.oceanbox.io/platform/manifests/helmfile-cmp
tag=${1:-latest}
docker build -t "${img}":"${tag}" .
+2 -2
View File
@@ -4,10 +4,10 @@ description: Atlantis map and simulation service
type: application
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
version: v1.35.2
version: v1.42.2
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application.
appVersion: v1.35.2
appVersion: v1.42.2
dependencies:
- name: diagrid-dashboard
version: "0.1.0"
+1 -2
View File
@@ -4,7 +4,7 @@
replicaCount: 1
image:
repository: registry.gitlab.com/oceanbox/poseidon/atlantis
tag: v1.35.2
tag: v1.42.2
pullPolicy: IfNotPresent
init:
enabled: false
@@ -116,6 +116,5 @@ serviceMonitor:
nodeSelector: {}
tolerations: []
affinity: {}
diagrid-dashboard:
enabled: false
+2 -2
View File
@@ -13,9 +13,9 @@ type: application
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: v1.35.2
version: v1.42.2
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes.
appVersion: "v1.35.2"
appVersion: "v1.42.2"
+2 -2
View File
@@ -6,11 +6,11 @@
replicaCount: 1
# This sets the container image more information can be found here: https://kubernetes.io/docs/concepts/containers/images/
image:
repository: registry.gitlab.com/oceanbox/poseidon/codex
repository: git.oceanbox.io/oceanbox/poseidon/codex
# This sets the pull policy for images.
pullPolicy: IfNotPresent
# Overrides the image tag whose default is the chart appVersion.
tag: v1.35.2
tag: v1.42.2
# This is for the secrets for pulling an image from a private repository more information can be found here: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
imagePullSecrets:
- name: gitlab-pull-secret
+26
View File
@@ -0,0 +1,26 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/
base/
prod/
staging/
review/
+18
View File
@@ -0,0 +1,18 @@
apiVersion: v2
name: docs
description: Oceanbox Documentation
# A chart can be either an 'application' or a 'library' chart.
#
# Application charts are a collection of templates that can be packaged into versioned archives
# to be deployed.
#
# Library charts provide useful utilities or functions for the chart developer. They're included as
# a dependency of application charts to inject those utilities and functions into the rendering
# pipeline. Library charts do not define any templates and therefore cannot be deployed.
type: application
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
version: v0.1.0
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application.
appVersion: v0.1.0
+22
View File
@@ -0,0 +1,22 @@
1. Get the application URL by running these commands:
{{- if .Values.ingress.enabled }}
{{- range $host := .Values.ingress.hosts }}
{{- range .paths }}
http{{ if $.Values.ingress.tls }}s{{ end }}://{{ $host.host }}{{ .path }}
{{- end }}
{{- end }}
{{- else if contains "NodePort" .Values.service.type }}
export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "docs.fullname" . }})
export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}")
echo http://$NODE_IP:$NODE_PORT
{{- else if contains "LoadBalancer" .Values.service.type }}
NOTE: It may take a few minutes for the LoadBalancer IP to be available.
You can watch the status of by running 'kubectl get --namespace {{ .Release.Namespace }} svc -w {{ include "docs.fullname" . }}'
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "docs.fullname" . }} --template "{{"{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"}}")
echo http://$SERVICE_IP:{{ .Values.service.port }}
{{- else if contains "ClusterIP" .Values.service.type }}
export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "docs.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
export CONTAINER_PORT=$(kubectl get pod --namespace {{ .Release.Namespace }} $POD_NAME -o jsonpath="{.spec.containers[0].ports[0].containerPort}")
echo "Visit http://127.0.0.1:8080 to use your application"
kubectl --namespace {{ .Release.Namespace }} port-forward $POD_NAME 8080:$CONTAINER_PORT
{{- end }}
+63
View File
@@ -0,0 +1,63 @@
{{/* vim: set filetype=mustache: */}}
{{/*
Expand the name of the chart.
*/}}
{{- define "docs.name" -}}
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
{{- end }}
{{/*
Create a default fully qualified app name.
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
If release name contains chart name it will be used as a full name.
*/}}
{{- define "docs.fullname" -}}
{{- if .Values.fullnameOverride }}
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
{{- else }}
{{- $name := default .Chart.Name .Values.nameOverride }}
{{- if contains $name .Release.Name }}
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
{{- else }}
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
{{- end }}
{{- end }}
{{- end }}
{{/*
Create chart name and version as used by the chart label.
*/}}
{{- define "docs.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
{{- end }}
{{/*
Common labels
*/}}
{{- define "docs.labels" -}}
helm.sh/chart: {{ include "docs.chart" . }}
{{ include "docs.selectorLabels" . }}
{{- if .Chart.AppVersion }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
{{- end }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- end }}
{{/*
Selector labels
*/}}
{{- define "docs.selectorLabels" -}}
app.kubernetes.io/name: {{ include "docs.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}
{{/*
Create the name of the service account to use
*/}}
{{- define "docs.serviceAccountName" -}}
{{- if .Values.serviceAccount.create -}}
{{ default (include "docs.fullname" .) .Values.serviceAccount.name }}
{{- else -}}
{{ default "default" .Values.serviceAccount.name }}
{{- end -}}
{{- end -}}
+24
View File
@@ -0,0 +1,24 @@
{{- if .Values.cluster.enabled -}}
apiVersion: postgresql.cnpg.io/v1
kind: Cluster
metadata:
name: {{ include "docs.fullname" . }}
annotations:
linkerd.io/inject: disabled
labels:
{{- include "docs.labels" . | nindent 4 }}
spec:
instances: {{ .Values.cluster.instances | default "2" }}
# Example of rolling update strategy:
# - unsupervised: automated update of the primary once all
# replicas have been upgraded (default)
# - supervised: requires manual supervision to perform
# the switchover of the primary
primaryUpdateStrategy: unsupervised
backup:
retentionPolicy: {{ .Values.cluster.backupRetention | default "60d" }}
storage:
size: {{ .Values.cluster.size | default "5Gi" }}
{{- end }}
+84
View File
@@ -0,0 +1,84 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "docs.fullname" . }}
labels:
{{- include "docs.labels" . | nindent 4 }}
spec:
{{- if not .Values.autoscaling.enabled }}
replicas: {{ .Values.replicaCount }}
{{- end }}
selector:
matchLabels:
{{- include "docs.selectorLabels" . | nindent 6 }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "docs.selectorLabels" . | nindent 8 }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
serviceAccountName: {{ include "docs.serviceAccountName" . }}
securityContext:
{{- toYaml .Values.podSecurityContext | nindent 8 }}
containers:
- name: {{ .Chart.Name }}
securityContext:
{{- toYaml .Values.securityContext | nindent 12 }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
- name: http
containerPort: {{ .Values.service.port }}
protocol: TCP
env:
- name: LOG_LEVEL
value: "3"
livenessProbe:
httpGet:
path: /
port: http
readinessProbe:
httpGet:
path: /
port: http
resources:
{{- toYaml .Values.resources | nindent 12 }}
volumeMounts:
- name: data
mountPath: /data
{{- if .Values.init.enabled }}
initContainers:
- name: init
image: {{ .Values.init.image }}
command: {{- toYaml .Values.init.command | nindent 10 }}
volumeMounts:
- name: data
mountPath: /data
{{- end }}
volumes:
- name: data
{{- if .Values.persistence.enabled }}
persistentVolumeClaim:
claimName: {{ .Values.persistence.existingClaim | default (include "docs.fullname" .) }}
{{- else }}
emptyDir: {}
{{- end }}
{{- with .Values.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}
+28
View File
@@ -0,0 +1,28 @@
{{- if .Values.autoscaling.enabled }}
apiVersion: autoscaling/v2beta1
kind: HorizontalPodAutoscaler
metadata:
name: {{ include "docs.fullname" . }}
labels:
{{- include "docs.labels" . | nindent 4 }}
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: {{ include "docs.fullname" . }}
minReplicas: {{ .Values.autoscaling.minReplicas }}
maxReplicas: {{ .Values.autoscaling.maxReplicas }}
metrics:
{{- if .Values.autoscaling.targetCPUUtilizationPercentage }}
- type: Resource
resource:
name: cpu
targetAverageUtilization: {{ .Values.autoscaling.targetCPUUtilizationPercentage }}
{{- end }}
{{- if .Values.autoscaling.targetMemoryUtilizationPercentage }}
- type: Resource
resource:
name: memory
targetAverageUtilization: {{ .Values.autoscaling.targetMemoryUtilizationPercentage }}
{{- end }}
{{- end }}
+61
View File
@@ -0,0 +1,61 @@
{{- if .Values.ingress.enabled -}}
{{- $fullName := include "docs.fullname" . -}}
{{- $svcPort := .Values.service.port -}}
{{- if and .Values.ingress.className (not (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion)) }}
{{- if not (hasKey .Values.ingress.annotations "kubernetes.io/ingress.class") }}
{{- $_ := set .Values.ingress.annotations "kubernetes.io/ingress.class" .Values.ingress.className}}
{{- end }}
{{- end }}
{{- if semverCompare ">=1.19-0" .Capabilities.KubeVersion.GitVersion -}}
apiVersion: networking.k8s.io/v1
{{- else if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}}
apiVersion: networking.k8s.io/v1beta1
{{- else -}}
apiVersion: extensions/v1beta1
{{- end }}
kind: Ingress
metadata:
name: {{ $fullName }}
labels:
{{- include "docs.labels" . | nindent 4 }}
{{- with .Values.ingress.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
{{- if and .Values.ingress.className (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion) }}
ingressClassName: {{ .Values.ingress.className }}
{{- end }}
{{- if .Values.ingress.tls }}
tls:
{{- range .Values.ingress.tls }}
- hosts:
{{- range .hosts }}
- {{ . | quote }}
{{- end }}
secretName: {{ .secretName }}
{{- end }}
{{- end }}
rules:
{{- range .Values.ingress.hosts }}
- host: {{ .host | quote }}
http:
paths:
{{- range .paths }}
- path: {{ .path }}
{{- if and .pathType (semverCompare ">=1.18-0" $.Capabilities.KubeVersion.GitVersion) }}
pathType: {{ .pathType }}
{{- end }}
backend:
{{- if semverCompare ">=1.19-0" $.Capabilities.KubeVersion.GitVersion }}
service:
name: {{ $fullName }}
port:
number: {{ $svcPort }}
{{- else }}
serviceName: {{ $fullName }}
servicePort: {{ $svcPort }}
{{- end }}
{{- end }}
{{- end }}
{{- end }}
+25
View File
@@ -0,0 +1,25 @@
{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) }}
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: {{ template "docs.fullname" . }}
{{- with .Values.persistence.annotations }}
annotations:
{{ toYaml . | indent 4 }}
{{- end }}
labels:
{{ include "docs.labels" . | indent 4 }}
spec:
accessModes:
- {{ .Values.persistence.accessMode | quote }}
resources:
requests:
storage: {{ .Values.persistence.size | quote }}
{{- if .Values.persistence.storageClass }}
{{- if (eq "-" .Values.persistence.storageClass) }}
storageClassName: ""
{{- else }}
storageClassName: "{{ .Values.persistence.storageClass }}"
{{- end }}
{{- end }}
{{- end }}
+15
View File
@@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
name: {{ include "docs.fullname" . }}
labels:
{{- include "docs.labels" . | nindent 4 }}
spec:
type: {{ .Values.service.type }}
ports:
- port: {{ .Values.service.port }}
targetPort: http
protocol: TCP
name: http
selector:
{{- include "docs.selectorLabels" . | nindent 4 }}
+12
View File
@@ -0,0 +1,12 @@
{{- if .Values.serviceAccount.create -}}
apiVersion: v1
kind: ServiceAccount
metadata:
name: {{ include "docs.serviceAccountName" . }}
labels:
{{- include "docs.labels" . | nindent 4 }}
{{- with .Values.serviceAccount.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- end }}
+82
View File
@@ -0,0 +1,82 @@
# Default values for docs.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
replicaCount: 1
image:
repository: git.oceanbox.io/oceanbox/documentation/docs
tag: v0.1.0
pullPolicy: IfNotPresent
init:
enabled: false
image: ubuntu:rolling
command: ["/bin/sh", "-c", "true"]
env:
- name: LOG_LEVEL
value: "2"
- name: APP_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: APP_NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
imagePullSecrets:
- name: gitea-pull-secret
nameOverride: ""
fullnameOverride: ""
serviceAccount:
create: true
# Annotations to add to the service account
annotations: {}
# The name of the service account to use.
# If not set and create is true, a name is generated using the fullname template
name: ""
podAnnotations: {}
podSecurityContext:
fsGroup: 2000
securityContext:
capabilities:
drop:
- ALL
readOnlyRootFilesystem: false
runAsNonRoot: false
runAsUser: 0
service:
type: ClusterIP
port: 8080
ingress:
enabled: true
className: nginx
persistence:
enabled: false
size: 1G
storageClass: ""
accessMode: ReadWriteOnce
cluster:
enabled: false
instances: 2
backupEnabled: true
backupRetention: 60d
size: 5Gi
resources: {}
# We usually recommend not to specify default resources and to leave this as a conscious
# choice for the user. This also increases chances charts run on environments with little
# resources, such as Minikube. If you do want to specify resources, uncomment the following
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
autoscaling:
enabled: false
minReplicas: 1
maxReplicas: 100
targetCPUUtilizationPercentage: 80
# targetMemoryUtilizationPercentage: 80
nodeSelector: {}
tolerations: []
affinity: {}
+1 -1
View File
@@ -3,7 +3,7 @@
# Declare variables to be passed into your templates.
replicaCount: 1
image:
repository: registry.gitlab.com/oceanbox/makai
repository: git.oceanbox.io/oceanbox/makai/makai
tag: v0.1.0
pullPolicy: IfNotPresent
init:
+2 -2
View File
@@ -4,7 +4,7 @@ description: A Helm chart for Kubernetes
type: application
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
version: v1.6.7
version: v1.6.13
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application.
appVersion: v1.6.7
appVersion: v1.6.13
+2 -2
View File
@@ -3,8 +3,8 @@
# Declare variables to be passed into your templates.
replicaCount: 1
image:
repository: registry.gitlab.com/oceanbox/plume
tag: v1.6.7
repository: git.oceanbox.io/oceanbox/plume/plume
tag: v1.6.13
pullPolicy: IfNotPresent
init:
enabled: false
+2 -2
View File
@@ -4,10 +4,10 @@ description: A Helm chart for Kubernetes
type: application
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
version: v1.35.2
version: v1.42.2
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application.
appVersion: v1.35.2
appVersion: v1.42.2
dependencies:
- name: diagrid-dashboard
version: "0.1.0"
+1 -2
View File
@@ -5,7 +5,7 @@
replicaCount: 1
image:
repository: registry.gitlab.com/oceanbox/poseidon/sorcerer
tag: v1.35.2
tag: v1.42.2
pullPolicy: IfNotPresent
init:
enabled: false
@@ -108,7 +108,6 @@ serviceMonitor:
nodeSelector: {}
tolerations: []
affinity: {}
diagrid-dashboard:
enabled: false
statestore:
+7
View File
@@ -20,4 +20,11 @@ environments:
- ../values/*/env.yaml.gotmpl
- ../values/*/env-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml.gotmpl
missingFileHandler: Info
beta:
values:
- ../values/env.yaml
- ../values/env-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml
- ../values/*/env.yaml.gotmpl
- ../values/*/env-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml.gotmpl
missingFileHandler: Info
+1 -1
View File
@@ -27,7 +27,7 @@ releases:
- name: argocd-apps
namespace: argocd
chart: argo/argocd-apps
version: 2.0.3
version: 2.0.4
condition: argo.apps.enabled
values:
- ../values/argo/values/apps.yaml.gotmpl
+1 -1
View File
@@ -13,7 +13,7 @@ releases:
- name: cert-manager
namespace: cert-manager
chart: cert-manager/cert-manager
version: v1.19.2
version: v1.19.3
condition: cert_manager.enabled
values:
- ../values/cert-manager/values/cert-manager.yaml.gotmpl
+4 -4
View File
@@ -3,7 +3,8 @@ bases:
repositories:
- name: cilium
url: 'https://helm.cilium.io'
oci: true
url: 'quay.io/cilium/charts'
commonLabels:
tier: system
@@ -15,11 +16,11 @@ releases:
- name: cilium
namespace: kube-system
chart: cilium/cilium
version: 1.16.2
version: {{ if eq (requiredEnv "ARGOCD_ENV_CLUSTER_NAME") "hel1" }}1.18.6{{ else }}1.16.19{{ end }}
condition: cilium.enabled
values:
- ../values/cilium/values/cilium.yaml.gotmpl
- ../values/cilium/values/cilium-{{ .Environment.Name }}.yaml.gotmpl
- ../values/cilium/values/cilium-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml.gotmpl
missingFileHandler: Info
- name: manifests
namespace: cilium
@@ -55,4 +56,3 @@ releases:
- '{{`{{ .Environment.Name }}`}}'
- ../values/cilium/cilium-manifests
- manifests
+38
View File
@@ -0,0 +1,38 @@
bases:
- ../envs/environments.yaml.gotmpl
commonLabels:
tier: oceanbox
releases:
- name: docs
namespace: docs
chart: ../charts/docs
condition: docs.enabled
values:
- ../values/docs/values/values.yaml
- ../values/docs/values/values-{{ .Environment.Name }}.yaml
postRenderer: ../bin/kustomizer
postRendererArgs:
- ../values/docs/kustomize/{{ .Environment.Name }}
missingFileHandler: Info
- name: manifests
namespace: docs
chart: manifests
condition: docs.enabled
missingFileHandler: Info
values:
- ../values/env.yaml
- ../values/env-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml
- ../values/docs/env.yaml.gotmpl
- ../values/docs/env-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml.gotmpl
hooks:
- events: [ prepare, cleanup ]
showlogs: true
command: ../bin/helmify
args:
- '{{`{{ if eq .Event.Name "prepare" }}build{{ else }}clean{{ end }}`}}'
- '{{`{{ .Release.Chart }}`}}'
- '{{`{{ .Environment.Name }}`}}'
- ../values/docs/manifests
- manifests
+1 -1
View File
@@ -13,7 +13,7 @@ releases:
- name: dragonfly
namespace: dragonfly
chart: dragonfly/dragonfly-operator
version: v1.3.1
version: v1.4.0
condition: dragonfly.enabled
values:
- ../values/dragonfly/values/dragonfly.yaml.gotmpl
+43
View File
@@ -0,0 +1,43 @@
bases:
- ../envs/environments.yaml.gotmpl
#repositories:
#- name: drupal
# url: "https://drupalwxt.github.io/helm-drupal/index.yaml"
commonLabels:
tier: system
releases:
- name: drupal
namespace: drupal
#chart: drupal/drupal
#version: v1.3.0
condition: drupal.enabled
values:
- ../values/drupal/values/drupal.yaml.gotmpl
- ../values/drupal/values/drupal-{{ .Environment.Name }}.yaml.gotmpl
postRenderer: ../bin/kustomizer
postRendererArgs:
- ../values/drupal/kustomize/{{ .Environment.Name }}
missingFileHandler: Info
- name: manifests
namespace: drupal
chart: manifests
condition: drupal.enabled
missingFileHandler: Info
values:
- ../values/env.yaml
- ../values/env-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml
- ../values/drupal/env.yaml.gotmpl
- ../values/drupal/env-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml.gotmpl
hooks:
- events: [ prepare, cleanup ]
showlogs: true
command: ../bin/helmify
args:
- '{{`{{ if eq .Event.Name "prepare" }}build{{ else }}clean{{ end }}`}}'
- '{{`{{ .Release.Chart }}`}}'
- '{{`{{ .Environment.Name }}`}}'
- ../values/drupal/manifests
- manifests
+1 -1
View File
@@ -12,7 +12,7 @@ releases:
- name: gatus
namespace: uptime
chart: gatus/gatus
version: 1.4.4
version: 1.4.5
condition: gatus.enabled
values:
- ../values/gatus/values/values.yaml
@@ -2,35 +2,36 @@ bases:
- ../envs/environments.yaml.gotmpl
repositories:
- name: stevehipwell
url: 'https://stevehipwell.github.io/helm-charts/'
- name: gitea
oci: true
url: docker.gitea.com/charts
commonLabels:
tier: system
releases:
- name: nexus3
namespace: nexus
chart: stevehipwell/nexus3
version: 5.9.0
condition: nexus.enabled
- name: gitea
namespace: gitea
chart: gitea/gitea
version: 12.5.0
condition: gitea.enabled
values:
- ../values/nexus/values/nexus.yaml.gotmpl
- ../values/nexus/values/nexus-{{ .Environment.Name }}.yaml.gotmpl
- ../values/gitea/values/values.yaml
- ../values/gitea/values/values-{{ .Environment.Name }}.yaml
postRenderer: ../bin/kustomizer
postRendererArgs:
- ../values/nexus/kustomize/{{ .Environment.Name }}
- ../values/gitea/kustomize/{{ .Environment.Name }}
missingFileHandler: Info
- name: manifests
namespace: nexus
namespace: gitea
chart: manifests
condition: nexus.enabled
condition: gitea.enabled
missingFileHandler: Info
values:
- ../values/env.yaml
- ../values/env-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml
- ../values/nexus/env.yaml.gotmpl
- ../values/nexus/env-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml.gotmpl
- ../values/gitea/env.yaml.gotmpl
- ../values/gitea/env-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml.gotmpl
hooks:
- events: [ prepare, cleanup ]
showlogs: true
@@ -39,5 +40,5 @@ releases:
- '{{`{{ if eq .Event.Name "prepare" }}build{{ else }}clean{{ end }}`}}'
- '{{`{{ .Release.Chart }}`}}'
- '{{`{{ .Environment.Name }}`}}'
- ../values/nexus/manifests
- ../values/gitea/manifests
- manifests
+1 -1
View File
@@ -12,7 +12,7 @@ releases:
- name: ingress-nginx
namespace: ingress-nginx
chart: ingress-nginx/ingress-nginx
version: 4.14.1
version: 4.14.3
condition: nginx.enabled
values:
- ../values/ingress-nginx/values/ingress-nginx.yaml.gotmpl
+2 -2
View File
@@ -6,7 +6,7 @@ commonLabels:
releases:
- name: makai
namespace: {{ .Environment.Name }}-makai
namespace: makai
chart: ../charts/makai
condition: makai.enabled
values:
@@ -17,7 +17,7 @@ releases:
- ../values/makai/kustomize/{{ .Environment.Name }}
missingFileHandler: Info
- name: manifests
namespace: {{ .Environment.Name }}-makai
namespace: makai
chart: manifests
condition: makai.enabled
missingFileHandler: Info
+1 -1
View File
@@ -12,7 +12,7 @@ releases:
- name: mariadb-operator
namespace: mariadb-operator
chart: mariadb-operator/mariadb-operator
version: 25.10.3
version: 25.10.4
condition: mariadb_operator.enabled
values:
- ../values/mariadb-operator/values/mariadb-operator.yaml.gotmpl
+1 -1
View File
@@ -16,7 +16,7 @@ releases:
namespace: {{ .Environment.Name }}-openfga
{{- end }}
chart: openfga/openfga
version: 0.2.50
version: 0.2.54
condition: openfga.enabled
values:
- ../values/openfga/values/values.yaml
@@ -12,7 +12,7 @@ releases:
- name: opentelemetry-collector
namespace: otel
chart: open-telemetry/opentelemetry-collector
version: 0.142.1
version: 0.145.0
condition: otel.enabled
values:
- ../values/opentelemetry-collector/values/values.yaml
@@ -2,36 +2,35 @@ bases:
- ../envs/environments.yaml.gotmpl
repositories:
- name: forgejo
oci: true
url: code.forgejo.org/forgejo-helm
- name: postfix
url: https://bokysan.github.io/docker-postfix
commonLabels:
tier: system
releases:
- name: forgejo
namespace: forgejo
chart: forgejo/forgejo
version: 16.0.0
condition: forgejo.enabled
- name: postfix
namespace: postfix
chart: postfix/mail
version: 5.1.0
condition: postfix.enabled
values:
- ../values/forgejo/values/values.yaml
- ../values/forgejo/values/values-{{ .Environment.Name }}.yaml
- ../values/postfix/values/values.yaml
- ../values/postfix/values/values-{{ .Environment.Name }}.yaml
postRenderer: ../bin/kustomizer
postRendererArgs:
- ../values/forgejo/kustomize/{{ .Environment.Name }}
- ../values/postfix/kustomize/{{ .Environment.Name }}
missingFileHandler: Info
- name: manifests
namespace: forgejo
namespace: postfix
chart: manifests
condition: forgejo.enabled
condition: postfix.enabled
missingFileHandler: Info
values:
- ../values/env.yaml
- ../values/env-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml
- ../values/forgejo/env.yaml.gotmpl
- ../values/forgejo/env-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml.gotmpl
- ../values/postfix/env.yaml.gotmpl
- ../values/postfix/env-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml.gotmpl
hooks:
- events: [ prepare, cleanup ]
showlogs: true
@@ -40,5 +39,5 @@ releases:
- '{{`{{ if eq .Event.Name "prepare" }}build{{ else }}clean{{ end }}`}}'
- '{{`{{ .Release.Chart }}`}}'
- '{{`{{ .Environment.Name }}`}}'
- ../values/forgejo/manifests
- ../values/postfix/manifests
- manifests
+1 -1
View File
@@ -27,7 +27,7 @@ releases:
- name: plugin-barman-cloud
namespace: cnpg
chart: cloudnative-pg/plugin-barman-cloud
version: 0.3.1
version: 0.5.0
condition: postgres_operator.enabled
values:
- ../values/postgres-operator/values/plugin-barman-cloud.yaml.gotmpl
+5 -5
View File
@@ -9,15 +9,15 @@
},
"branch": "master",
"submodules": false,
"revision": "f0927703b7b1c8d97511c4116eb9b4ec6645a0fa",
"url": "https://github.com/cachix/git-hooks.nix/archive/f0927703b7b1c8d97511c4116eb9b4ec6645a0fa.tar.gz",
"hash": "sha256-6MkqajPICgugsuZ92OMoQcgSHnD6sJHwk8AxvMcIgTE="
"revision": "a1ef738813b15cf8ec759bdff5761b027e3e1d23",
"url": "https://github.com/cachix/git-hooks.nix/archive/a1ef738813b15cf8ec759bdff5761b027e3e1d23.tar.gz",
"hash": "sha256-Efs3VUPelRduf3PpfPP2ovEB4CXT7vHf8W+xc49RL/U="
},
"nixpkgs": {
"type": "Channel",
"name": "nixpkgs-unstable",
"url": "https://releases.nixos.org/nixpkgs/nixpkgs-26.05pre927565.13868c071cc7/nixexprs.tar.xz",
"hash": "sha256-wufp5c0nWh/87f9eK7xy1eZXms5zd4yl6S4SR+LfA08="
"url": "https://releases.nixos.org/nixpkgs/nixpkgs-26.05pre930822.ed142ab1b3a0/nixexprs.tar.xz",
"hash": "sha256-XH6awru9NnBc/m+2YhRNT8r1PAKEiPGF3gs//F3ods0="
}
},
"version": 7
-1
View File
@@ -6,7 +6,6 @@
"dependencyDashboard": true,
"semanticCommits": "disabled",
"ignorePaths": [
"**/attic/**",
"**/bootstrap/**"
],
"helmfile": {
+3 -2
View File
@@ -31,6 +31,7 @@ pkgs.mkShellNoCC {
kubectl-graph
kubectl-klock
graphviz
hubble
# other tools activate when needed
# step-cli
@@ -38,7 +39,7 @@ pkgs.mkShellNoCC {
# cmctl
# rclone
# velero
# renovate
renovate
# dapr
dapr-cli
@@ -46,7 +47,7 @@ pkgs.mkShellNoCC {
++ checks.enabledPackages;
# Environment variables
ARGOCD_ENV_CLUSTER_NAME = "hel1";
ARGOCD_ENV_CLUSTER_NAME = "oceanbox";
HELM_GIT_ACCESS_TOKEN = "glpat-xxx";
shellHook = builtins.concatStringsSep "\n" [
+9 -2
View File
@@ -88,11 +88,15 @@ spec:
server: https://kubernetes.default.svc
- namespace: uptime
server: https://kubernetes.default.svc
- namespace: forgejo
- namespace: gitea
server: https://kubernetes.default.svc
- namespace: postfix
server: https://kubernetes.default.svc
sourceRepos:
- https://argoproj.github.io/argo-helm
- https://kubernetes-sigs.github.io/metrics-server/
- https://git.oceanbox.io/platform/manifests.git
- https://git.oceanbox.io/platform/manifests
- https://gitlab.com/oceanbox/manifests.git
- https://kubernetes.github.io/ingress-nginx
- https://cloudnative-pg.github.io/charts
@@ -120,12 +124,15 @@ spec:
- https://open-telemetry.github.io/opentelemetry-helm-charts
- https://ghcr.io/slinkyproject/charts/slurm-operator
- https://ghcr.io/slinkyproject/charts/slurm-operator-crds
- https://bokysan.github.io/docker-postfix/
- ghcr.io/slinkyproject/charts
- ghcr.io/slinkyproject/charts/slurm-operator
- ghcr.io/slinkyproject/charts/slurm-operator-crds
- ghcr.io/spegel-org/helm-charts
- quay.io/cilium/charts
- quay.io/jetstack/charts
- ghcr.io/dragonflydb/dragonfly-operator/helm/dragonfly-operator
- code.forgejo.org/forgejo-helm
- docker.gitea.com
- https://operator.mariadb.com/mariadb-enterprise-operator
- https://operator.mariadb.com
- https://ot-container-kit.github.io/helm-charts
-1
View File
@@ -1,3 +1,2 @@
atlantis:
enabled: true
+1 -2
View File
@@ -1,5 +1,4 @@
atlantis:
enabled: false
autosync: {{ if eq .Environment.Name "prod" }} false {{ else }} true {{ end }}
autosync: {{ if or (eq .Environment.Name "prod") (eq .Environment.Name "beta") }}false{{ else }}true{{ end }}
env: {{ .Environment.Name }}
@@ -0,0 +1,96 @@
{
"oidc": {
"issuer": "https://auth.oceanbox.io/realms/oceanbox",
"authorization_endpoint": "https://auth.oceanbox.io/realms/oceanbox/protocol/openid-connect/auth",
"token_endpoint": "https://auth.oceanbox.io/realms/oceanbox/protocol/openid-connect/token",
"jwks_uri": "https://auth.oceanbox.io/realms/oceanbox/protocol/openid-connect/certs",
"userinfo_endpoint": "https://auth.oceanbox.io/realms/oceanbox/protocol/openid-connect/userinfo",
"end_session_endpoint": "https://auth.oceanbox.io/realms/oceanbox/protocol/openid-connect/logout",
"device_authorization_endpoint": "https://auth.oceanbox.io/realms/oceanbox/protocol/openid-connect/auth/device",
"clientId": "atlantis",
"clientSecret": "",
"scopes": [
"openid",
"email",
"offline_access",
"profile"
],
"audiences": [
"atlantis",
"atlantis_dev",
"sorcerer",
"sorcerer_dev"
]
},
"sso": {
"cookieDomain": ".oceanbox.io",
"cookieName": ".obx.beta",
"ttl": 12.0,
"signedOutRedirectUri": "https://maps.beta.oceanbox.io",
"realm": "atlantis",
"environment": "prod",
"keyStore": {
"kind": "azure",
"uri": "https://atlantis.blob.core.windows.net",
"key": "dataprotection-keys"
},
"keyVault": {
"kind": "azure",
"uri": "https://atlantisvault.vault.azure.net",
"key": "dataencryption-keys"
}
},
"fga": {
"apiUrl": "http://prod-openfga.openfga.svc.cluster.local:8080",
"apiKey": "",
"storeId": "01JKTZXMP7ANN4GG2P5W8Y56M6",
"modelId": "01JKTZYMCZZBVSBG66W27XMW0A"
},
"sentryUrl": "https://b6e03cfc8e247297b89217b09341b4cb@o4509530141622272.ingest.de.sentry.io/4509530195492944",
"plainAuthUsers": [
{
"username": "admin",
"password": "en-to-tre-fire",
"groups": [ "/oceanbox" ],
"roles": [ "admin" ]
},
{
"username": "sorcerer",
"password": "fire tre to en",
"groups": [ "/oceanbox" ],
"roles": [ "admin" ]
},
{
"username": "archivist",
"password": "en-to-tre-fire",
"groups": [ "/oceanbox" ],
"roles": [ "admin" ]
}
],
"plume": "plume.data.oceanbox.io",
"redis": "beta-atlantis-redis:6379",
"objectStore": "https://atlantis.blob.core.windows.net",
"connString": "Username=postgres;Password=secret;Host=localhost;Port=5432;Database=app;Pooling=true;",
"sorcerer" : "https://sorcerer.beta.ekman.oceanbox.io",
"allowedOrigins": [
"https://maps.beta.oceanbox.io"
],
"appName": "atlantis",
"appEnv": "prod",
"appNamespace": "atlantis",
"appVersion": "2.95.1",
"otelCollector": "http://opentelemetry-collector.otel.svc:4317",
"pubsubName": "pubsub",
"pubsubTopic": "hipster-atlantis",
"slurm": {
"baseUrl": "https://slurmrestd.ekman.oceanbox.io/",
"slurmApi": "slurm/v0.0.42/",
"dbdApi": "slurmdbd/v0.0.42/",
"accessToken": ""
},
"amqp": {
"auth": "user:hunny-bunny",
"host": "10.255.241.201:30673"
},
"fenceRadius": 1250.0
}
@@ -0,0 +1,22 @@
apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
name: slurm-events
spec:
type: bindings.rabbitmq
version: v1
metadata:
- name: host
secretKeyRef:
name: prod-atlantis-rabbitmq
key: connString
- name: queueName
value: beta-slurm-job-events
- name: durable
value: true
- name: contentType
value: "application/json"
- name: route
value: /events/slurm
scopes:
- beta-atlantis
@@ -0,0 +1,20 @@
apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
name: configstore
spec:
type: configuration.redis
version: v1
metadata:
- name: redisHost
value: beta-atlantis-redis:6379
- name: redisUsername
value: default
- name: redisPassword
secretKeyRef:
name: beta-atlantis-redis
key: redis-password
- name: redisDB
value: "1"
scopes:
- beta-atlantis
@@ -0,0 +1 @@
OIDC_CLIENT_SECRET=KOJ6bDHzE5vdyfSrzgwLjtM5PzA809Zm
@@ -0,0 +1,10 @@
- op: add
path: /spec/template/spec/containers/0/envFrom/-
value:
secretRef:
name: azure-keyvault
- op: add
path: /spec/template/spec/containers/0/envFrom/-
value:
secretRef:
name: prod-atlantis-env
@@ -0,0 +1,22 @@
apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
name: azure-keyvault
spec:
type: secretstores.azure.keyvault
version: v1
metadata:
- name: vaultName
value: atlantisvault
- name: azureTenantId
secretKeyRef:
name: azure-keyvault
key: AZURE_TENANT_ID
- name: azureClientId
secretKeyRef:
name: azure-keyvault
key: AZURE_CLIENT_ID
- name: azureClientSecret
secretKeyRef:
name: azure-keyvault
key: AZURE_CLIENT_SECRET
@@ -0,0 +1,24 @@
generatorOptions:
disableNameSuffixHash: true
configMapGenerator:
- name: beta-atlantis-appsettings
files:
- appsettings.json
patches:
- target:
group: apps
version: v1
kind: Deployment
path: deployment_patch.yaml
resources:
- ../base
- rbac.yaml
- tracing.yaml
- bindings.yaml
- pubsub.yaml
- statestore.yaml
- subscriptions.yaml
- configurations.yaml
- secretstore.yaml
- keyvault.yaml
@@ -0,0 +1,52 @@
apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
name: pubsub
spec:
version: v1
type: pubsub.rabbitmq
metadata:
- name: hostname
value: prod-rabbitmq.rabbitmq
- name: username
value: user
- name: password
secretKeyRef:
name: prod-atlantis-rabbitmq
key: rabbitmq-password
- name: protocol
value: amqp
- name: durable
value: true
- name: deletedWhenUnused
value: false
- name: autoAck
value: false
- name: deliveryMode
value: 1
- name: requeueInFailure
value: false
- name: prefetchCount
value: 0
- name: reconnectWait
value: 0
- name: concurrencyMode
value: parallel
- name: publisherConfirm
value: false
- name: backOffPolicy
value: exponential
- name: backOffInitialInterval
value: 100
- name: backOffMaxRetries
value: 16
- name: enableDeadLetter # Optional enable dead Letter or not
value: true
- name: maxLen # Optional max message count in a queue
value: 3000
- name: maxLenBytes # Optional maximum length in bytes of a queue.
value: 10485760
- name: exchangeKind
value: fanout
- name: clientName
value: "{appID}"
+40
View File
@@ -0,0 +1,40 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: beta-atlantis
namespace: beta-atlantis
rules:
- apiGroups:
- ""
resourceNames:
- beta-atlantis-appsettings
resources:
- configmaps
verbs:
- get
- watch
- apiGroups:
- ""
resourceNames:
- azure-keyvault
- beta-atlantis-redis
- slurm-access-token
resources:
- secrets
verbs:
- get
- watch
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: beta-atlantis
namespace: beta-atlantis
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: Role
name: beta-atlantis
subjects:
- kind: ServiceAccount
name: beta-atlantis
namespace: beta-atlantis
@@ -0,0 +1,10 @@
apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
name: secretstore
spec:
type: secretstores.kubernetes
version: v1
metadata:
- name: defaultNamespace
value: beta-atlantis
@@ -0,0 +1,22 @@
apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
name: statestore
spec:
type: state.redis
version: v1
metadata:
- name: redisHost
value: beta-atlantis-redis:6379
- name: redisUsername
value: default
- name: redisPassword
secretKeyRef:
name: beta-atlantis-redis
key: redis-password
- name: actorStateStore
value: "true"
- name: redisDB
value: "0"
scopes:
- beta-atlantis
@@ -0,0 +1,27 @@
apiVersion: dapr.io/v2alpha1
kind: Subscription
metadata:
name: hipster-events
spec:
topic: hipster
routes:
default: /events/hipster
pubsubname: pubsub
metadata:
queueType: quorum
scopes:
- beta-atlantis
---
apiVersion: dapr.io/v2alpha1
kind: Subscription
metadata:
name: inbox-events
spec:
topic: inbox
routes:
default: /events/inbox
pubsubname: pubsub
metadata:
queueType: quorum
scopes:
- beta-atlantis
@@ -0,0 +1,11 @@
apiVersion: dapr.io/v1alpha1
kind: Configuration
metadata:
name: tracing
spec:
tracing:
samplingRate: "1"
otel:
endpointAddress: "opentelemetry-collector.otel.svc.cluster.local:4317"
protocol: grpc
isSecure: false
+14
View File
@@ -27,16 +27,24 @@ spec:
value: {{ .Values.atlantis.env }}
- name: HELMFILE_FILE_PATH
value: atlantis.yaml.gotmpl
{{- if ne .Values.atlantis.env "beta" }}
- repoURL: https://charts.bitnami.com/bitnami
targetRevision: 20.1.7
chart: redis
helm:
valueFiles:
- $values/values/atlantis/values/redis-{{ .Values.atlantis.env }}.yaml
{{- end }}
- repoURL: https://gitlab.com/oceanbox/manifests.git
targetRevision: main
ref: values
ignoreDifferences:
- kind: Secret
name: beta-atlantis-db-superuser
jqPathExpressions:
- '.data'
- '.metadata.labels'
- '.metadata.annotations'
- kind: Secret
name: azure-keyvault
jqPathExpressions:
@@ -67,6 +75,12 @@ spec:
- '.data'
- '.metadata.labels'
- '.metadata.annotations'
- kind: Secret
name: slurm-access-token
jqPathExpressions:
- '.data'
- '.metadata.labels'
- '.metadata.annotations'
syncPolicy:
syncOptions:
- CreateNamespace=true
+8
View File
@@ -0,0 +1,8 @@
apiVersion: v1
data:
redis-password: N2drUGlEN0ZMNA==
kind: Secret
metadata:
name: beta-sorcerer-redis
namespace: beta-sorcerer
type: Opaque
@@ -0,0 +1,103 @@
replicaCount: 1
image:
repository: git.oceanbox.io/oceanbox/poseidon/atlantis
tag: v1.42.2
podAnnotations:
dapr.io/app-id: "beta-atlantis"
env:
- name: APP_NAMESPACE
value: beta-atlantis
- name: APP_VERSION
value: "2.97.4-beta"
- name: LOG_LEVEL
value: "1"
- name: ANALYTICS_WEB_ID
value: "16e7d807-4db5-45fd-92a9-27393445a153"
- name: REDIS_USER
value: default
- name: REDIS_PASSWORD
valueFrom:
secretKeyRef:
name: beta-atlantis-redis
key: redis-password
# Share production database
- name: DB_HOST
value: prod-atlantis-db-rw.prod-atlantis
- name: DB_PORT
value: "5432"
- name: DB_USER
valueFrom:
secretKeyRef:
name: prod-atlantis-db-superuser
key: username
- name: DB_PASSWORD
valueFrom:
secretKeyRef:
name: prod-atlantis-db-superuser
key: password
- name: DAPR_API_TOKEN
valueFrom:
secretKeyRef:
name: dapr-api-token
key: token
ingress:
enabled: true
annotations:
cert-manager.io/cluster-issuer: letsencrypt-production
nginx.ingress.kubernetes.io/proxy-buffer-size: 128k
hosts:
- host: maps.beta.oceanbox.io
paths:
- path: /
pathType: ImplementationSpecific
internal:
- path: /internal
pathType: ImplementationSpecific
- path: /dapr
pathType: ImplementationSpecific
- path: /actors
pathType: ImplementationSpecific
- path: /job
pathType: ImplementationSpecific
- path: /events
pathType: ImplementationSpecific
- path: /metrics
pathType: ImplementationSpecific
tls:
- hosts:
- maps.beta.oceanbox.io
secretName: beta-atlantis-tls
cluster:
enabled: false
bootstrap: false
redis:
enabled: true
size: 2Gi
secret:
name: beta-atlantis-redis
key: redis-password
backup:
enabled: true
resources:
cpu: 150m
memory: 256Mi
resources:
limits:
cpu: 500m
memory: 512Mi
requests:
cpu: 250m
memory: 512Mi
diagrid-dashboard:
enabled: false
statestore:
scope: beta-atlantis
redis: beta-atlantis-redis
@@ -1,6 +1,7 @@
replicaCount: 1
image:
tag: 503ccbb2-debug
repository: git.oceanbox.io/oceanbox/poseidon/atlantis
tag: bc9dccaa-debug
podAnnotations:
dapr.io/app-id: "staging-atlantis"
env:
+1 -1
View File
@@ -1,2 +1,2 @@
attic:
enabled: true
enabled: false
+5 -5
View File
@@ -4,15 +4,15 @@ metadata:
name: attic
namespace: argocd
finalizers:
- resources-finalizer.argocd.argoproj.io
- resources-finalizer.argocd.argoproj.io
spec:
destination:
namespace: attic
server: 'https://kubernetes.default.svc'
server: "https://kubernetes.default.svc"
sources:
- repoURL: https://gitlab.com/oceanbox/manifests.git
targetRevision: HEAD
path: values/attic/manifests
- repoURL: https://git.oceanbox.io/oceanbox/manifests.git
targetRevision: HEAD
path: values/attic/manifests
project: aux
syncPolicy:
managedNamespaceMetadata:
+5
View File
@@ -0,0 +1,5 @@
cert_manager:
enabled: true
autosync: true
gatewayApi:
enabled: true
+2
View File
@@ -1,3 +1,5 @@
cert_manager:
enabled: true
autosync: true
gatewayApi:
enabled: false
@@ -3,3 +3,9 @@ enableCertificateOwnerRef: true
startupapicheck:
podAnnotations:
linkerd.io/inject: disabled
{{- if .Values.cert_manager.gatewayApi.enabled }}
config:
apiVersion: controller.config.cert-manager.io/v1alpha1
enableGatewayAPI: true
kind: ControllerConfiguration
{{- end }}
@@ -0,0 +1,68 @@
{{- if eq .Values.cilium.cluster "hel1" }}
# TODO: Move to ListernerSets when those get Promoted to GA
# Resources:
# - https://gateway-api.sigs.k8s.io/geps/gep-1713/
# - https://github.com/kubernetes-sigs/gateway-api/issues/1713
apiVersion: gateway.networking.k8s.io/v1
kind: Gateway
metadata:
name: shared-gateway
namespace: kube-system
spec:
infrastructure:
annotations:
load-balancer.hetzner.cloud/location: hel1
load-balancer.hetzner.cloud/type: lb11
load-balancer.hetzner.cloud/name: load-balancer-2
load-balancer.hetzner.cloud/use-private-ip: "true"
load-balancer.hetzner.cloud/uses-proxyprotocol: "true"
load-balancer.hetzner.cloud/http-redirect-https: "false"
gatewayClassName: cilium
listeners:
- name: http
protocol: HTTP
port: 80
allowedRoutes:
namespaces:
from: Selector
selector:
matchLabels:
shared-gateway-access: "true"
- name: https
protocol: HTTPS
port: 443
tls:
certificateRefs:
- group: ''
kind: Secret
name: wildcard-oceanbox-io
allowedRoutes:
namespaces:
from: Selector
selector:
matchLabels:
shared-gateway-access: "true"
- name: ssh
protocol: TCP
port: 22
allowedRoutes:
namespaces:
from: Selector
selector:
matchLabels:
shared-gateway-access: "true"
---
apiVersion: cert-manager.io/v1
kind: Certificate
metadata:
name: wildcard-oceanbox-io
spec:
secretName: wildcard-oceanbox-io
commonName: oceanbox.io
dnsNames:
- oceanbox.io
- "*.oceanbox.io"
issuerRef:
name: letsencrypt-prod-dns01
kind: ClusterIssuer
{{- end}}
@@ -0,0 +1,19 @@
{{- if .Values.clusterConfig.cilium.enabled }}
apiVersion: "cilium.io/v2"
kind: CiliumClusterwideNetworkPolicy
metadata:
name: allow-ingress-to-cluster
namespace: default
spec:
endpointSelector:
matchExpressions:
- key: reserved:ingress
operator: Exists
egress:
- toEntities:
- cluster
ingress:
- fromEntities:
- world
- cluster
{{- end }}
+12
View File
@@ -0,0 +1,12 @@
cilium:
enabled: true
nodePort:
enabled: true
l2announcement:
enabled: true
gatewayAPI:
enabled: true
gatewayTest:
enabled: true
policyAuditMode: true
upgradeCompatability: 1.18
+2 -2
View File
@@ -1,6 +1,6 @@
cilium:
enabled: false
autosync: true
autosync: false
spire:
enabled: false
envoy:
@@ -30,4 +30,4 @@ cilium:
loadbalancerPool:
enabled: false
cidr: []
cluster: {{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}
+19
View File
@@ -61,6 +61,25 @@ nodePort:
enabled: {{ .Values.cilium.nodePort.enabled }}
gatewayAPI:
enabled: {{ .Values.cilium.gatewayAPI.enabled }}
{{- if eq .Values.cilium.cluster "hel1"}}
gatewayClass:
create: 'true'
enableProxyProtocol: true
hostNetwork:
enabled: false
nodes:
matchLabels:
ingresshost: "cilium"
envoy:
enabled: true
securityContext:
capabilities:
keepCapNetBindService: true
envoy:
- NET_ADMIN
- BPF
- NET_BIND_SERVICE
{{- end}}
ingressController:
enabled: {{ .Values.cilium.ingressController.enabled }}
default: {{ .Values.cilium.ingressController.defaultClass }}
+1 -1
View File
@@ -31,4 +31,4 @@ volumeMounts:
readOnly: true
subPath: appsettings.json
image:
tag: 2e1165d9-debug
tag: d34652dd-debug
@@ -1,3 +1,2 @@
plausible:
docs:
enabled: true
+2
View File
@@ -0,0 +1,2 @@
docs:
enabled: false
+4
View File
@@ -0,0 +1,4 @@
docs:
enabled: true
autosync: {{ if eq .Environment.Name "prod" }} false {{ else }} true {{ end }}
env: {{ .Environment.Name }}
@@ -1,13 +1,19 @@
{{- if .Values.clusterConfig.argo.enabled }}
{{ if .Values.clusterConfig.argo.enabled }}
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: plausible-analytics
name: docs
namespace: argocd
annotations:
argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
argocd.argoproj.io/compare-options: ServerSideDiff=true
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
destination:
namespace: plausible
server: 'https://kubernetes.default.svc'
namespace: docs
server: https://kubernetes.default.svc
project: default
sources:
- repoURL: {{ .Values.clusterConfig.manifests }}
targetRevision: HEAD
@@ -20,25 +26,14 @@ spec:
- name: HELMFILE_ENVIRONMENT
value: default
- name: HELMFILE_FILE_PATH
value: plausible.yaml.gotmpl
project: aux
value: docs.yaml.gotmpl
syncPolicy:
managedNamespaceMetadata:
labels:
component: aux
syncOptions:
- CreateNamespace=true
- ApplyOutOfSyncOnly=true
{{- if .Values.plausible.autosync }}
{{- if .Values.docs.autosync }}
automated:
prune: true
selfHeal: true
selfHeal: false
{{- end }}
ignoreDifferences:
- kind: Secret
name: plausible-analytics
jqPathExpressions:
- '.data'
- '.metadata.labels'
- '.metadata.annotations'
{{- end }}
@@ -1,9 +1,9 @@
replicaCount: 1
image:
tag: "ce1340fa-debug"
tag: "5c4cda2e-debug"
env:
- name: APP_VERSION
value: "0.0.0-staging"
value: "0.0.0"
- name: LOG_LEVEL
value: "1"
ingress:
@@ -17,11 +17,11 @@ ingress:
nginx.ingress.kubernetes.io/ssl-redirect: "true"
oceanbox.io/expose: internal
hosts:
- host: makai.dev.oceanbox.io
- host: docs.oceanbox.io
paths:
- path: /
pathType: ImplementationSpecific
tls:
- hosts:
- makai.dev.oceanbox.io
secretName: staging-makai-tls
- docs.oceanbox.io
secretName: docs-tls
+1 -1
View File
@@ -1,5 +1,5 @@
clusterConfig:
manifests: https://gitlab.com/oceanbox/manifests.git
manifests: https://git.oceanbox.io/platform/manifests.git
cilium:
enabled: false
env: "prod"
+1 -1
View File
@@ -1,5 +1,5 @@
clusterConfig:
manifests: https://gitlab.com/oceanbox/manifests.git
manifests: https://git.oceanbox.io/platform/manifests.git
env: "prod"
distro: "talos"
domain: "adm.hel1.obx"
+1 -1
View File
@@ -1,5 +1,5 @@
clusterConfig:
manifests: https://gitlab.com/oceanbox/manifests.git
manifests: https://git.oceanbox.io/platform/manifests.git
env: "prod"
distro: "talos"
domain: "adm.oceanbox.io"
+1 -1
View File
@@ -1,5 +1,5 @@
clusterConfig:
manifests: https://gitlab.com/oceanbox/manifests.git
manifests: https://git.oceanbox.io/oceanbox/manifests.git
cilium:
enabled: false
env: "prod"
-134
View File
@@ -1,134 +0,0 @@
replicaCount: 1
image:
registry: code.forgejo.org
repository: forgejo/forgejo
resources:
requests:
cpu: 200m
memory: 512Mi
gitea:
metrics:
enabled: false
serviceMonitor:
enabled: false
config:
APP_NAME: 'Forgejo: With a cup of tea.'
cache:
ENABLED: true
ADAPTER: redis
HOST: redis://dragonfly-forgejo.forgejo.svc:6379/0
session:
PROVIDER: redis
PROVIDER_CONFIG: redis://dragonfly-forgejo.forgejo.svc:6379/1
queue:
TYPE: redis
CONN_STR: redis://dragonfly-forgejo.forgejo.svc:6379/2
storage:
STORAGE_TYPE: minio
MINIO_ENDPOINT: hel1.your-objectstorage.com
MINIO_USE_SSL: true
MINIO_LOCATION: hel1
MINIO_BUCKET: obx-forgejo
security:
INSTALL_LOCK: true
service:
DISABLE_REGISTRATION: false
server:
APP_DATA_PATH: "/data/gitea"
DOMAIN: git.svc.hel1.obx
ROOT_URL: https://git.svc.hel1.obx
SSH_DOMAIN: git.svc.hel1.obx
SSH_PORT: 22
SSH_SERVER_USE_PROXY_PROTOCOL: true
LANDING_PAGE: "explore"
oauth2_client:
ENABLE_AUTO_REGISTRATION: true
UPDATE_AVATAR: true
ACCOUNT_LINKING: auto
database:
DB_TYPE: postgres
MAX_OPEN_CONNS: 90
openid:
ENABLE_OPENID_SIGNIN: false
ENABLE_OPENID_SIGNUP: false
oauth:
- name: 'Oceanbox'
provider: 'openidConnect'
existingSecret: forgejo-oauth-oceanbox
autoDiscoverUrl: 'https://login.microsoftonline.com/3f737008-e9a0-4485-9d27-40329d288089/.well-known/openid-configuration'
scopes: 'openid profile email groups'
groupClaimName: 'groups'
adminGroup: '/oceanbox/devel'
restrictedGroup: ''
additionalConfigFromEnvs:
- name: FORGEJO__STORAGE__MINIO_ACCESS_KEY_ID
valueFrom:
secretKeyRef:
name: forgejo-s3
key: access_key
- name: FORGEJO__STORAGE__MINIO_SECRET_ACCESS_KEY
valueFrom:
secretKeyRef:
name: forgejo-s3
key: secret_key
- name: FORGEJO__DATABASE__PASSWD
valueFrom:
secretKeyRef:
name: forgejo-db-app
key: password
- name: FORGEJO__DATABASE__NAME
valueFrom:
secretKeyRef:
name: forgejo-db-app
key: dbname
- name: FORGEJO__DATABASE__USER
valueFrom:
secretKeyRef:
name: forgejo-db-app
key: user
- name: FORGEJO__DATABASE__HOST
valueFrom:
secretKeyRef:
name: forgejo-db-app
key: host
- name: FORGEJO__DATABASE__DB_TYPE
value: postgres
ingress:
enabled: true
className: nginx
annotations:
cert-manager.io/cluster-issuer: ca-issuer
nginx.ingress.kubernetes.io/ssl-redirect: "true"
nginx.ingress.kubernetes.io/proxy-body-size: "0"
nginx.ingress.kubernetes.io/proxy-read-timeout: "600"
nginx.ingress.kubernetes.io/proxy-send-timeout: "600"
nginx.ingress.kubernetes.io/whitelist-source-range: 10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,172.19.255.0/24,100.64.0.0/12
hosts:
- host: git.svc.hel1.obx
paths:
- backend:
service:
name: forgejo-http
port:
number: 3000
path: /
pathType: ImplementationSpecific
tls:
- secretName: forgejo-tls
hosts:
- git.svc.hel1.obx
# service:
# ssh:
# type: LoadBalancer
# port: 22
# annotations:
# load-balancer.hetzner.cloud/location: hel1
# load-balancer.hetzner.cloud/uses-proxyprotocol: 'false'
persistence:
enabled: true
size: 1Gi
+11 -10
View File
@@ -1,6 +1,6 @@
image:
repository: twinproduction/gatus
tag: v5.32.0
tag: v5.34.0
# Does envFrom secret named gatus
secrets: true
@@ -62,21 +62,21 @@ config:
<<: *defaults
conditions:
- "[STATUS] == 200"
- "[RESPONSE_TIME] <= 1000"
- "[RESPONSE_TIME] <= 2000"
- "[CERTIFICATE_EXPIRATION] > 168h" # 7 days
.tls-endpoint: &tls-endpoint
<<: *defaults
conditions:
- "[CONNECTED] == true"
- "[RESPONSE_TIME] <= 1000"
- "[RESPONSE_TIME] <= 2000"
- "[CERTIFICATE_EXPIRATION] > 168h" # 7 days
.tcp-endpoint: &tcp-endpoint
<<: *defaults
conditions:
- "[CONNECTED] == true"
- "[RESPONSE_TIME] <= 1000"
- "[RESPONSE_TIME] <= 2000"
endpoints:
- name: Atlantis TOS
@@ -93,12 +93,13 @@ config:
alerts:
- type: custom
- name: Sorcerer VTN
<<: *https-endpoint
group: "Primary Services"
url: https://sorcerer.vtn.oceanbox.io/healthz
# alerts:
# - type: custom
# NOTE: Ingress is down
# - name: Sorcerer VTN
# <<: *https-endpoint
# group: "Primary Services"
# url: https://sorcerer.vtn.oceanbox.io/healthz
# alerts:
# - type: custom
- name: Plume TOS
<<: *https-endpoint
@@ -1,3 +1,3 @@
forgejo:
gitea:
enabled: true
backup: true
@@ -1,4 +1,4 @@
forgejo:
gitea:
enabled: false
backup: false
autosync: {{ if eq .Environment.Name "prod" }} false {{ else }} true {{ end }}
@@ -2,11 +2,11 @@ apiVersion: barmancloud.cnpg.io/v1
kind: ObjectStore
metadata:
name: hel-store
namespace: forgejo
namespace: gitea
spec:
retentionPolicy: "7d"
configuration:
destinationPath: s3://obx-cnpg/hel1/forgejo-db
destinationPath: s3://obx-cnpg/hel1/gitea-db
endpointURL: https://hel1.your-objectstorage.com
s3Credentials:
accessKeyId:
@@ -21,13 +21,13 @@ spec:
apiVersion: postgresql.cnpg.io/v1
kind: ScheduledBackup
metadata:
name: forgejo-db
namespace: forgejo
name: gitea-db
namespace: gitea
spec:
schedule: "0 0 1 * * *"
backupOwnerReference: self
cluster:
name: forgejo-db
name: gitea-db
method: plugin
pluginConfiguration:
name: barman-cloud.cloudnative-pg.io

Some files were not shown because too many files have changed in this diff Show More