Le client officiel de l'API GO pour HCP Terraform et Terraform Enterprise.
Ce client prend en charge l'API HCP Terraform V2. Comme Terraform Enterprise est une distribution auto-hébergée de HCP Terraform, ce client prend en charge les cas d'utilisation HCP Terraform et Terraform. Dans toutes les documents de package et API, la plate-forme sera toujours considérée comme «Terraform Enterprise» - mais une fonctionnalité sera explicitement notée comme uniquement prise en charge dans l'une ou l'autre, le cas échéant (rare).
Presque toujours, les changements de version mineure indiqueront des fonctionnalités et des améliorations compatibles vers l'arrière. Parfois, les modifications de signature de fonction qui reflètent un correctif de bogue peuvent apparaître comme un changement de version mineure. Les modifications de la version de patch seront utilisées pour les corrections de bogues, les améliorations des performances et les modifications autrement impact.
Construisez un nouveau client TFE, puis utilisez les différents points de terminaison du client pour accéder à différentes parties de l'API Enterprise Terraform. L'exemple suivant répertorie toutes les organisations.
import (
"context"
"log"
"github.com/hashicorp/go-tfe"
)
config := & tfe. Config {
Address : "https://tfe.local" ,
Token : "insert-your-token-here" ,
RetryServerErrors : true ,
}
client , err := tfe . NewClient ( config )
if err != nil {
log . Fatal ( err )
}
orgs , err := client . Organizations . List ( context . Background (), nil )
if err != nil {
log . Fatal ( err )
}
La configuration par défaut utilise les variables d'environnement TFE_ADDRESS
et TFE_TOKEN
.
TFE_ADDRESS
- URL d'une instance HCP Terraform ou Terraform Enterprise. Exemple: https://tfe.local
TFE_TOKEN
- Un jeton API pour l'instance HCP Terraform ou Terraform Enterprise. Remarque: Alternativement, vous pouvez définir TFE_HOSTNAME
qui sert de repli pour TFE_ADDRESS
. Il ne sera utilisé que si TFE_ADDRESS
n'est pas défini et résoudra l'hôte dans un schéma https
. Exemple: tfe.local
=> se résout en https://tfe.local
Les variables d'environnement sont utilisées comme secours pour configurer le client TFE si les valeurs d'adresse ou de jeton ne sont pas fournies comme dans les cas ci-dessous:
import (
"context"
"log"
"github.com/hashicorp/go-tfe"
)
// Passing nil to tfe.NewClient method will also use the default configuration
client , err := tfe . NewClient ( tfe . DefaultConfig ())
if err != nil {
log . Fatal ( err )
}
orgs , err := client . Organizations . List ( context . Background (), nil )
if err != nil {
log . Fatal ( err )
}
import (
"context"
"log"
"github.com/hashicorp/go-tfe"
)
config := & tfe. Config {
Address : "" ,
Token : "" ,
}
client , err := tfe . NewClient ( config )
if err != nil {
log . Fatal ( err )
}
orgs , err := client . Organizations . List ( context . Background (), nil )
if err != nil {
log . Fatal ( err )
}
Pour une utilisation complète du client API, consultez les documents du package complet.
Ce client API couvre la plupart des appels API HCP Terraform existants et est mis à jour régulièrement pour ajouter des points de terminaison nouveaux ou manquants.
Voir le répertoire des exemples.
Voir tests.md.
Voir contribution.md
Voir les versions.md