Версия Terraform не соблюдается - PullRequest
0 голосов
/ 17 января 2020

Я проверяю модуль terraform, а также указываю версию поставщика terraform helm следующим образом

provider helm {
    enable_tls = true
    install_tiller  = "false"
    version = "~>0.10.3"
}

module "my-module" {
  source = "../"
}

Однако при просмотре версии я получаю другую версию для helm провайдер (который также кажется самым последним)

+ provider.google v2.20.1
+ provider.helm v0.10.4
+ provider.kubernetes v1.10.0
+ provider.null v2.1.2
+ provider.template v2.1.2

Почему это так?

edit однако при запуске terraform providers отображается правильная версия

.
├── provider.helm ~>0.10.3
└── module.my-module
    ├── provider.google
    ├── provider.helm (inherited)
    ├── provider.kubernetes
    ├── provider.null
    └── provider.template

1 Ответ

2 голосов
/ 17 января 2020

Ограничение версии ~> - это «оператор ограничения pessimisti c», который позволяет выполнить обновление до самой узкой указанной версии.

Документация блока настроек Terraform объясняет ограничения версии более подробно подробно:

Допустимы следующие операторы ограничения:

  • = (или без оператора): точное равенство версий

  • ! =: Версия не равна

  • >,> =, <, <=: сравнение версий, где «больше чем» - номер версии большего размера </p>

  • ~>: оператор ограничения pessimisti c, ограничивающий как самую старую, так и самую новую допустимую версию. Например, ~> 0,9 эквивалентно> = 0,9, <1,0 и ~> 0,8,4, эквивалентно> = 0,8,4, <0,9 </p>

...