Utiliser la CLI
Comment utiliser la CLI de Stackhero
Note: La CLI Stackhero n'est pas encore disponible publiquement. Si vous souhaitez y accéder, n'hésitez pas à nous contacter par e-mail à [email protected].
Introduction
La CLI Stackhero (Command Line Interface) est un outil polyvalent conçu pour simplifier la gestion des stacks et des services. Compatible avec Linux, macOS et Windows, elle propose de nombreuses fonctionnalités adaptées aux développeurs et aux administrateurs système.
Actuellement en phase bêta, la CLI est en développement actif. Des mises à jour sont publiées régulièrement pour ajouter de nouvelles fonctionnalités et prendre en compte les retours des utilisateurs. Si vous avez des suggestions ou rencontrez des problèmes, vos retours sont les bienvenus.
Authentification
Pour vous authentifier avec votre compte Stackhero, utilisez la commande suivante :
./stackhero login
L'exécution de cette commande vous invite à saisir votre e-mail et votre mot de passe, afin de vous connecter de manière sécurisée à votre compte.
Exemple
Voici un script d'exemple pour créer un nouveau stack, y ajouter un service Node.js et configurer l'accès avec votre clé publique SSH :
Avant d'exécuter ce script, assurez-vous de disposer de votre ID d'organisation. Vous pouvez l'obtenir en lançant
./stackhero organizations-listet en renseignant l'ID obtenu dans la variableorganizationIddu script.
#!/bin/bash
# Arrête le script en cas d'erreur
set -e
# Récupérez votre ID d'organisation avec "./stackhero organizations-list"
# Remplacez la valeur ci-dessous par l'ID réel
organizationId="org-XXXXXX"
# Définition des paramètres du stack et du service
stackName="My New Stack"
serviceStoreId="svs-jx7xob"
instanceStoreId="ist-4a63fd"
# Préparation de la configuration Node.js
sshKey=$(cat ~/.ssh/id_rsa.pub)
configuration="{ \"sshPublicKeys\": [ { \"label\": \"\", \"key\": \"${sshKey}\" } ]}"
# Création du nouveau stack
echo "Création du stack..."
stackId=$(./stackhero --format=script stack-create \
--organization-id="${organizationId}" \
--name="${stackName}")
echo "Le stack a été créé avec l'ID ${stackId}"
echo ""
echo "Ajout du service..."
serviceId=$(./stackhero --format=script service-add \
--stack-id=${stackId} \
--service-store-id=${serviceStoreId} \
--instance-store-id=${instanceStoreId})
echo "Le service a été ajouté avec l'ID ${serviceId}"
echo ""
# Attente de la disponibilité du service
echo "Attente de la mise en ligne du service (~2 minutes)..."
./stackhero --format=script service-wait-for \
--service-id=${serviceId}
echo ""
# Configuration du nouveau service
echo "Configuration du service..."
./stackhero --format=script service-configuration-set \
--service-id=${serviceId} \
--configuration="${configuration}"
echo ""
# Finalisation et confirmation de la configuration
echo "Attente de la finalisation de la configuration du service..."
./stackhero --format=script service-wait-for \
--service-id=${serviceId}
echo ""
echo "Configuration terminée. Le nouveau stack est prêt pour la production."
Enregistrez ce script dans un fichier, par exemple myFirstAutomation.sh. Pour le rendre exécutable, utilisez la commande suivante :
chmod +x myFirstAutomation.sh
Enfin, lancez le script avec :
./myFirstAutomation.sh
Après exécution, vous devriez obtenir un résultat similaire à ceci :
Création du stack...
Le stack a été créé avec l'ID stk-XXXXXX
Ajout du service...
Le service a été ajouté avec l'ID svc-XXXXXX
Attente de la mise en ligne du service (~2 minutes)...
ok
Configuration du service
ok
Attente de la mise en ligne du service...
ok
Tout est prêt, le nouveau stack est prêt pour la production