Terraform provider для платформы Digital Energy Cloud Orchestration Technology (DECORT)
Версия DECORT API | Версия провайдера Terraform |
---|---|
3.8.5 | 3.4.x |
3.8.0 - 3.8.4 | 3.3.1 |
3.7.x | rc-1.25 |
3.6.x | rc-1.10 |
до 3.6.0 | terraform-provider-decs |
Провайдер позволяет работать в двух режимах:
- Режим пользователя,
- Режим администратора. Для переключения между режимами используйте флаг DECORT_ADMIN_MODE. Вики проекта: https://github.com/rudecs/terraform-provider-decort/wiki
- Работа с Compute instances,
- Работа с disks,
- Работа с k8s,
- Работа с image,
- Работа с reource groups,
- Работа с VINS,
- Работа с pfw,
- Работа с accounts,
- Работа с snapshots,
- Работа с pcidevice,
- Работа с sep,
- Работа с vgpu,
- Работа с bservice,
- Работа с extnets,
- Работа с locations,
- Работа с load balancer.
Вики проекта: https://github.com/rudecs/terraform-provider-decort/wiki
Старт возможен по двум путям:
- Установка через собранные пакеты.
- Ручная установка.
- Скачайте и установите terraform по ссылке: https://learn.hashicorp.com/tutorials/terraform/install-cli?in=terraform/aws-get-started
- Создайте файл
main.tf
и добавьте в него следующий блок.
provider "decort" {
authenticator = "oauth2"
#controller_url = <DECORT_CONTROLLER_URL>
controller_url = "https://ds1.digitalenergy.online"
#oauth2_url = <DECORT_SSO_URL>
oauth2_url = "https://sso.digitalenergy.online"
allow_unverified_ssl = true
}
- Выполните команду
terraform init
Провайдер автоматически будет установлен на ваш компьютер из terraform registry.
- Скачайте и установите Go по ссылке: https://go.dev/dl/
- Скачайте и установите terraform по ссылке: https://learn.hashicorp.com/tutorials/terraform/install-cli?in=terraform/aws-get-started
- Склонируйте репозиторий с провайдером, выполнив команду:
git clone https://github.com/rudecs/terraform-provider-decort.git
- Перейдите в скачанную папку с провайдером и выполните команду
go build -o terraform-provider-decort
Если вы знаете как устроен makefile, то можно изменить в файле Makefile
параметры под вашу ОС и выполнить команду
make build
- Полученный файл необходимо поместить:
Linux:
~/.terraform.d/plugins/${host_name}/${namespace}/${type}/${version}/${target}
Windows:
%APPDATA%\terraform.d\plugins\${host_name}\${namespace}\${type}\${version}\${target}
ВНИМАНИЕ: для ОС Windows %APP_DATA%
является каталогом, в котором будут помещены будущие файлы terraform.
Где:
- host_name - имя хоста, держателя провайдера, например, digitalenergy.online
- namespace - пространство имен хоста, например decort
- type - тип провайдера, может совпадать с пространством имен, например, decort
- version - версия провайдера, например 1.2
- target - версия ОС, например windows_amd64
- После этого, создайте файл
main.tf
. - Добавьте в него следующий блок
terraform {
required_providers {
decort = {
version = "1.2"
source = "digitalenergy.online/decort/decort"
}
}
}
В поле version
указывается версия провайдера.
Обязательный параметр
Тип поля - строка
ВНИМАНИЕ: Версии в блоке и в репозитории, в который был помещен провайдер должны совпадать!
В поле source
помещается путь до репозитория с версией вида:
${host_name}/${namespace}/${type}
ВНИМАНИЕ: все параметры должны совпадать с путем репозитория, в котором помещен провайдер.
- В консоле выполнить команду
terraform init
- Если все прошло хорошо - ошибок не будет.
Более подробно о сборке провайдера можно найти по ссылке: https://learn.hashicorp.com/tutorials/terraform/provider-use?in=terraform/providers
Примеры работы можно найти:
- На вики проекта: https://github.com/rudecs/terraform-provider-decort/wiki
- В папке
samples
Схемы к terraform'у доступны:
- В папке
docs
Хорошей работы!