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.
decort-ansible/wiki/7.0.0/модуль-decort_account.md

22 KiB

Модуль decort_account

Обзор модуля

Модуль decort_account предназначен для выполнения следующих действий над аккаунтом:

Параметры модуля

Ниже приведен список параметров для модуля decort_account (за исключением общих параметров авторизации):

Параметр Тип Описание
access_emails (bool) Выключение/включение отправки пользователям на эл. почту уведомлений о предоставлении доступа к ресурсам.
acl (dict) Целевые права доступа.
mode (str)
Значения:
match
revoke
update
Default: update
Режим изменения прав доступа для указанных пользователей.
match - привести в соответствие для указанных пользователей, удалить предоставленные для других.
revoke - отозвать для указанных пользователей, если предоставлены.
update - привести в соответствие для указанных пользователей, оставить без изменения предоставленные для других.
users (list) Список словарей, описывающих права доступа пользователей.
Обязательный параметр.
rights (str)
Значения:
R
RCX
ARCXDU
Default: R
Права доступа.
При mode: revoke не используется.
При mode: match и mode: update права ARCXDU считаются соответствующими правам CXDRAU.
id (str) Идентификатор пользователя.
Обязательный параметр.
id (int) Идентификатор целевого аккаунта.
Обязательный параметр, если не задан параметр name.
name (str) Имя целевого аккаунта.
Может быть альтернативой параметру id, за исключением случая, когда необходимо получить информацию о безвозвратно удалённом объекте.
Если задан совместно с параметром id, то используется для переименования (целевое имя).
quotas (dict) Целевые квоты.
cpu (int) Количество виртуальных процессоров.
-1 - удалить квоту.
disks_size (int) Объём дисков в ГБ.
-1 - удалить квоту.
ext_traffic (int) Объём трафика внешних сетей.
-1 - удалить квоту.
gpu (int) Количество графических процессоров.
-1 - удалить квоту.
public_ip (int) Количество внешних IP-адресов.
-1 - удалить квоту.
ram (int) Объём оперативной памяти в МБ.
-1 - удалить квоту.
sep_pools (list) Список словарей, описывающих доступные пулы СХД.
sep_id (int) Идентификатор системы хранения данных.
pool_names (list) Список названий пулов системы хранения данных.
state (str)
Значения:
absent
absent_permanently
confirmed
disabled
present
Default: present
Целевое состояние.
absent - удалён в корзину, безвозвратно удалён или не существует. Если существует и не удалён, то будет удалён в корзину.
absent_permanently - безвозвратно удалён или не существует. Если существует и не удалён или удалён в корзину, то будет безвозвратно удалён.
При значениях absent и absent_permanently использование других параметров модуля, вызывающих изменение объекта, не допускается.
confirmed - включён. Если выключен, то будет включён. Если удалён в корзину, то будет восстановлен из корзины.
disabled - выключен. Если включён, то будет выключен. Если удалён в корзину, то будет восстановлен из корзины и выключен.
present - существует и не удалён. Если удалён в корзину, то будет восстановлен из корзины.

Возвращаемые значения

Модуль decort_account возвращает информацию об аккаунте в виде словаря facts со следующими ключами:

Ключ Тип
данных
Описание
acl list Список словарей, описывающих доступы пользователей.
canBeDeleted bool Может ли быть удалён.
right str Права.
status str Статус.
type str Тип.
userGroupId str Идентификатор пользователя или группы пользователей.
company str Название компании.
companyurl str URL компании.
computeFeatures list Список дополнительных возможностей гипервизора, доступных ВМ.
computes_amount dict Количество ВМ по состоянию.
started int Количество запущенных ВМ.
stopped int Количество остановленных ВМ.
cpu_allocation_parameter str Режим выделения ЦП.
cpu_allocation_ratio str Коэффициент для режима выделения ЦП.
createdBy str Идентификатор пользователя, который создал.
createdTime int Unix-время создания.
createdTime_readable str Дата и время создания.
deactivationTime int Unix-время выключения.
deactivationTime_readable str Дата и время выключения.
deletedBy str Идентификатор пользователя, который удалил.
deletedTime int Unix-время удаления.
deletedTime_readable str Дата и время удаления.
displayname str Отображаемое имя.
id int Идентификатор.
name str Имя.
resourceLimits dict Квоты на ресурсы.
CU_C int Количество виртуальных процессоров.
CU_D int Объём диска в ГБ.
CU_DM int Объём дисков в ГБ.
CU_I int Количество внешних IP-адресов.
CU_M float Объём оперативной памяти в МБ.
CU_NP int Объём трафика внешних сетей.
gpu_units int Количество графических процессоров.
sendAccessEmails bool Отправка пользователям на эл. почту уведомлений о предоставлении доступа.
status str Статус.
uniqPools list Список доступных пулов СХД.
updatedTime int Unix-время обновления.
updatedTime_readable str Дата и время обновления.
vins list Список идентификаторов внутренних сетей на уровне аккаунта.
vinses_amount int Количество внутренних сетей.

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

