feat(repositories): add google cloud storage support

This commit is contained in:
Nicolas Meienberger
2025-11-10 21:04:08 +01:00
parent d31fa8d464
commit e98c0af8ca
6 changed files with 74 additions and 1 deletions

View File

@@ -3,6 +3,7 @@ import { type } from "arktype";
export const REPOSITORY_BACKENDS = {
local: "local",
s3: "s3",
gcs: "gcs",
} as const;
export type RepositoryBackend = keyof typeof REPOSITORY_BACKENDS;
@@ -20,7 +21,14 @@ export const localRepositoryConfigSchema = type({
name: "string",
});
export const repositoryConfigSchema = s3RepositoryConfigSchema.or(localRepositoryConfigSchema);
export const gcsRepositoryConfigSchema = type({
backend: "'gcs'",
bucket: "string",
projectId: "string",
credentialsJson: "string",
});
export const repositoryConfigSchema = s3RepositoryConfigSchema.or(localRepositoryConfigSchema).or(gcsRepositoryConfigSchema);
export type RepositoryConfig = typeof repositoryConfigSchema.infer;