You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
terraform-provider-decort/README.md

9.3 KiB

terraform-provider-decort

Terraform provider для платформы Digital Energy Cloud Orchestration Technology (DECORT)

Соответсвие версий платформы версиям провайдера

Версия DECORT API Версия провайдера Terraform
4.2.0 4.8.x
4.1.0 4.7.x
4.0.0 4.6.x
3.8.9 4.5.x
3.8.8 4.4.x
3.8.7 4.3.x
3.8.6 4.0.x, 4.1.x, 4.2.x
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

Режимы работы

Провайдер позволяет работать в двух режимах:

Возможности провайдера

  • Режим пользователя:

    • Работа с accounts,
    • Работа с audit,
    • Работа с bservice,
    • Работа с disks,
    • Работа с dpdk,
    • Работа с extnets,
    • Работа с flipgroups,
    • Работа с image,
    • Работа с k8s,
    • Работа с Compute instances,
    • Работа с load balancer,
    • Работа с locations,
    • Работа с pfw,
    • Работа с resource groups,
    • Работа с snapshots,
    • Работа с stacks,
    • Работа с VINS.
  • Режим администратора:

    • Работа с accounts,
    • Работа с audit,
    • Работа с disks,
    • Работа с dpdk,
    • Работа с extnets,
    • Работа с flipgroups,
    • Работа с grids,
    • Работа с images,
    • Работа с k8ci,
    • Работа с k8s,
    • Работа с Compute instances,
    • Работа с load balancer,
    • Работа с pci device,
    • Работа с resource groups,
    • Работа с seps,
    • Работа с user,
    • Работа с stacks,
    • Работа с VINS.

Со списком и описанием функционала всех групп можно ознамоиться на Вики проекта: https://repository.basistech.ru/BASIS/terraform-provider-decort/wiki

Установка

Начиная с версии провайдера 4.3.0 в релизном архиве находятся скрипты-инсталляторы. Чтобы выполнить установку, необходимо:

  1. Перейти по адресу: https://repository.basistech.ru/BASIS/terraform-provider-decort/releases
  2. Выбрать необходимую версию провайдера подходящую под операционную систему.
  3. Скачать архив.
  4. Распаковать архив.
  5. Выполнить скрипт установщика, install.sh или install.bat для Windows.
    Для запуска install.sh не забудьте изменить права доступа к файлу
chmod u+x install.sh
  1. Дождаться сообщения об успешной установке. Установщик выведет актуальный блок конфигурации провайдера, скопируйте его
DECORT provider version 4.3.0 has been successfully installed

Copy this provider configuration to main.tf file:
terraform {
  required_providers {
    decort = {
      version = "4.3.0"
      source  = "basis/decort/decort"
    }
  }
}
  1. После этого, создайте файл main.tf в рабочей директории, которая может находится в любом удобном для пользователя месте. В данном примере, рабочая директория с файлом main.tf находится по пути:
~/work/tfdir/main.tf
  1. Вставьте в main.tf блок конфигурации провайдера, который был выведен на экран установщиком:
terraform {
  required_providers {
    decort = {
      version = "4.3.0"
      source  = "basis/decort/decort"
    }
  }
}
  1. Добавьте в файл блок с инициализацией провайдера.
provider "decort" {
  authenticator        = "decs3o"
  controller_url       = "https://mr4.digitalenergy.online"
  oauth2_url           = "https://sso.digitalenergy.online"
  allow_unverified_ssl = true
}
  1. В консоли выполните команду
terraform init
  1. В случае успешной установки, Terraform инициализирует провайдер и будет готов к дальнейшей работе.

Установка из релизов

Terraform провайдер DECORT имеет скомпилированные релизные версии, которые расположены по адресу: Релизы.
Чтобы выполнить установку из релиза, необходимо:

  1. Перейти по адресу: https://repository.basistech.ru/BASIS/terraform-provider-decort/releases
  2. Выбрать необходимую версию провайдера подходящую под операционную систему.
  3. Скачать архив.
  4. Распаковать архив.
  5. Полученный файл (в директории bin/) необходимо поместить:
    Linux:
~/.terraform.d/plugins/${host_name}/${namespace}/${type}/${version}/${target}

Windows:

%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:

~/.terraform.d/plugins/basis/decort/decort/4.3.0/linux_amd64/tf-provider
                        ^     ^      ^     ^       ^          ^
              host_name |     |      |     |       |          |
                              |      |     |       |          |
                    namespace |      |     |       |          |
                                     |     |       |          |
                               type  |     |       |          |
                                           |       |          |
                                   version |       |          | 
                                                   |          |
                                            target |          |
                                                              |
                                             исполняемый файл |
  1. После этого, создайте файл main.tf в рабочей директории, которая может находится в любом удобном для пользователя месте. В данном примере, рабочая директория с файлом main.tf находится по пути:
~/work/tfdir/main.tf
  1. Добавьте в main.tf следующий блок
terraform {
  required_providers {
    decort = {
      version = "4.3.0"
      source  = "basis/decort/decort"
    }
  }
}

В поле version указывается версия провайдера.
ВНИМАНИЕ: Версии в блоке и в пути к исполняемому файлу провайдера должны совпадать!

В поле source помещается путь до репозитория с версией вида:

${host_name}/${namespace}/${type}

ВНИМАНИЕ: Версии в блоке и в пути к исполняемому файлу провайдера должны совпадать!

  1. Добавьте в файл блок с инициализацией провайдера.
provider "decort" {
  authenticator        = "decs3o"
  controller_url       = "https://mr4.digitalenergy.online"
  oauth2_url           = "https://sso.digitalenergy.online"
  allow_unverified_ssl = true
}
  1. В консоли выполните команду
terraform init
  1. В случае успешной установки, Terraform инициализирует провайдер и будет готов к дальнейшей работе.

Примеры работы

Примеры работы можно найти:

Хорошей работы!