Могу ли я использовать учетные данные поставщика для операции импорта terraform?

#terraform #terraform0.12

Вопрос:

Я пишу поставщика terraform, и существует 2 типа учетных данных: глобальные (которые устанавливаются в provider блоке) и локальные (которые устанавливаются для каждого ресурса).

Проблема в том, что оба они, чтобы импортировать ресурс, разумно передать их в terraform import command, а затем проанализировать его составленный идентификатор как идентификатор ресурса и его учетные данные? Т.е..,

 terraform import my_provider.my_example_resource abc123/LOCAL_ABC123_USERNAME/LOCAL_ABC123_PASSWORD
 

Я взглянул на код SDK, и там есть цитата:

StateContextFunc — это функция, вызываемая для импорта ресурса в состояние Terraform. Ему присваивается ResourceData с установленным только идентификатором. Этот идентификатор будет произвольным значением, заданным пользователем, и может не соответствовать прямому формату идентификатора, который ожидает ресурс, поэтому его следует проверить.

поэтому я не могу рассчитывать на работу со следующей конфигурацией:

 provider {...}
resource "my_provider" "my_example_resource" {
   local_username = "foo"
   local_password = "bar"
}
 

поскольку при запуске terraform import my_provider.my_example_resource я не смогу получить доступ к его local_username / local_password свойствам.

Комментарии:

1. Вероятно, это будет невозможно. Вероятно, для этого потребуется либо исправление API, либо обходной путь для привязок.