terraform скрыть значения, которые показывают <computed> - PullRequest
0 голосов
/ 23 января 2019

В плане terraform есть много значений, которые показывают <computed>, например:

aws_s3_bucket.environment-store: Creating...
  acceleration_status:         "" => "<computed>"
  acl:                         "" => "private"
  arn:                         "" => "<computed>"
  bucket:                      "" => "my-unique-bucket-1234"
  bucket_domain_name:          "" => "<computed>"
  bucket_regional_domain_name: "" => "<computed>"
  force_destroy:               "" => "false"
  hosted_zone_id:              "" => "<computed>"
  region:                      "" => "<computed>"
  request_payer:               "" => "<computed>"
  tags.%:                      "" => "2"
  tags.Environment:            "" => "env-tag"
  tags.Name:                   "" => "Storage for my environment"
  versioning.#:                "" => "1"
  versioning.0.enabled:        "" => "true"
  versioning.0.mfa_delete:     "" => "false"
  website_domain:              "" => "<computed>"
  website_endpoint:            "" => "<computed>"

Есть ли способ не показывать линии, которые имеют значение "<computed>", например так:

aws_s3_bucket.environment-store: Creating...
  acl:                         "" => "private"
  bucket:                      "" => "my-unique-bucket-1234"
  force_destroy:               "" => "false"
  tags.%:                      "" => "2"
  tags.Environment:            "" => "env-tag"
  tags.Name:                   "" => "Storage for my environment"
  versioning.#:                "" => "1"
  versioning.0.enabled:        "" => "true"
  versioning.0.mfa_delete:     "" => "false"

Редактировать: я забыл упомянуть, что grep -v здесь не вариант - он может удалить больше, чем предполагалось, независимо от сложности шаблона.

Ответы [ 2 ]

0 голосов
/ 01 февраля 2019

Можно просто перенаправить стандартный вывод плана в исключение grep.

terraform plan | grep -v ' => <computed>'

или даже

alias tfnc="terraform plan | grep -v ' => <computed>'"
tfnc

Если этого недостаточно, вы можете установить terraform-plan-parser и написать скрипт для анализа атрибутов, которые не <computed>.

0 голосов
/ 23 января 2019

Я не верю, что можно скрыть только подмножество полей для создаваемого ресурса.

Согласно документации для terraform plan команды , вы можете использовать-module-depth=n флаг для контроля объема данных, выводимых на консоль.Я считаю, что если вы установите -module-depth=0, вы не получите никакого вывода, но я не на своем ноутбуке, чтобы проверить / подтвердить это прямо сейчас.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...