Usar la CLI
Cómo usar la CLI de Stackhero
Nota: La CLI de Stackhero no está disponible públicamente en este momento. Si desea acceder a ella, no dude en enviarnos un correo electrónico a support@stackhero.io.
Introducción
La CLI (Interfaz de Línea de Comandos) de Stackhero es una herramienta versátil diseñada para simplificar la gestión de stacks y servicios. Compatible con plataformas Linux, macOS y Windows, ofrece una amplia gama de funcionalidades adaptadas para desarrolladores y administradores de sistemas.
Actualmente en su fase beta, la CLI está en desarrollo activo. Se lanzan actualizaciones regularmente para incorporar nuevas características y abordar los comentarios de los usuarios. Si tiene alguna sugerencia o encuentra problemas, su opinión es muy apreciada.
Autenticación
Para autenticarse con su cuenta de Stackhero, puede usar este comando:
./stackhero login
Ejecutar este comando le pedirá que ingrese su correo electrónico y contraseña, conectándolo de manera segura a su cuenta.
Ejemplo
Aquí tiene un script de ejemplo para ayudarle a crear un nuevo stack, agregar un servicio Node.js y configurar el acceso usando su clave pública SSH:
Antes de ejecutar este script, asegúrese de tener su ID de organización. Puede encontrarlo ejecutando ./stackhero organizations-list y estableciendo el ID resultante en la variable organizationId del script.
#!/bin/bash
# Salir del script si falla algún comando
set -e
# Recupere su ID de organización usando "./stackhero organizations-list"
# Reemplace el marcador de posición a continuación con el ID real
organizationId="org-XXXXXX"
# Definir los parámetros del stack y del servicio
stackName="Mi Nuevo Stack"
serviceStoreId="svs-jx7xob"
instanceStoreId="ist-4a63fd"
# Preparar la configuración de Node.js
sshKey=$(cat ~/.ssh/id_rsa.pub)
configuration="{ \"sshPublicKeys\": [ { \"label\": \"\", \"key\": \"${sshKey}\" } ]}"
# Crear el nuevo stack
echo "Creando stack..."
stackId=$(./stackhero --format=script stack-create \
--organization-id="${organizationId}" \
--name="${stackName}")
echo "El stack fue creado con el ID ${stackId}"
echo ""
echo "Agregando servicio..."
serviceId=$(./stackhero --format=script service-add \
--stack-id=${stackId} \
--service-store-id=${serviceStoreId} \
--instance-store-id=${instanceStoreId})
echo "El servicio ha sido agregado con el ID ${serviceId}"
echo ""
# Esperar a que el servicio esté operativo
echo "Esperando a que el servicio esté en funcionamiento (~2 minutos)..."
./stackhero --format=script service-wait-for \
--service-id=${serviceId}
echo ""
# Configurar el nuevo servicio
echo "Configurando el servicio..."
./stackhero --format=script service-configuration-set \
--service-id=${serviceId} \
--configuration="${configuration}"
echo ""
# Finalizar y confirmar la configuración
echo "Esperando a que el servicio finalice la configuración..."
./stackhero --format=script service-wait-for \
--service-id=${serviceId}
echo ""
echo "Configuración completa. El nuevo stack está listo para producción."
Guarde este script con un nombre de archivo como miPrimeraAutomatizacion.sh. Para hacerlo ejecutable, puede usar el siguiente comando:
chmod +x miPrimeraAutomatizacion.sh
Finalmente, ejecute el script con:
./miPrimeraAutomatizacion.sh
Una vez ejecutado con éxito, debería ver una salida como esta:
Creando stack...
El stack fue creado con el ID stk-XXXXXX
Agregando servicio...
El servicio ha sido agregado con el ID svc-XXXXXX
Esperando a que el servicio esté en funcionamiento (~2 minutos)...
ok
Configurar el servicio
ok
Esperando a que el servicio esté en funcionamiento...
ok
Todo listo, el nuevo stack está listo para producción