Compare commits

..

2 Commits

Author SHA1 Message Date
Morten Olsen
b49e273b89 fix pg db 2025-08-11 14:35:15 +02:00
Morten Olsen
47cf43b44e Added storage provisioner 2025-08-11 12:07:36 +02:00
4 changed files with 6 additions and 7 deletions

View File

@@ -37,8 +37,8 @@ class GenerateSecretResource extends CustomResource<typeof generateSecretSpecSch
const current = decodeSecret(this.#secretResource.data) || {}; const current = decodeSecret(this.#secretResource.data) || {};
const expected = { const expected = {
...current,
...secrets, ...secrets,
...current,
}; };
if (!isDeepSubset(current, expected)) { if (!isDeepSubset(current, expected)) {

View File

@@ -95,6 +95,7 @@ class PostgresDatabaseResource extends CustomResource<typeof postgresDatabaseSpe
port: serverSecretData.data.port, port: serverSecretData.data.port,
user: this.#userName, user: this.#userName,
database: this.#dbName, database: this.#dbName,
...databaseSecretData.data,
}; };
if (!isDeepSubset(databaseSecretData.data, expectedSecret)) { if (!isDeepSubset(databaseSecretData.data, expectedSecret)) {
@@ -132,7 +133,7 @@ class PostgresDatabaseResource extends CustomResource<typeof postgresDatabaseSpe
}; };
} }
const secretData = postgresDatabaseConnectionSecretSchema.safeParse(decodeSecret(this.#serverSecret.current?.data)); const secretData = postgresDatabaseConnectionSecretSchema.safeParse(decodeSecret(this.#databaseSecret.data));
if (!secretData.success || !secretData.data) { if (!secretData.success || !secretData.data) {
return { return {
ready: false, ready: false,

View File

@@ -79,4 +79,4 @@ const customResourceService = services.get(CustomResourceService);
customResourceService.register(...customResources); customResourceService.register(...customResources);
await customResourceService.install(true); await customResourceService.install(true);
// await customResourceService.watch(); await customResourceService.watch();

View File

@@ -35,8 +35,7 @@ class StorageProvider {
if (pvc.metadata?.annotations?.['volume.kubernetes.io/storage-provisioner'] !== PROVISIONER) { if (pvc.metadata?.annotations?.['volume.kubernetes.io/storage-provisioner'] !== PROVISIONER) {
return; return;
} }
const target = `./data/${pvc.namespace}/${pvc.name}`; const target = `/data/volumes/${pvc.namespace}/${pvc.name}`;
console.log('TARGET: ', target);
try { try {
await mkdir(target, { recursive: true }); await mkdir(target, { recursive: true });
} catch (err) { } catch (err) {
@@ -46,8 +45,7 @@ class StorageProvider {
const pv = resourceService.get<V1PersistentVolume>({ const pv = resourceService.get<V1PersistentVolume>({
apiVersion: 'v1', apiVersion: 'v1',
kind: 'PersistentVolume', kind: 'PersistentVolume',
name: pvc.name, name: `${pvc.namespace}-${pvc.name}`,
namespace: pvc.namespace,
}); });
await pv.load(); await pv.load();
await pv.patch({ await pv.patch({