Utilizzare la CLI

Come utilizzare la CLI di Stackhero

Nota: La CLI di Stackhero non è attualmente disponibile pubblicamente. Se desiderate accedervi, non esitate a contattarci via email a support@stackhero.io.

La CLI (Command Line Interface) di Stackhero è uno strumento versatile progettato per semplificare la gestione di stack e servizi. Supporta le piattaforme Linux, macOS e Windows, offrendo una vasta gamma di funzionalità su misura per sviluppatori e amministratori di sistema.

Attualmente in fase beta, la CLI è in sviluppo attivo. Gli aggiornamenti vengono rilasciati regolarmente per incorporare nuove funzionalità e rispondere ai feedback degli utenti. Se avete suggerimenti o riscontrate problemi, il vostro contributo è molto apprezzato.

Per autenticarsi con il proprio account Stackhero, è possibile utilizzare questo comando:

./stackhero login

Eseguendo questo comando, vi verrà chiesto di inserire la vostra email e password, collegandovi in modo sicuro al vostro account.

Ecco uno script di esempio per aiutarvi a creare un nuovo stack, aggiungere un servizio Node.js e configurare l'accesso utilizzando la vostra chiave pubblica SSH:

Prima di eseguire questo script, assicuratevi di avere il vostro ID organizzazione. Potete trovarlo eseguendo ./stackhero organizations-list e impostando l'ID risultante nella variabile organizationId dello script.

#!/bin/bash

# Uscire dallo script se un comando fallisce
set -e

# Recuperare il proprio ID organizzazione utilizzando "./stackhero organizations-list"
# Sostituire il placeholder qui sotto con l'ID reale
organizationId="org-XXXXXX"

# Definire i parametri dello stack e del servizio
stackName="Il Mio Nuovo Stack"
serviceStoreId="svs-jx7xob"
instanceStoreId="ist-4a63fd"

# Preparare la configurazione di Node.js
sshKey=$(cat ~/.ssh/id_rsa.pub)
configuration="{ \"sshPublicKeys\": [ { \"label\": \"\", \"key\": \"${sshKey}\" } ]}"

# Creare il nuovo stack
echo "Creazione dello stack..."
stackId=$(./stackhero --format=script stack-create \
  --organization-id="${organizationId}" \
  --name="${stackName}")
echo "Lo stack è stato creato con l'ID ${stackId}"
echo ""

echo "Aggiunta del servizio..."
serviceId=$(./stackhero --format=script service-add \
  --stack-id=${stackId} \
  --service-store-id=${serviceStoreId} \
  --instance-store-id=${instanceStoreId})
echo "Il servizio è stato aggiunto con l'ID ${serviceId}"
echo ""

# Attendere che il servizio sia operativo
echo "Attesa che il servizio sia operativo (~2 minuti)..."
./stackhero --format=script service-wait-for \
  --service-id=${serviceId}
echo ""

# Configurare il nuovo servizio
echo "Configurazione del servizio..."
./stackhero --format=script service-configuration-set \
  --service-id=${serviceId} \
  --configuration="${configuration}"
echo ""

# Finalizzare e confermare la configurazione
echo "Attesa della finalizzazione della configurazione del servizio..."
./stackhero --format=script service-wait-for \
  --service-id=${serviceId}
echo ""

echo "Configurazione completata. Il nuovo stack è pronto per la produzione."

Salvate questo script con un nome di file come laMiaPrimaAutomazione.sh. Per renderlo eseguibile, potete utilizzare il seguente comando:

chmod +x laMiaPrimaAutomazione.sh

Infine, eseguite lo script con:

./laMiaPrimaAutomazione.sh

Una volta eseguito con successo, dovreste vedere un output simile a questo:

Creazione dello stack...
Lo stack è stato creato con l'ID stk-XXXXXX

Aggiunta del servizio...
Il servizio è stato aggiunto con l'ID svc-XXXXXX

Attesa che il servizio sia operativo (~2 minuti)...
ok

Configurare il servizio
ok

Attesa che il servizio sia operativo...
ok

Tutto fatto, il nuovo stack è pronto per la produzione