Pour pouvoir mettre en place un cluster ou meme un simple compute sur gcloud via terraform, il faut une autorisation. Pour cela, il faut utiliser les iam.

authentification gcloud

gcloud auth login
gcloud config set project my-project

Récupération des iam présentes

gcloud iam service-accounts list

Génération d'un fichier account.json

gcloud iam service-accounts keys create account.json --iam-account **ID**

Utilisation de ce compte pour terraform

Pour cela, il suffit de positionner la variable d'environnement, avant exécuter les commandes terraform

export GOOGLE_APPLICATION_CREDENTIALS=account.json

Nous utilisons le provider google suivant :

provider "google" {
  credentials = "${file("account.json")}"
  project     = "testpascal"
  region      = "europe-west2-a"
}