Migrer services-garbaye sur git.garbaye.fr (Gitea), garder la CI sur framagit.org (Gitlab) #12

Closed
opened 2023-02-20 21:22:38 +00:00 by gitouche · 2 comments
Owner

Ceci est une étape intermédiaire pour s'émanciper de Gitlab framagit.

Gitea 1.18 permet de "push" vers un autre dépot à chaque commit (push). Ceci permet de faire évoluer notre fonctionnement actuel :

flowchart LR

A[git commit] -->|git push| B(framagit)
B --> |CI| C[gitlab-runner]
C --> B
B -->|sync mirror */8h| D(gitea)
B -->|git pull| E[Garbaye compute]

Vers ce nouveau modèle :

flowchart LR

A[git commit] -->|git push| B(gitea)
B -->|sync push mirror on commit| C(framagit)
C --> |CI| D[gitlab-runner]
D --> C
B -->|git pull| E[Garbaye compute]
C -->|backup git pull| E

Avantages :

  • La synchro gitea -> framagit est immédiate. (actuellement toutes les 8h).
  • ^ ceci permet d'utiliser les deux dépots pour le déploiement de nos services (gitlab en secours si gitea est indisponible)
  • Pas de dépendance à framagit si leur serveur est indisponible (on peut se passer temporairement de la CI).
  • Prépare le terrain pour un chancement à l'avenir du système de CI.

Actions (déjà testé en qualif) :

  • Gitlab : sur le dépot services-garbaye, créer un token d'accès développeur avec la permission write. validité.. 1an ?
  • Gitea : convertir le dépot service-garbaye en dépot standard : Convert to Regular Repository . Ceci fait sauter la synchro mirroir.
  • Gitea : activer la fonctionnalité push mirror sur le dépot services-garbaye :
    • Git Remote Repository URL : https://framagit.org/garbaye/services-garbaye.git
    • Authorization :
      • Username : id token gitlab
      • Password : clé token gitlab
    • Cocher la case Sync when commits are pushed
  • Clients git : mettre à jour les remote
    git remote set-url origin ssh://git@git.garbaye.fr:2222/Garbaye/services-garbaye.git
  • Gitlab : empecher les push directs? voir avec protection de branche.
Ceci est une étape intermédiaire pour s'émanciper de Gitlab framagit. Gitea 1.18 permet de "push" vers un autre dépot à chaque commit (push). Ceci permet de faire évoluer notre fonctionnement actuel : ```mermaid flowchart LR A[git commit] -->|git push| B(framagit) B --> |CI| C[gitlab-runner] C --> B B -->|sync mirror */8h| D(gitea) B -->|git pull| E[Garbaye compute] ``` Vers ce nouveau modèle : ```mermaid flowchart LR A[git commit] -->|git push| B(gitea) B -->|sync push mirror on commit| C(framagit) C --> |CI| D[gitlab-runner] D --> C B -->|git pull| E[Garbaye compute] C -->|backup git pull| E ``` Avantages : * La synchro gitea -> framagit est immédiate. (actuellement toutes les 8h). * ^ ceci permet d'utiliser les deux dépots pour le déploiement de nos services (gitlab en secours si gitea est indisponible) * Pas de dépendance à framagit si leur serveur est indisponible (on peut se passer temporairement de la CI). * Prépare le terrain pour un chancement à l'avenir du système de CI. Actions (déjà testé en qualif) : - [x] Gitlab : sur le dépot `services-garbaye`, créer un token d'accès développeur avec la permission `write`. validité.. 1an ? - [x] Gitea : convertir le dépot `service-garbaye` en dépot standard : `Convert to Regular Repository` . Ceci fait sauter la synchro mirroir. - [x] Gitea : activer la fonctionnalité `push mirror` sur le dépot `services-garbaye` : - Git Remote Repository URL : `https://framagit.org/garbaye/services-garbaye.git` - Authorization : - Username : `id token gitlab` - Password : `clé token gitlab` - Cocher la case `Sync when commits are pushed` - [x] Clients git : mettre à jour les remote `git remote set-url origin ssh://git@git.garbaye.fr:2222/Garbaye/services-garbaye.git` - [ ] Gitlab : empecher les push directs? voir avec protection de branche.
Author
Owner

C'est fait, le token est valide 1an (après ça j'espère qu'il y aura une erreur... quelque part).

C'est fait, le token est valide 1an (après ça j'espère qu'il y aura une erreur... quelque part).
Author
Owner

Switch des repos oublié à l'époque : cb83b794aa

Switch des repos oublié à l'époque : https://git.garbaye.fr/Garbaye/ansible-garbaye/commit/cb83b794aad70c46ed31911a37e4bcd79d2e5d58
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: Garbaye/services-garbaye#12
No description provided.