Używanie CLI

Zainstaluj i korzystaj z Stackhero CLI, aby zarządzać swoimi stackami i usługami z poziomu wiersza poleceń, skryptów, CI oraz agentów AI

Stackhero CLI to lekki, samodzielny program wiersza poleceń, zaprojektowany, aby umożliwić łatwe zarządzanie stackami i usługami. Dzięki niemu możesz tworzyć i usuwać usługi, uzyskiwać dostęp do danych uwierzytelniających, aktualizować konfiguracje i wiele więcej — wszystko bezpośrednio z terminala. CLI jest kompatybilne z systemami Linux (glibc i musl), macOS oraz Windows i dostarczane jako pojedynczy plik binarny bez zależności, co upraszcza instalację i aktualizacje.

Niezależnie od tego, czy pracujesz interaktywnie, czy automatyzujesz procesy za pomocą skryptów, pipeline'ów CI lub agentów AI, Stackhero CLI jest stworzone zarówno dla użytkowników, jak i do automatyzacji. Każda komenda obsługuje flagę --format=json dla wyjścia czytelnego dla maszyn oraz --format=script do pobierania surowych wartości do zmiennych powłoki.

Aby zainstalować najnowszą wersję, uruchom:

curl -fsSL https://www.stackhero.io/install.sh | sh

Polecenie to pobiera odpowiedni plik binarny dla Twojej platformy i instaluje go jako stackhero. CLI automatycznie dba również o własne aktualizacje.

Masz dwie główne opcje uwierzytelniania:

stackhero login

Po uruchomieniu tej komendy otrzymasz adres URL (który również automatycznie otworzy się w Twojej przeglądarce). Następnie możesz zatwierdzić dostęp bezpośrednio z poziomu swojego panelu Stackhero, gdzie jesteś już zalogowany. Pełne wsparcie dla uwierzytelniania dwuskładnikowego — nigdy nie musisz wpisywać hasła w CLI.

Dla zautomatyzowanych procesów możesz utworzyć token dostępu w panelu (Konto > Access tokens) i przekazać go do CLI za pomocą zmiennej środowiskowej STACKHERO_TOKEN.

export STACKHERO_TOKEN="usr-xxxxxx:your-token"
stackhero organizations-list

Jeśli ustawisz STACKHERO_TOKEN, ma on pierwszeństwo przed sesjami interaktywnymi, więc przeglądarka nie jest wymagana. To zalecana metoda dla zastosowań nieinteraktywnych. Tokeny możesz przeglądać i cofać w dowolnym momencie w swoim panelu.

Każda komenda CLI akceptuje globalną opcję --format:

  • human (domyślnie): Wyświetla czytelne tabele i tekst do pracy interaktywnej.
  • json: Zwraca dane w formacie JSON, idealne do skryptów i agentów AI.
  • script: Zwraca tylko surowe wartości, co ułatwia przypisywanie wyników do zmiennych powłoki.

Przykład:

stackhero organizations-list --format=json
stackId=$(stackhero --format=script stack-create --organization-id=org-xxxxxx --name="My stack")

Aby uzyskać pełną listę dostępnych komend, uruchom stackhero --help. Szczegółowe informacje o konkretnej komendzie znajdziesz, wpisując stackhero KOMENDA --help.

Najczęściej używane komendy to:

  • Organizations: organizations-list
  • Stacks: stacks-list, stack-create, stack-rename, stack-delete
  • Services: services-list, service-add, service-wait-for, service-rename, service-delete
  • Configuration: service-configuration-get, service-configuration-set, service-configuration-example
  • Store: services-store-list, instances-store-list, regions-list
  • Upgrades: service-upgrade-instances-store-list, service-upgrade-instance
  • Account: login, logout
  • Maintenance: self-update

Poniżej znajduje się przykładowy skrypt pokazujący, jak utworzyć stack, dodać usługę, poczekać na jej gotowość i pobrać dane uwierzytelniające. Przykład jest całkowicie nieinteraktywny i wykorzystuje zmienną środowiskową STACKHERO_TOKEN.

#!/bin/bash
set -e

export STACKHERO_TOKEN="usr-xxxxxx:your-token"

organizationId="org-xxxxxx"
serviceStoreId="svs-xxxxxx"   # Możesz znaleźć za pomocą: stackhero services-store-list --organization-id=org-xxxxxx
instanceStoreId="ist-xxxxxx"  # Możesz znaleźć za pomocą: stackhero instances-store-list --organization-id=org-xxxxxx --service-store-id=svs-xxxxxx
regionId="europe"             # Możesz znaleźć za pomocą: stackhero regions-list

# Utwórz stack
stackId=$(stackhero --format=script stack-create \
  --organization-id="${organizationId}" \
  --name="My stack")
echo "Stack: ${stackId}"

# Dodaj usługę
serviceId=$(stackhero --format=script service-add \
  --stack-id="${stackId}" \
  --service-store-id="${serviceStoreId}" \
  --instance-store-id="${instanceStoreId}" \
  --region-id="${regionId}")
echo "Service: ${serviceId}"

# Poczekaj, aż usługa będzie gotowa
stackhero service-wait-for --service-id="${serviceId}"

# Pobierz dane uwierzytelniające i konfigurację
stackhero service-configuration-get --service-id="${serviceId}" --format=json

Dokumentacja każdej usługi zawiera gotowy do użycia przewodnik "Automatyzacja z CLI" dostosowany do danej usługi, więc znajdziesz tam wszystko, czego potrzebujesz, aby zacząć.

CLI aktualizuje się automatycznie. Jeśli chcesz wymusić ręczną aktualizację, uruchom:

stackhero self-update

Aby odinstalować CLI, po prostu usuń plik binarny stackhero ze swojego systemu.