Size: a a a

2019 December 04

НС

Никита Суворов in terraform_ru
Iurii Medvedev
В ямл не лучше будет)
в ямле это хотя бы компактно =)
источник

IM

Iurii Medvedev in terraform_ru
Никита Суворов
в ямле это хотя бы компактно =)
хрень редьки не слаще) а так врапер и впуть)
источник

i

inqfen in terraform_ru
Никита Суворов
в ямле это хотя бы компактно =)
Ну напиши на питоне скрипт на 5 строчек, который жрёт твой ямл а обратно json выплевывает
источник

i

inqfen in terraform_ru
Там 3 функции будут
источник

i

inqfen in terraform_ru
Прочитать файл, сделал ямл лоад, конверниуть в json и записать в новый файл
источник

НС

Никита Суворов in terraform_ru
inqfen
Там 3 функции будут
это я понимаю и не понимаю зачем тогда в тер занесли функции ямл декод энкод если оно их не умеет применять на input var =)
источник

i

inqfen in terraform_ru
Даже 2
источник

IM

Iurii Medvedev in terraform_ru
Никита Суворов
это я понимаю и не понимаю зачем тогда в тер занесли функции ямл декод энкод если оно их не умеет применять на input var =)
Для будущих фич
источник

IM

Iurii Medvedev in terraform_ru
Никита Суворов
в ямле это хотя бы компактно =)
вот тебе пример ямл
resource "null_resource" "cluster" {

 triggers = {
   cluster_instance_ids = "${yamldecode(file("test.yml"))["test"]}"
 }
}
Сам ямл
test: 1
test2: 2
test3: 3
и apply
  # null_resource.cluster will be created
 + resource "null_resource" "cluster" {
     + id       = (known after apply)
     + triggers = {
         + "cluster_instance_ids" = "1"
       }
   }

output
log = {
 "id" = "6476094201200877563"
 "triggers" = {
   "cluster_instance_ids" = "1"
 }
}
источник

AK

Andrey Kartashov in terraform_ru
Никита Суворов
для примера у меня одна переменная выгядит
border = {
 name          = "border"
 flavor        = "m1.tiny"
 start_address = 50
 net           = [«mgmt», «flat»]
 sg = ["default", "service"]
 size          = 1
 root_disk     = {
   size = 1
   type = "fast"
 }
 volume = {
     data01 = {
         size = 1
         type = "fast"
  }
 data02 = {
         size = 2
         type = "slow"
  }
 data03 = {
         size = 3
         type = "slow"
  }
 }
}
border = {
 name          = "border"
 flavor        = "m1.tiny"
 start_address = 50
 net           = [«mgmt», «flat»]
 sg = ["default", "service"]
 size          = 1
 root_disk     = {
   size = 1
   type = "fast" }
 volume = {
     data01 = {
         size = 1
         type = "fast" }
 data02 = {
         size = 2
         type = "slow"  }
 data03 = {
         size = 3
         type = "slow" }}}

только tf fmt всё похерит
источник

НС

Никита Суворов in terraform_ru
Andrey Kartashov
border = {
 name          = "border"
 flavor        = "m1.tiny"
 start_address = 50
 net           = [«mgmt», «flat»]
 sg = ["default", "service"]
 size          = 1
 root_disk     = {
   size = 1
   type = "fast" }
 volume = {
     data01 = {
         size = 1
         type = "fast" }
 data02 = {
         size = 2
         type = "slow"  }
 data03 = {
         size = 3
         type = "slow" }}}

только tf fmt всё похерит
нет
источник

AK

Andrey Kartashov in terraform_ru
что нет? на ямле столько же строчек будет
источник

AK

Andrey Kartashov in terraform_ru
ну разве что кавычки ещё уберутся
источник

НС

Никита Суворов in terraform_ru
Andrey Kartashov
что нет? на ямле столько же строчек будет
fmt не похерит, либо мы о разном
источник

IM

Iurii Medvedev in terraform_ru
fmt не знает ничего про yaml
источник

AK

Andrey Kartashov in terraform_ru
я про тот, который terrafrom fmt
источник

AK

Andrey Kartashov in terraform_ru
Iurii Medvedev
fmt не знает ничего про yaml
да
источник

НС

Никита Суворов in terraform_ru
Andrey Kartashov
я про тот, который terrafrom fmt
я понимаю
источник

IM

Iurii Medvedev in terraform_ru
так что ничего не похерит
Iuriis-MacBook-Pro:test iuriimedvedev$ terraform fmt -check
Iuriis-MacBook-Pro:test iuriimedvedev$
вот натравил на нул ресурс с ямл
источник

НС

Никита Суворов in terraform_ru
и он не будет трогать не tf файлы
источник