Spec-Zone.ru › Ansible

cloudscale_ch.cloud.custom_image модуль – Управление пользовательскими образами в службе IaaS cloudscale.ch

Примечание

Этот модуль является частью коллекции cloudscale_ch.cloud collection (версия 2.4.0).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install cloudscale_ch.cloud.

Для использования в playbook, укажите: cloudscale_ch.cloud.custom_image.

Новое в cloudscale_ch.cloud 2.2.0

  • Краткое описание
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Краткое описание

  • Импорт, изменение и удаление пользовательских образов.

Параметры

Параметр

Комментарии

api_timeout

integer

Таймаут в секундах для вызовов API cloudscale.ch.

Это также может быть передано в переменной среды CLOUDSCALE_API_TIMEOUT.

По умолчанию: 45

api_token

string / required

Токен API cloudscale.ch.

Это также может быть передано в переменной среды CLOUDSCALE_API_TOKEN.

api_url

string

добавлено в cloudscale_ch.cloud 1.3.0

URL API cloudscale.ch.

Это также может быть передано в переменной среды CLOUDSCALE_API_URL.

По умолчанию: "https://api.cloudscale.ch/v1"

firmware_type

string

Тип прошивки, который будет использоваться для серверов, созданных с помощью этого образа.

Варианты:

  • "bios" ← (по умолчанию)
  • "uefi"

force_retry

boolean

Повторить импорт образа, даже если уже существует неудачный импорт с тем же именем и URL. Это необходимо для восстановления после ошибок загрузки.

Варианты:

  • false ← (по умолчанию)
  • true

name

string

Читaемое имя пользовательского образа. Для изменения существующего образа необходимо указать либо name, либо UUID.

slug

string

Строка, идентифицирующая пользовательский образ для использования в API.

source_format

string

Формат файла образа, указанный в url.

Варианты:

  • "raw" ← (по умолчанию)
  • "qcow2"

state

string

Состояние пользовательского образа.

Варианты:

  • "present" ← (по умолчанию)
  • "absent"

tags

dictionary

Теги, назначенные пользовательскому образу.

url

string

URL, используемый для загрузки образа.

user_data_handling

string

Как будут обрабатываться user_data при создании сервера. В настоящее время есть два варианта: «pass-through» и «extend-cloud-config».

Варианты:

  • "pass-through"
  • "extend-cloud-config"

uuid

string

Уникальный идентификатор импорта пользовательского образа. Для изменения существующего образа необходимо указать либо name, либо UUID.

zones

list / elements=string

Укажите зоны, в которых пользовательский образ будет доступен (например, lpg1 или rma1).

Примечания

Примечание

  • Для импорта нового пользовательского образа необходимы параметры url и name.
  • Все операции выполняются с использованием публичного API cloudscale.ch v1.
  • Для получения подробной информации ознакомьтесь с полной документацией по API: https://www.cloudscale.ch/en/api/v1.
  • Для всех операций требуется действительный токен API. Вы можете создать столько токенов, сколько вам нужно, используя панель управления cloudscale.ch по адресу https://control.cloudscale.ch.

Примеры

- name: Import custom image
  cloudscale_ch.cloud.custom_image:
    name: "My Custom Image"
    url: https://ubuntu.com/downloads/hirsute.img
    slug: my-custom-image
    user_data_handling: extend-cloud-config
    zones: lpg1
    tags:
      project: luna
    state: present
  register: my_custom_image

- name: Wait until import succeeded
  cloudscale_ch.cloud.custom_image:
    uuid: "{{ my_custom_image.uuid }}"
  retries: 15
  delay: 5
  register: image
  until: image.import_status == 'success'
  failed_when: image.import_status == 'failed'

- name: Import custom image and wait until import succeeded
  cloudscale_ch.cloud.custom_image:
    name: "My Custom Image"
    url: https://ubuntu.com/downloads/hirsute.img
    slug: my-custom-image
    user_data_handling: extend-cloud-config
    zones: lpg1
    tags:
      project: luna
    state: present
  retries: 15
  delay: 5
  register: image
  until: image.import_status == 'success'
  failed_when: image.import_status == 'failed'

- name: Import custom image with UEFI firmware type
  cloudscale_ch.cloud.custom_image:
    name: "My Custom UEFI Image"
    url: https://ubuntu.com/downloads/hirsute.img
    slug: my-custom-uefi-image
    user_data_handling: extend-cloud-config
    zones: lpg1
    firmware_type: uefi
    tags:
      project: luna
    state: present
  register: my_custom_image

- name: Update custom image
  cloudscale_ch.cloud.custom_image:
    name: "My Custom Image"
    slug: my-custom-image
    user_data_handling: extend-cloud-config
    tags:
      project: luna
    state: present

- name: Delete custom image
  cloudscale_ch.cloud.custom_image:
    uuid: '{{ my_custom_image.uuid }}'
    state: absent

- name: List all custom images
  uri:
    url: 'https://api.cloudscale.ch/v1/custom-images'
    headers:
      Authorization: 'Bearer {{ query("env", "CLOUDSCALE_API_TOKEN") }}'
    status_code: 200
  register: image_list
- name: Search the image list for all images with name 'My Custom Image'
  set_fact:
    my_custom_images: '{{ image_list.json | selectattr("name","search", "My Custom Image" ) }}'

Значения возврата

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

Ключ

Описание

checksums

словарь

Хеш-суммы пользовательского образа в виде пар ключ-значение. Имя алгоритма (например, sha256) указано в ключе, а хеш-сумма — в значении. Набор используемых алгоритмов может измениться в будущем.

Возвращается: успех

Пример: {"md5": "5b3a1f21cde154cfb522b582f44f1a87", "sha256": "5b03bcbd00b687e08791694e47d235a487c294e58ca3b1af704120123aa3f4e6"}

created_at

строка

Дата и время создания ресурса.

Возвращается: успех

Пример: "2020-05-29T13:18:42.511407Z"

error_message

строка

Сообщение об ошибке в случае неудачного импорта.

Возвращается: успех

Пример: "Expected HTTP 200, got HTTP 403"

href

строка

API-адрес для получения подробной информации о данном ресурсе.

Возвращается: успех, когда state == present

Пример: "https://api.cloudscale.ch/v1/custom-imges/11111111-1864-4608-853a-0771b6885a3a"

import_status

строка

Показывает ход импорта. Значения: «started», «in_progress», «success» или «failed».

Возвращается: успех

Пример: "in_progress"

name

строка

Наименование пользовательского образа, понятное человеку.

Возвращается: успех

Пример: "alan"

slug

строка

Строка, идентифицирующая пользовательский образ для использования в API.

Возвращается: успех

Пример: "foo"

state

строка

Текущий статус пользовательского образа.

Возвращается: успех

Пример: "present"

tags

словарь

Теги, связанные с пользовательским образом.

Возвращается: успех

Пример: {"project": "my project"}

user_data_handling

строка

Обработка пользовательских данных при создании сервера. На данный момент доступны два варианта: «pass-through» и «extend-cloud-config».

Возвращается: успех

Пример: "pass-through"

uuid

строка

Уникальный идентификатор пользовательского образа.

Возвращается: успех

Пример: "11111111-1864-4608-853a-0771b6885a3a"

Авторы

  • Ciril Troxler (@ctx)
  • Gaudenz Steinlin (@gaudenz)

Ссылки на сборку

  • Отслеживание проблем
  • Репозиторий (источники)

© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/cloudscale_ch/cloud/custom_image_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API