Skip to content

Latest commit

 

History

History

07-terraform-06-providers

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 

Домашнее задание к занятию 6. «Написание собственных провайдеров для Terraform»

Бывает, что:

  • общедоступная документация по Terraform-ресурсам не всегда достоверна,
  • в документации не хватает каких-нибудь правил валидации или неточно описаны параметры,
  • нужно использовать провайдер без официальной документации,
  • возникает необходимость написать свой провайдер для системы, используемой в ваших проектах.

Задача 1

Давайте потренируемся читать исходный код AWS-провайдера, который можно склонировать отсюда: https://github.com/hashicorp/terraform-provider-aws.git. Просто найдите нужные ресурсы в исходном коде, и ответы на вопросы станут понятны.

  1. Найдите, где перечислены все доступные resource и data_source, приложите ссылку на эти строки в коде на GitHub.
  2. Для создания очереди сообщений SQS используется ресурс aws_sqs_queue, у которого есть параметр name.
    • С каким другим параметром конфликтует name? Приложите строчку кода, в которой это указано.
    • Какая максимальная длина имени?
    • Какому регулярному выражению должно подчиняться имя?

Задача 2 (не обязательно)

На вебинаре и в презентации мы разобрали, как создать свой собственный провайдер на примере кофемашины. Также вот официальная документация о создании провайдера: https://learn.hashicorp.com/collections/terraform/providers.

  1. Проделайте все шаги создания провайдера.
  2. В виде результата приложите ссылку на исходный код.
  3. Попробуйте скомпилировать провайдер. Если получится, приложите снимок экрана с командой и с результатом компиляции.

Как cдавать задание

Выполненное домашнее задание пришлите ссылкой на .md-файл в вашем репозитории.