Удалить

В корзину

- name: Example
  hosts: localhost
  tasks:
    - name: Delete account
      decort_account:
        # Параметры для авторизации упущены
        id: "{{ account_id }}"
        state: absent

Безвозвратно

- name: Example
  hosts: localhost
  tasks:
    - name: Delete account
      decort_account:
        # Параметры для авторизации упущены
        id: "{{ account_id }}"
        state: absent_permanently

Восстановить из корзины

- name: Example
  hosts: localhost
  tasks:
    - name: Restore account from recycle bin
      decort_account:
        # Параметры для авторизации упущены
        id: "{{ account_id }}"
        state: present

Выключить/включить

Выключить

- name: Example
  hosts: localhost
  tasks:
    - name: Disable account
      decort_account:
        # Параметры для авторизации упущены
        id: "{{ account_id }}"
        state: disabled

Включить

- name: Example
  hosts: localhost
  tasks:
    - name: Enable account
      decort_account:
        # Параметры для авторизации упущены
        id: "{{ account_id }}"
        state: confirmed

Изменить права доступа

Отозвать

- name: Example
  hosts: localhost
  tasks:
    - name: Revoke user access rights
      decort_account:
        # Параметры для авторизации упущены
        id: "{{ account_id }}"
        acl:
          mode: revoke
          users:
            - id: "{{ user1_id }}"
            - id: "{{ user2_id }}"

Обновить

- name: Example
  hosts: localhost
  tasks:
    - name: Update user access rights
      decort_account:
        # Параметры для авторизации упущены
        id: "{{ account_id }}"
        acl:
          mode: update
          users:
            - id: "{{ user1_id }}"
              rights: R
            - id: "{{ user2_id }}"
              rights: RCX

Привести в соответствие

- name: Example
  hosts: localhost
  tasks:
    - name: Match user access rights
      decort_account:
        # Параметры для авторизации упущены
        id: "{{ account_id }}"
        acl:
          mode: match
          users:
            - id: "{{ user1_id }}"
              rights: ARCXDU
            - id: "{{ user2_id }}"
              rights: RCX

Переименовать

- name: Example
  hosts: localhost
  tasks:
    - name: Rename account
      decort_account:
        # Параметры для авторизации упущены
        id: "{{ account_id }}"
        name: "{{ account_new_name }}"

Изменить квоты

На объём дисков

- name: Example
  hosts: localhost
  tasks:
    - name: Update account quota of disks size
      decort_account:
        # Параметры для авторизации упущены
        id: "{{ account_id }}"
        quotas:
          disks_size: 500

На количество внешних IP-адресов

- name: Example
  hosts: localhost
  tasks:
    - name: Update account quota of public IP amount
      decort_account:
        # Параметры для авторизации упущены
        id: "{{ account_id }}"
        quotas:
          public_ip: 10

Выключить/включить отправку уведомлений о предоставлении доступа к ресурсам

Выключить

- name: Example
  hosts: localhost
  tasks:
    - name: Disable sending access emails
      decort_account:
        # Параметры для авторизации упущены
        id: "{{ account_id }}"
        access_emails: false

Включить

- name: Example
  hosts: localhost
  tasks:
    - name: Enable sending access emails
      decort_account:
        # Параметры для авторизации упущены
        id: "{{ account_id }}"
        access_emails: true

Изменить доступные пулы СХД

- name: Example
  hosts: localhost
  tasks:
    - name: Change available sep pools
      decort_account:
        # Параметры для авторизации упущены
        id: "{{ account_id }}"
        sep_pools:
          - sep_id: 1
            pool_names: 
              - pool1