Documentation DevOps

create_repo.sh

Script Bash qui crée un dépôt sur la forge (forge.gwenaelremond.fr) en appelant son API REST.

À quoi ça sert

Plutôt que de retaper une longue commande curl à chaque fois, le script prend le nom et la description du dépôt en arguments, et lit le token d'authentification dans une variable d'environnement (pour ne jamais l'écrire en dur dans le code).

Prérequis

Utilisation

# 1. Définir le token (une seule fois par session de terminal)
export FORGE_TOKEN="ton_token"

# 2. Lancer le script
./create_repo.sh <nom_du_repo> ["description"]

Exemple

export FORGE_TOKEN="b103fb7f..."
./create_repo.sh exercice "Adam"

Cela crée le dépôt exercice avec la description Adam.

Détail du fonctionnement

Partie du scriptRôle
set -euo pipefailArrête le script à la moindre erreur (sécurité)
Vérification de FORGE_TOKENRefuse de tourner si le token n'est pas défini
REPO_NAME / REPO_DESCRécupère les arguments passés en ligne de commande
curl -X POST .../api/v1/user/reposEnvoie la requête de création à l'API

La requête envoyée

curl -X POST "https://forge.gwenaelremond.fr/api/v1/user/repos" \
  -H "Authorization: token $FORGE_TOKEN" \
  -H "Content-Type: application/json" \
  -H "accept: application/json" \
  -d '{ "name": "exercice", "description": "Adam" }'

Codes de réponse possibles

Code HTTPSignification
201Dépôt créé avec succès
409Un dépôt portant ce nom existe déjà
401Token invalide ou manquant

Bonne pratique de sécurité

⚠️ Ne jamais écrire le token en clair dans le script ni le commiter dans Git. Si un token a été exposé, le révoquer et en générer un nouveau dans les paramètres de la forge.

← Retour à l'accueil