Project

Объект проекта. Проекты представляют из себя логические сущности, в которые объединены те или иные облачные услуги. Проекты могут создаваться клиентами, а после регистрации всегда существует проект по умолчанию.

Объект «проект»

class esu.Project(*args, token: Optional[str] = None, **kwargs)[исходный код]
Параметры:
  • id (str) – Идентификатор

  • name (str) – Имя

  • client (object) – Объект класса esu.Client. Клиент, к которому относится проект

  • token (str) – Токен для доступа к API. Если не передан, будет использована переменная окружения ESU_API_TOKEN

Примечание

Поля name и client необходимы для создания.

Поле name может быть изменено для существующего объекта.

classmethod get_object(id, token=None)[исходный код]

Получить объект проекта по его ID

Параметры:
  • id (str) – Идентификатор проекта

  • token (str) – Токен для доступа к API. Если не передан, будет использована переменная окружения ESU_API_TOKEN

Результат:

Возвращает объект проекта esu.Project

Тип результата:

object

create()[исходный код]

Создать объект

Исключение:

ObjectAlreadyHasId – Если производится попытка создать объект, который уже существует

save()[исходный код]

Сохранить изменения

Исключение:

ObjectHasNoId – Если производится попытка сохранить несуществующий объект

destroy()[исходный код]

Удалить объект

Исключение:

ObjectHasNoId – Когда производится попытка удалить несуществующий объект

get_vdcs()[исходный код]

Получить ВЦОДы в данном проекте. Вернет список объектов esu.Vdc.

Результат:

Список объектов esu.Vdc

Тип результата:

list

get_available_hypervisors()[исходный код]

Получить список доступных гипервизоров в этом проекте. Вернет список объектов esu.Hypervisor.

Результат:

Список объектов esu.Hypervisor

Тип результата:

list

get_dns_zones()[исходный код]

Получить список доступных доменных зон в этом проекте. Вернет список объектов esu.Dns.

Результат:

Список объектов esu.Dns

Тип результата:

list

get_k8s_clusters()[исходный код]

Получить список доступных кластеров Kubernetes в этом проекте. Вернет список объектов esu.Kubernetes.

Результат:

Список объектов esu.Kubernetes

Тип результата:

list

get_s3_storages()[исходный код]

Получить список доступных s3 хранилищ в этом проекте. Вернет список объектов esu.S3.

Результат:

Список объектов esu.S3

Тип результата:

list

Примеры использования

Создать проект на определенном клиенте:

from esu import Client, Project

client = Client.get_object('d5cd2cdc-b5b0-4d2e-8bc6-ea3f019745f9')
project = Project(client=client, name='Новый проект')
project.create()

Переименовать первый проект на клиенте:

from esu import Client, Project

client = Client.get_object('d5cd2cdc-b5b0-4d2e-8bc6-ea3f019745f9')
project = client.get_projects()[0]
project.name = 'Новое имя проекта'
project.save()