From ba81655145161006db5a3fc4f64a182653d7f802 Mon Sep 17 00:00:00 2001 From: Piotr Dobrowolski Date: Sat, 7 Oct 2023 20:14:51 +0200 Subject: [PATCH] cluster: cleanup CephObjectStoreUser creation, add codehosting bucket Change-Id: I6f41ef3d4775b52c43953f1133e56e69c4c462b8 Reviewed-on: https://gerrit.hackerspace.pl/c/hscloud/+/1683 Reviewed-by: informatic --- cluster/kube/k0.libsonnet | 148 ++++++++------------------------------ 1 file changed, 31 insertions(+), 117 deletions(-) diff --git a/cluster/kube/k0.libsonnet b/cluster/kube/k0.libsonnet index f8405dc6..b4fc738c 100644 --- a/cluster/kube/k0.libsonnet +++ b/cluster/kube/k0.libsonnet @@ -236,139 +236,53 @@ local rook = import "lib/rook.libsonnet"; // Clients for S3/radosgw storage. clients: { + local ObjectStoreUser(name) = kube.CephObjectStoreUser(name) { + metadata+: { + namespace: "ceph-waw3", + }, + spec: { + store: "waw-hdd-redundant-3-object", + displayName: name, + }, + }, + # Used for owncloud.hackerspace.pl, which for now lives on boston-packets.hackerspace.pl. - nextcloudWaw3: kube.CephObjectStoreUser("nextcloud") { - metadata+: { - namespace: "ceph-waw3", - }, - spec: { - store: "waw-hdd-redundant-3-object", - displayName: "nextcloud", - }, - }, + nextcloudWaw3: ObjectStoreUser("nextcloud"), # issues.hackerspace.pl (redmine) attachments bucket - issuesWaw3: kube.CephObjectStoreUser("issues") { - metadata+: { - namespace: "ceph-waw3", - }, - spec: { - store: "waw-hdd-redundant-3-object", - displayName: "issues", - }, - }, + issuesWaw3: ObjectStoreUser("issues"), # matrix.hackerspace.pl media storage bucket - matrixWaw3: kube.CephObjectStoreUser("matrix") { - metadata+: { - namespace: "ceph-waw3", - }, - spec: { - store: "waw-hdd-redundant-3-object", - displayName: "matrix", - }, - }, + matrixWaw3: ObjectStoreUser("matrix"), # tape staging temporary storage - tapeStaging: kube.CephObjectStoreUser("tape-staging") { - metadata+: { - namespace: "ceph-waw3", - }, - spec: { - store: "waw-hdd-redundant-3-object", - displayName: "tape-staging", - }, - }, + tapeStaging: ObjectStoreUser("tape-staging"), # nuke@hackerspace.pl's personal storage. - nukePersonalWaw3: kube.CephObjectStoreUser("nuke-personal") { - metadata+: { - namespace: "ceph-waw3", - }, - spec: { - store: "waw-hdd-redundant-3-object", - displayName: "nuke-personal", - }, - }, + nukePersonalWaw3: ObjectStoreUser("nuke-personal"), # patryk@hackerspace.pl's ArmA3 mod bucket. - cz2ArmaModsWaw3: kube.CephObjectStoreUser("cz2-arma3mods") { - metadata+: { - namespace: "ceph-waw3", - }, - spec: { - store: "waw-hdd-redundant-3-object", - displayName: "cz2-arma3mods", - }, - }, + cz2ArmaModsWaw3: ObjectStoreUser("cz2-arma3mods"), + # implr's personal user - implrSparkWaw3: kube.CephObjectStoreUser("implr") { - metadata+: { - namespace: "ceph-waw3", - }, - spec: { - store: "waw-hdd-redundant-3-object", - displayName: "implr", - }, - }, + implrSparkWaw3: ObjectStoreUser("implr"), + # q3k's personal user - q3kWaw3: kube.CephObjectStoreUser("q3k") { - metadata+: { - namespace: "ceph-waw3", - }, - spec: { - store: "waw-hdd-redundant-3-object", - displayName: "q3k", - }, - }, + q3kWaw3: ObjectStoreUser("q3k"), + # woju's personal user - wojuWaw3: kube.CephObjectStoreUser("woju") { - metadata+: { - namespace: "ceph-waw3", - }, - spec: { - store: "waw-hdd-redundant-3-object", - displayName: "woju", - }, - }, + wojuWaw3: ObjectStoreUser("woju"), + # cz3's (patryk@hackerspace.pl) personal user - cz3Waw3: kube.CephObjectStoreUser("cz3") { - metadata+: { - namespace: "ceph-waw3", - }, - spec: { - store: "waw-hdd-redundant-3-object", - displayName: "cz3", - }, - }, + cz3Waw3: ObjectStoreUser("cz3"), + # informatic's personal user - informaticWaw3: kube.CephObjectStoreUser("informatic") { - metadata+: { - namespace: "ceph-waw3", - }, - spec: { - store: "waw-hdd-redundant-3-object", - displayName: "informatic", - }, - }, + informaticWaw3: ObjectStoreUser("informatic"), + # mastodon qa and prod mastodonWaw3: { - qa: kube.CephObjectStoreUser("mastodon-qa") { - metadata+: { - namespace: "ceph-waw3", - }, - spec: { - store: "waw-hdd-redundant-3-object", - displayName: "mastodon-qa", - }, - }, - prod: kube.CephObjectStoreUser("mastodon-prod") { - metadata+: { - namespace: "ceph-waw3", - }, - spec: { - store: "waw-hdd-redundant-3-object", - displayName: "mastodon-prod", - }, - }, + qa: ObjectStoreUser("mastodon-qa"), + prod: ObjectStoreUser("mastodon-prod"), }, + + codehostingWaw3: ObjectStoreUser("codehosting"), }, },