Spec-Zone.ru › Ansible

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

Примечание

Этот модуль входит в коллекцию cloudscale_ch.cloud (версия 2.5.3).

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

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

Чтобы использовать коллекцию в плейбуке, укажите: cloudscale_ch.cloud.custom_image.

Добавлено в cloudscale_ch.cloud 2.2.0

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

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

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

Параметры

Параметр

Комментарии

api_timeout

integer

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

Также можно задать с помощью переменной окружения CLOUDSCALE_API_TIMEOUT.

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

api_token

string / обязательный

Токен 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

Понятное пользователю имя пользовательского образа. Для изменения существующего образа необходимо указать либо имя, либо 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

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

zones

list / элементы=string

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

Примечания

Примечание

  • Для импорта нового пользовательского образа необходимо указать параметры url и name.
  • Все операции выполняются с использованием общедоступного API cloudscale.ch версии 1.
  • Подробную информацию см. в полной документации 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

dictionary

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

Возвращается: при успешном выполнении

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

created_at

string

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

Возвращается: при успешном выполнении

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

error_message

string

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

Возвращается: при успешном выполнении

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

href

string

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

Возвращается: при успешном выполнении, если state == present

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

import_status

string

Отображает ход импорта. Возможные значения: «started», «in_progress», «success» или «failed».

Возвращается: при успешном выполнении

Пример: "in_progress"

name

string

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

Возвращается: при успешном выполнении

Пример: "alan"

slug

string

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

Возвращается: при успешном выполнении

Пример: "foo"

state

string

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

Возвращается: при успешном выполнении

Пример: "present"

tags

dictionary

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

Возвращается: при успешном выполнении

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

user_data_handling

string

Способ обработки user_data при создании сервера. Сейчас доступны два варианта: «pass-through» и «extend-cloud-config».

Возвращается: при успешном выполнении

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

uuid

string

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

Возвращается: при успешном выполнении

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

Авторы

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

Ссылки на коллекцию

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

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

Spec-Zone.ru

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