GitLab: Automatiseren met de CLI
Start GitLab, haal de inloggegevens op en wijzig de configuratie programmatisch met de Stackhero CLI
👋 Welkom bij de Stackhero-documentatie!
Stackhero biedt een kant-en-klare GitLab cloud oplossing die tal van voordelen biedt, waaronder:
- Onbeperkt aantal gebruikers, repositories, overdrachten en CI/CD verwerkingstijd.
- Moeiteloze updates met slechts één klik.
- Aanpasbare domeinnaam beveiligd met HTTPS (bijvoorbeeld, https://git.uw-bedrijf.com).
- Optimale prestaties en robuuste beveiliging aangedreven door een privé en dedicated VM.
- Beschikbaar in 🇪🇺 Europa en 🇺🇸 USA.
Bespaar tijd en vereenvoudig uw leven: het kost slechts 5 minuten om de GitLab cloud hosting oplossing van Stackhero te proberen!
In deze gids ziet u hoe u een GitLab-service aanmaakt, de inloggegevens uitleest en de configuratie bijwerkt, volledig vanaf de command line, zonder handmatige acties in het dashboard. Dit is ideaal voor scripts, CI-pijplijnen en AI-agents.
Voor alle taken gebruiken we de Stackhero CLI. Als u deze nog niet heeft geïnstalleerd, doet u dat als volgt:
curl -fsSL https://www.stackhero.io/install.sh | sh
1. Authenticeren
De eenvoudigste manier om te starten is door in te loggen via uw browser. Wanneer u het login-commando uitvoert, opent de CLI een webpagina waar u toegang kunt goedkeuren. Er worden geen wachtwoorden of 2FA-codes ingevoerd in de CLI zelf.
stackhero login
Na het inloggen worden uw inloggegevens lokaal opgeslagen en automatisch gebruikt bij volgende CLI-commando's.
Voor volledig geautomatiseerde omgevingen zoals scripts of CI-pijplijnen kunt u beter een niet-interactieve access token gebruiken. U maakt deze aan via uw dashboard (Account > Access tokens) en exporteert deze vervolgens als omgevingsvariabele. De CLI en elk script dat u uitvoert, nemen deze automatisch over.
export STACKHERO_TOKEN="usr-xxxxxx:your-token"
2. Zoek de GitLab service store
Vervolgens wilt u de beschikbare GitLab service stores in uw account opvragen. De CLI accepteert direct de naam van de store (gitlab), dus u hoeft geen ID's op te zoeken of te kopiëren.
# Lijst GitLab service stores (voeg --organization toe als u er meer dan één beheert)
stackhero services-store-list --name="gitlab"
U kunt de store-naam gitlab in volgende commando's gebruiken, of een specifiek svs-xxxxxx ID uit de lijst kiezen als u dat wilt.
3. Kies een instance size en regio
# Lijst instance sizes voor uw service store (gebruik de kolom NAME voor --instance)
stackhero instances-store-list --service-store=gitlab
# Lijst beschikbare regio's (namen zoals "europe")
stackhero regions-list
4. Maak de service aan
Hieronder vindt u een voorbeeldscript dat een stack aanmaakt, uw GitLab-service toevoegt, wacht tot deze is gestart, de configuratie (inclusief gegenereerde inloggegevens) ophaalt en vervolgens een nieuwe configuratie toepast.
#!/bin/bash
set -e
export STACKHERO_TOKEN="usr-xxxxxx:your-token"
serviceStore="gitlab" # De naam van de GitLab service store (zie stap 2)
instance="..." # Een instance size uit stap 3
region="europe" # Een regiocode uit stap 3
# Maak een stack aan voor uw service (gebruikt uw standaardorganisatie; voeg --organization toe indien nodig)
stackId=$(stackhero --format=script stack-create \
--name="My GitLab stack")
echo "Stack aangemaakt: ${stackId}"
# Voeg GitLab toe aan de stack (namen worden automatisch herkend)
serviceId=$(stackhero --format=script service-add \
--stack="My GitLab stack" \
--service-store="${serviceStore}" \
--instance="${instance}" \
--region="${region}")
echo "Service toegevoegd: gitlab"
# Wacht tot de service volledig draait (dit kan enkele minuten duren)
stackhero service-wait-for --service="gitlab"
# Haal de serviceconfiguratie op, inclusief gegenereerde inloggegevens
stackhero service-configuration-get --service="gitlab" --format=json
5. Inloggegevens ophalen
Het commando service-configuration-get geeft de volledige configuratie van uw service terug, inclusief automatisch gegenereerde wachtwoorden en verbindingsgegevens. De uitvoer is in JSON-formaat, wat het eenvoudig maakt om te gebruiken in scripts en automatisering.
stackhero service-configuration-get --service=svc-xxxxxx --format=json
6. Wijzig de configuratie
U kunt een voorbeeld van het configuratieschema bekijken en vervolgens uw eigen instellingen toepassen. Wanneer u de configuratie bijwerkt, kan de service opnieuw opstarten om de wijzigingen toe te passen.
# Bekijk het configuratieschema en een voorbeeld voor uw service
stackhero service-configuration-example --service=svc-xxxxxx
# Pas een aangepaste configuratie toe (de service wordt indien nodig herstart)
stackhero service-configuration-set \
--service=svc-xxxxxx \
--configuration='{ "...": "..." }'
# Wacht tot de nieuwe configuratie is toegepast
stackhero service-wait-for --service=svc-xxxxxx
Dat is alles. U heeft nu het volledige proces gezien: een service starten, inloggegevens ophalen en opnieuw configureren, allemaal op een scriptbare en geautomatiseerde manier. Wilt u meer weten? Bekijk dan de volledige CLI-documentatie, waarin ook de niet-interactieve STACKHERO_TOKEN authenticatie wordt behandeld zoals hierboven getoond.