Adam
Find a file
2026-06-16 16:24:41 +02:00
site Ajout de la prise en charge de l'écoute sur IPv6 dans la configuration Nginx et correction de l'URL de vérification de l'état dans le Dockerfile 2026-06-16 12:05:52 +02:00
.gitignore Ajout du fichier .DS_Store pour la gestion des métadonnées du système 2026-06-16 16:24:41 +02:00
create_repo.sh Rend FORGE_URL configurable via variable d'environnement 2026-06-16 11:59:48 +02:00
exemple.html Add initial documentation for create_repo.sh and site structure 2026-06-15 17:01:11 +02:00
exemple.md Add initial documentation for create_repo.sh and site structure 2026-06-15 17:01:11 +02:00
README.html Add initial documentation for create_repo.sh and site structure 2026-06-15 17:01:11 +02:00
README.md Add initial documentation for create_repo.sh and site structure 2026-06-15 17:01:11 +02:00

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

  • curl (installé par défaut sur macOS et Linux)
  • Un token d'accès à la forge (Settings → Applications → Generate New Token)

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 script Rôle
set -euo pipefail Arrête le script à la moindre erreur (sécurité)
Vérification de FORGE_TOKEN Refuse de tourner si le token n'est pas défini
REPO_NAME / REPO_DESC Récupère les arguments passés en ligne de commande
curl -X POST .../api/v1/user/repos Envoie la requête de création à l'API

La requête envoyée

Le script construit cette requête HTTP :

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 HTTP Signification
201 Dépôt créé avec succès
409 Un dépôt portant ce nom existe déjà
401 Token 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.