## Системные требования Для запуска провайдера вам потребуется машина, на которой установлен Terraform. Кроме того, в связи с тем, что начиная с версии 0.12 Terraform изменил алгоритм поиска и инициализации локальных провайдеров, настройка данного провайдера для работы с Terraform 0.12 или более новыми версиями потребует выполнения ряда дополнительных действий. Подробнее см. [8.3 Настройка локального провайдера для работы с новыми версиями Terraform](https://repository.basistech.ru/BASIS/terraform-provider-dynamix/src/branch/main/wiki/1.0.0/08.-Полезные-советы#user-content-8-3-настройка-локального-провайдера-для-работы-с-новыми-версиями-terraform.md). ## Установка В релизном архиве находятся скрипты-инсталляторы. Чтобы выполнить установку, необходимо: 1. Перейти по адресу: https://repository.basistech.ru/BASIS/terraform-provider-dynamix/releases 2. Выбрать необходимую версию провайдера подходящую под операционную систему. 3. Скачать архив. 4. Распаковать архив. 5. Выполнить скрипт установщика, `install.sh` или `install.bat` для Windows.
*Для запуска `install.sh` не забудьте изменить права доступа к файлу* ```bash chmod u+x install.sh ``` 6. Дождаться сообщения об успешной установке. Установщик выведет актуальный блок конфигурации провайдера, скопируйте его ```bash terraform { required_providers { basis = { version = "1.0.0" source = "basistech.ru/tf/dynamix" } } } ``` 7. После этого, создайте файл `main.tf` в рабочей директории, которая может находится в любом удобном для пользователя месте. В данном примере, рабочая директория с файлом main.tf находится по пути: ```bash ~/work/tfdir/main.tf ``` 8. Вставьте в `main.tf` блок конфигурации провайдера, который был выведен на экран установщиком: ```terraform terraform { required_providers { basis = { version = "1.0.0" source = "basistech.ru/tf/dynamix" } } } ``` 9. Добавьте в файл блок с инициализацией провайдера. ```terraform provider "basis" { authenticator = "decs3o" controller_url = "https://mr4.digitalenergy.online" oauth2_url = "https://sso.digitalenergy.online" allow_unverified_ssl = true } ``` 10. В консоли выполните команду ```bash terraform init ``` 11. В случае успешной установки, Terraform инициализирует провайдер и будет готов к дальнейшей работе. ## Установка из релизов Terraform провайдер DYNAMIX имеет скомпилированные релизные версии, которые расположены по адресу: [Релизы](https://repository.basistech.ru/BASIS/terraform-provider-dynamix/releases). Чтобы выполнить установку из релиза, необходимо: 1. Перейти по адресу: https://repository.basistech.ru/BASIS/terraform-provider-dynamix/releases 2. Выбрать необходимую версию провайдера подходящую под операционную систему. 3. Скачать архив. 4. Распаковать архив. 5. Полученный файл (в директории `bin/`) необходимо поместить: Linux: ```bash ~/.terraform.d/plugins/${host_name}/${namespace}/${type}/${version}/${target} ``` Windows: ```powershell %APPDATA%\terraform.d\plugins\${host_name}\${namespace}\${type}\${version}\${target} ``` Где: - host_name - имя хоста, держателя провайдера, например, basis - namespace - пространство имен хоста, например decort - type - тип провайдера, может совпадать с пространством имен, например, decort - version - версия провайдера, например 4.3.0 - target - архитектура операционной системы, например windows_amd64 В примере ниже используется путь до провайдера на машине с ОС Linux: ```bash ~/.terraform.d/plugins/basis/basistech.ru/tf/dynamix/1.0.0/linux_amd64/tf-provider ^ ^ ^ ^ ^ ^ host_name | | | | | | | | | | | namespace | | | | | | | | | type | | | | | | | version | | | | | target | | | исполняемый файл | ``` 6. После этого, создайте файл `main.tf` в рабочей директории, которая может находится в любом удобном для пользователя месте. В данном примере, рабочая директория с файлом main.tf находится по пути: ```bash ~/work/tfdir/main.tf ``` 7. Добавьте в `main.tf` следующий блок ```terraform terraform { required_providers { basis = { source = "basistech.ru/tf/dynamix" version = "1.0.0" } } } ``` В поле `version` указывается версия провайдера.
**ВНИМАНИЕ: Версии в блоке и в пути к исполняемому файлу провайдера должны совпадать!** В поле `source` помещается путь до репозитория с версией вида: ```bash ${host_name}/${namespace}/${type} ``` **ВНИМАНИЕ: Версии в блоке и в пути к исполняемому файлу провайдера должны совпадать!** 8. Добавьте в файл блок с инициализацией провайдера. ```terraform provider "basis" { authenticator = "decs3o" controller_url = "https://mr4.digitalenergy.online" oauth2_url = "https://sso.digitalenergy.online" allow_unverified_ssl = true } ``` 9. В консоли выполните команду ```bash terraform init ``` 10. В случае успешной установки, Terraform инициализирует провайдер и будет готов к дальнейшей работе.