Infra YesWiki
Débuts de notes sur les sujets infra.
Faire un miroir pour le code de github
Etape 1 : créer un repo miroir
- Aller sur la page d'accueil de l'organisation "https://code.yeswiki.net/YesWiki"
- Cliquer sur "Nouvelle migration"
- Selectionner "GitHub"
- Indiquer
- "Migrer/Cloner depuis une URL" --> l'URL https du repo
- Cocher "Rendre ce dépot miroir"
- Cliquer sur "Migrer le dépôt"
Etape 2 : Cabler les webhooks
Par défaut la synchronisation se fait toutes les 8 heures. Il est possible de diminuer l'interval à quelques minutes mais comme la CI est faite directement sur forgejo, il est souhaitable de lancer une synchronisation à chaque commit pour gagner en réactivité et expérience développeur. Pour cela on passe par applicatif léger à l'adresse https://git-webhook.yeswiki.net/ qui réceptionne les webhook githubs et lance une nouvelle synchro sur forgejo.
Etape 2.1 : Ajouter la config du nouveau repo dans l'applicatif
- Se connecter en sftp sur git-webhook.yeswiki.net, et modifier le fichier index.php
- Rajouer le mapping entre repo github et le nouveau repo forgejo dans la variable FORGEJO_REPO_MAP
- Ajouter une nouvelle clé de signature pour les repos github dans la variable GITHUB_SECRETS. Générer pour cela une chaine de caractères aléatoire
Etape 2.2 : Créer un nouveau webhook dans github
- Aller sur le repo github
- Cliquer sur "Settings" --> "Webhooks" --> "Add webhook"
- Indiquer
- "Payload URL" --> "https://git-webhook.yeswiki.net/"
- "Content Type" --> "application/json"
- "Secret" --> le secret généré précédemment
- "Which events would you like to trigger this webhook?" --> "Just the push event."