Comment utiliser le profil pour authentifier et appliquer un fichier terraform


0

Je veux pouvoir déployer des fichiers de script sur aws lambda en utilisant un fichier terraform.

Voici un mon fichier:

terraform {
  required_version = "0.11.7"
}

variable "region" {}


provider "aws" {
  region = "${var.region}"
  version = "2.00"
}



// Zip the scripts folder (thus creating a package) before supplying it to the lambda function.
data "archive_file" "package_zip" {
  type = "zip"
  source_dir = "${path.root}/scripts/"  # Path from top level module.
  output_path = "./sources.zip"
}

resource "aws_lambda_function" "anthony_test_lambda" {
  filename      = "lambda_function_payload.zip"
  function_name = "anthony_test_lambda"
  role          = "new-role"
  handler       = "lambda_function.lambda_handler"

  source_code_hash = "${data.archive_file.package_zip.output_base64sha256}"

  runtime = "python3.7"


}

Je veux garder le script aussi flexible que possible car je ne suis peut-être pas le seul à travailler sur le script à l'avenir.

Je souhaite pouvoir piloter le processus à l'aide du profil AWS. Voici ce que j'ai essayé:

 export AWS_PROFILE=a_team
 tf apply

J'ai eu cette erreur:

* provider.aws: No valid credential sources found for AWS Provider.
    Please see https://terraform.io/docs/providers/aws/index.html for more information on
    providing credentials for the AWS Provider

Je ne peux pas utiliser l'identifiant et le secret de la clé d'accès AWS.

Comment puis-je résoudre ce problème?

Réponses:


1

Il peut y avoir un problème avec la variable d'environnement AWS_PROFILE, assurez-vous que AWS_SECRET_ACCESS_KEY et AWS_ACCESS_KEY_ID sont non définis. Cela garantira que les clés qu'il prend via la variable d'environnement proviennent de la variable d'environnement AWS_PROFILE.

Reportez-vous à la section Variable d'environnement sous l' article https://www.terraform.io/docs/providers/aws/index.html pour savoir comment définir les variables d'environnement pour vos clés secrètes et d'accès.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.