Utiliser la CLI
Comment utiliser la CLI de Stackhero
Note : La CLI Stackhero n'est actuellement pas disponible publiquement. Si vous souhaitez y accéder, n'hésitez pas à nous contacter par e-mail à support@stackhero.io.
Introduction
La CLI (Command Line Interface) Stackhero est un outil polyvalent conçu pour simplifier la gestion des stacks et des services. Compatible avec les plateformes Linux, macOS et Windows, elle offre une large gamme de 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 régulièrement déployées pour intégrer de nouvelles fonctionnalités et répondre aux retours des utilisateurs. Si vous avez des suggestions ou rencontrez des problèmes, vos retours sont grandement appréciés.
Authentification
Pour vous authentifier avec votre compte Stackhero, vous pouvez utiliser cette commande :
./stackhero login
L'exécution de cette commande vous invitera à entrer votre e-mail et votre mot de passe, vous connectant ainsi de manière sécurisée à votre compte.
Exemple
Voici un script exemple pour vous aider à créer un nouveau stack, y ajouter un service Node.js et configurer l'accès à l'aide de votre clé publique SSH :
Avant d'exécuter ce script, assurez-vous de disposer de votre ID d'organisation. Vous pouvez le trouver en exécutant
./stackhero organizations-listet en définissant l'ID obtenu dans la variableorganizationIddu script.
#!/bin/bash
# Quitter le script si une commande échoue
set -e
# Récupérez votre ID d'organisation en utilisant "./stackhero organizations-list"
# Remplacez le placeholder ci-dessous par l'ID réel
organizationId="org-XXXXXX"
# Définir les paramètres du stack et du service
stackName="Mon Nouveau Stack"
serviceStoreId="svs-jx7xob"
instanceStoreId="ist-4a63fd"
# Préparer la configuration de Node.js
sshKey=$(cat ~/.ssh/id_rsa.pub)
configuration="{ \"sshPublicKeys\": [ { \"label\": \"\", \"key\": \"${sshKey}\" } ]}"
# Créer le 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 ""
# Attendre que le service soit opérationnel
echo "Attente que le service soit opérationnel (~2 minutes)..."
./stackhero --format=script service-wait-for \
--service-id=${serviceId}
echo ""
# Configurer le nouveau service
echo "Configuration du service..."
./stackhero --format=script service-configuration-set \
--service-id=${serviceId} \
--configuration="${configuration}"
echo ""
# Finaliser et confirmer 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 sous un nom de fichier tel que monPremierAutomatisation.sh. Pour le rendre exécutable, vous pouvez utiliser la commande suivante :
chmod +x monPremierAutomatisation.sh
Enfin, exécutez le script avec :
./monPremierAutomatisation.sh
Une fois exécuté avec succès, vous devriez voir une sortie similaire à celle-ci :
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 que le service soit opérationnel (~2 minutes)...
ok
Configurer le service
ok
Attente que le service soit opérationnel...
ok
Tout est prêt, le nouveau stack est prêt pour la production