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
Wprowadzenie
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.
Instalacja
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.
Uwierzytelnianie
Masz dwie główne opcje uwierzytelniania:
Tryb interaktywny (logowanie przez przeglądarkę)
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.
Tryb nieinteraktywny (dla skryptów, CI i automatyzacji)
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.
Format wyjścia
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")
Przegląd komend
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
Przykład: Utworzenie usługi od początku do końca
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ąć.
Aktualizacja i deinstalacja
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.