From 9415880c6c5cfeae9f2b8b09ed5e9b8ac07926a0 Mon Sep 17 00:00:00 2001 From: William Phetsinorath Date: Fri, 13 Mar 2026 15:26:51 +0100 Subject: [PATCH] fix: repository files try to create a branch on existing branch Signed-off-by: William Phetsinorath --- src/observability-repo-manager.ts | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/observability-repo-manager.ts b/src/observability-repo-manager.ts index a016c6a..30db1a0 100644 --- a/src/observability-repo-manager.ts +++ b/src/observability-repo-manager.ts @@ -143,7 +143,22 @@ export class ObservabilityRepoManager { if (error instanceof GitbeakerRequestError && error.cause?.response.status === 404) { console.log('Le fichier n\'existe pas') // Si le fichier n'existe pas, création - await this.gitlabApi.RepositoryFiles.create(project.id, filePath, branch, encodedContent, commitMessage) + try { + await this.gitlabApi.RepositoryFiles.create(project.id, filePath, branch, encodedContent, commitMessage) + } catch (createError) { + if (createError instanceof GitbeakerRequestError && createError.cause?.response.status === 400) { + // Create a commit for the new file + await this.gitlabApi.Commits.create(project.id, branch, commitMessage, [ + { + action: 'create', + filePath, + content: encodedContent, + }, + ]) + } else { + throw createError + } + } console.log(`Fichier YAML créé et poussé: ${filePath}`) return }