Adam
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Azmog 12adf2996b Ajout des fichiers Dockerfile et nginx.conf pour la configuration du site avec Zola et Nginx 7 hours ago
site Ajout des fichiers Dockerfile et nginx.conf pour la configuration du site avec Zola et Nginx 7 hours ago
README.html Add initial documentation for create_repo.sh and site structure 1 day ago
README.md Add initial documentation for create_repo.sh and site structure 1 day ago
create_repo.sh Ajout du script create_repo.sh 1 day ago
exemple.html Add initial documentation for create_repo.sh and site structure 1 day ago
exemple.md Add initial documentation for create_repo.sh and site structure 1 day ago

README.md

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.