Spec-Zone.ru › Ansible 2.8

rax_files_objects – Загрузка, скачивание и удаление объектов в Rackspace Cloud Files

  • Обзор
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Статус

Обзор

  • Загрузка, скачивание и удаление объектов в Rackspace Cloud Files

Требования

Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.

  • pyrax
  • python >= 2.6

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
api_key
строка
Ключ API Rackspace, переопределяет credentials.

алиасы: пароль
auth_endpoint
-
Значение по умолчанию:
"https://identity.api.rackspacecloud.com/v2.0/"
URI службы аутентификации.
clear_meta
логический
    Варианты:
  • нет ←
  • да
Необязательно очистить существующие метаданные при применении метаданных к существующим объектам. Выбор этого варианта уместен только при установке type=meta
container
- / обязательно
Контейнер для операций с файловыми объектами.
credentials
путь
Файл с учетными данными Rackspace. Игнорируется, если указаны api_key и username.

алиасы: creds_file
dest
-
Место назначения операции "get"; например, локальная директория, "/home/user/myfolder". Используется для указания места назначения операции над удалённым объектом; например, имя файла, "file1", или список удалённых объектов через запятую, "file1,file2,file17".
env
строка
Настройка среды в ~/.pyrax.cfg, см. https://github.com/rackspace/pyrax/blob/master/docs/getting_started.md#pyrax-configuration.
expires
-
Используется для установки срока действия файла или папки, загруженных в Cloud Files. Требуется целое число, определяющее срок действия в секундах
identity_type
-
Значение по умолчанию:
"rackspace"
Механизм аутентификации, например, rackspace или keystone.
meta
-
Словарь для задания значений метаданных загруженному файлу или папке
method
-
    Варианты:
  • получить ←
  • отправить
  • удалить
Метод операции. Например, отправить для загрузки файлов в Cloud Files, получить для скачивания файлов из Cloud Files или удалить для удаления удаленных объектов в Cloud Files
region
строка
Значение по умолчанию:
"DFW"
Регион для создания экземпляра.
src
-
Источник для загрузки файлов. Используется для указания удалённого объекта как источника для операции, например, имя файла, "file1", или список удалённых объектов через запятую, "file1,file2,file17". src и dest взаимоисключающие при операциях только с удаленными объектами.
state
-
    Варианты:
  • наличие ←
  • отсутствие
Указывает желаемое состояние ресурса
structure
логический
    Варианты:
  • нет
  • да ←
Указывает, сохранять ли вложенную структуру каталогов при скачивании объектов из Cloud Files. Установка в значение false скачивает содержимое контейнера в одну плоскую директорию
tenant_id
-
Идентификатор клиента, используемый для аутентификации.
tenant_name
-
Имя клиента, используемое для аутентификации.
type
-
    Варианты:
  • файл ←
  • метаданные
Тип объекта для работы
Объект метаданных или файл
username
строка
Имя пользователя Rackspace, переопределяет credentials.
validate_certs
логический
    Варианты:
  • нет
  • да
Требовать проверку SSL конечных точек API.

алиасы: verify_ssl

Примечания

Примечание

  • Следующие переменные среды могут быть использованы, RAX_USERNAME, RAX_API_KEY, RAX_CREDS_FILE, RAX_CREDENTIALS, RAX_REGION.
  • RAX_CREDENTIALS и RAX_CREDS_FILE указывают на файл учетных данных, подходящий для pyrax. См. https://github.com/rackspace/pyrax/blob/master/docs/getting_started.md#authenticating
  • RAX_USERNAME и RAX_API_KEY исключают использование файла учетных данных
  • RAX_REGION определяет регион Rackspace Public Cloud (DFW, ORD, LON, …)
  • Следующие переменные среды могут быть использованы, RAX_USERNAME, RAX_API_KEY, RAX_CREDS_FILE, RAX_CREDENTIALS, RAX_REGION.
  • RAX_CREDENTIALS и RAX_CREDS_FILE указывают на файл учетных данных, подходящий для pyrax. См. https://github.com/rackspace/pyrax/blob/master/docs/getting_started.md#authenticating
  • RAX_USERNAME и RAX_API_KEY исключают использование файла учетных данных
  • RAX_REGION определяет регион Rackspace Public Cloud (DFW, ORD, LON, …)

Примеры

- name: "Test Cloud Files Objects"
  hosts: local
  gather_facts: False
  tasks:
    - name: "Get objects from test container"
      rax_files_objects:
        container: testcont
        dest: ~/Downloads/testcont

    - name: "Get single object from test container"
      rax_files_objects:
        container: testcont
        src: file1
        dest: ~/Downloads/testcont

    - name: "Get several objects from test container"
      rax_files_objects:
        container: testcont
        src: file1,file2,file3
        dest: ~/Downloads/testcont

    - name: "Delete one object in test container"
      rax_files_objects:
        container: testcont
        method: delete
        dest: file1

    - name: "Delete several objects in test container"
      rax_files_objects:
        container: testcont
        method: delete
        dest: file2,file3,file4

    - name: "Delete all objects in test container"
      rax_files_objects:
        container: testcont
        method: delete

    - name: "Upload all files to test container"
      rax_files_objects:
        container: testcont
        method: put
        src: ~/Downloads/onehundred

    - name: "Upload one file to test container"
      rax_files_objects:
        container: testcont
        method: put
        src: ~/Downloads/testcont/file1

    - name: "Upload one file to test container with metadata"
      rax_files_objects:
        container: testcont
        src: ~/Downloads/testcont/file2
        method: put
        meta:
          testkey: testdata
          who_uploaded_this: someuser@example.com

    - name: "Upload one file to test container with TTL of 60 seconds"
      rax_files_objects:
        container: testcont
        method: put
        src: ~/Downloads/testcont/file3
        expires: 60

    - name: "Attempt to get remote object that does not exist"
      rax_files_objects:
        container: testcont
        method: get
        src: FileThatDoesNotExist.jpg
        dest: ~/Downloads/testcont
      ignore_errors: yes

    - name: "Attempt to delete remote object that does not exist"
      rax_files_objects:
        container: testcont
        method: delete
        dest: FileThatDoesNotExist.jpg
      ignore_errors: yes

- name: "Test Cloud Files Objects Metadata"
  hosts: local
  gather_facts: false
  tasks:
    - name: "Get metadata on one object"
      rax_files_objects:
        container: testcont
        type: meta
        dest: file2

    - name: "Get metadata on several objects"
      rax_files_objects:
        container: testcont
        type: meta
        src: file2,file1

    - name: "Set metadata on an object"
      rax_files_objects:
        container: testcont
        type: meta
        dest: file17
        method: put
        meta:
          key1: value1
          key2: value2
        clear_meta: true

    - name: "Verify metadata is set"
      rax_files_objects:
        container: testcont
        type: meta
        src: file17

    - name: "Delete metadata"
      rax_files_objects:
        container: testcont
        type: meta
        dest: file17
        method: delete
        meta:
          key1: ''
          key2: ''

    - name: "Get metadata on all objects"
      rax_files_objects:
        container: testcont
        type: meta

Статус

  • Данный модуль не гарантирует обратной совместимости интерфейса. [превью]
  • Этот модуль поддерживается сообществом Ansible. [сообщество]

Авторы

  • Paul Durivage (@angstwad)

Подсказка

Если вы заметили какие-либо проблемы в этом руководстве, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.8/modules/rax_files_objects_module.html

Spec-Zone.ru

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