azure.azcollection.azure_rm_storageblob – Управление контейнерами и объектами blob
Примечание
Этот плагин является частью коллекции azure.azcollection (версия 1.3.1).
Для его установки используйте: ansible-galaxy collection install azure.azcollection.
Для использования в книге задач укажите: azure.azcollection.azure_rm_storageblob.
Новое в версии 0.0.1: of azure.azcollection
Обзор
- Создание, обновление и удаление контейнеров и объектов blob.
- Используется для загрузки файла и сохранения его как объекта blob или для загрузки объекта blob в файл (режим загрузки и скачивания).
- Используется для загрузки пакета файлов из указанной директории (режим пакетной загрузки).
- В режиме пакетной загрузки существующий объект blob будет перезаписан, если необходимо создать объект blob с тем же именем.
- Модуль может работать только в трёх режимах: когда
batch_upload_srcустановлено, он работает в режиме пакетной загрузки; когдаsrcустановлено, он работает в режиме загрузки, и когдаdstустановлено, он работает в режиме скачивания.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- python >= 2.7
- azure >= 2.0.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| ad_user строка | Имя пользователя Active Directory. Используется при аутентификации с пользователем Active Directory, а не с сервисным принципалом. | |
| adfs_authority_url строка добавлено в 0.0.1 azure.azcollection | URL авторизации Azure AD. Используется при аутентификации с помощью имени пользователя/пароля и собственной авторизации ADFS. | |
| api_profile строка добавлено в 0.0.1 azure.azcollection | По умолчанию: "latest" | Выбирает профиль API для взаимодействия с Azure-сервисами. Значение по умолчанию latest подходит для общедоступных облаков; будущие значения позволят использовать с Azure Stack. |
| append_tags логическое |
| Используется для управления тем, является ли поле тегов каноническим или оно просто добавляется к существующим тегам. При каноническом варианте любые теги, не найденные в параметре тегов, будут удалены из метаданных объекта. |
| auth_source строка добавлено в 0.0.1 azure.azcollection |
| Управляет источником учетных данных для аутентификации. Также может быть задан через переменную среды ANSIBLE_AZURE_AUTH_SOURCE.При значении auto (значение по умолчанию) приоритет имеет: параметры модуля -> env -> credential_file -> cli.При значении env, учетные данные будут считываться из переменных среды.При значении credential_file, профиль будет считываться из ~/.azure/credentials.При значении cli, учетные данные будут взяты из профиля Azure CLI. subscription_id или переменная среды AZURE_SUBSCRIPTION_ID может использоваться для определения идентификатора подписки, если их несколько; в противном случае используется стандартная подписка az cli.При значении msi, хост-машина должна быть Azure-ресурсом с включённым расширением MSI. subscription_id или переменная среды AZURE_SUBSCRIPTION_ID может использоваться для определения идентификатора подписки, если ресурсу предоставлен доступ к нескольким подпискам; в противном случае выбирается первая подписка.Параметр msi был добавлен в Ansible 2.6. |
| batch_upload_dst строка | Базовая директория в контейнере при пакетной загрузке файлов. | |
| batch_upload_src строка | Директория источника для пакетной загрузки. Используется со состоянием present для загрузки пакета файлов в директорию. | |
| blob строка | Имя объекта blob внутри контейнера. алиасы: blob_name | |
| blob_type строка добавлено в 0.0.1 azure.azcollection |
| Тип объекта blob. |
| cache_control строка | Устанавливает заголовок кеширования blob. | |
| cert_validation_mode строка добавлено в 0.0.1 azure.azcollection |
| Управляет поведением проверки сертификата для Azure-точек входа. По умолчанию все модули проверяют сертификат сервера, но когда используется HTTPS-прокси или подключение к Azure Stack, может потребоваться отключить это поведение, передав ignore. Также может быть задан в профиле файла учетных данных или переменной среды AZURE_CERT_VALIDATION. |
| client_id строка | Идентификатор клиента Azure. Используется при аутентификации с сервисным принципалом. | |
| cloud_environment строка добавлено в 0.0.1 azure.azcollection | По умолчанию: "AzureCloud" | Для облачных сред, отличных от общедоступного облака США, имя среды (как определено в Azure Python SDK, например, AzureChinaCloud, AzureUSGovernment ), или URL конечной точки обнаружения метаданных (необходим для Azure Stack). Также может быть задан в профиле файла учетных данных или переменной среды AZURE_CLOUD_ENVIRONMENT. |
| container строка / обязательно | Имя контейнера blob в хранилище. алиасы: container_name | |
| content_disposition строка | Устанавливает заголовок content-disposition для blob. | |
| content_encoding строка | Устанавливает заголовок кодирования содержимого для blob. | |
| content_language строка | Устанавливает заголовок языка содержимого для blob. | |
| content_md5 строка | Устанавливает значение хеша md5 blob. | |
| content_type строка | Устанавливает заголовок типа содержимого для blob. Например image/png. | |
| dest строка | Путь к целевому файлу. Используется со состоянием present для загрузки blob.алиасы: destination | |
| force логическое |
| Перезаписывать существующий blob или файл при загрузке или скачивании. Принудительно удалять контейнер, содержащий blob. |
| password строка | Пароль пользователя Active Directory. Используется при аутентификации с пользователем Active Directory, а не с сервисным принципалом. | |
| profile строка | Профиль безопасности, найденный в файле ~/.azure/credentials. | |
| public_access строка |
| Уровень публичного доступа к контейнеру. По умолчанию контейнеры — приватные. Может быть задан только при создании контейнера. |
| resource_group строка / обязательно | Имя используемой группы ресурсов. алиасы: resource_group_name | |
| secret строка | Секрет клиента Azure. Используется при аутентификации с сервисным принципалом. | |
| src строка | Путь к исходному файлу. Используется со состоянием present для загрузки blob.алиасы: source | |
| state строка |
| Состояние контейнера или blob. Используйте состояние absent только с контейнером для удаления контейнера. Включите имя blob для удаления конкретного blob. Контейнер не будет удалён, если он содержит blob. Используйте параметр force для переопределения, удаляя контейнер и все связанные blob.Используйте состояние present для создания или обновления контейнера и загрузки или скачивания blob. Если контейнер не существует, он будет создан. Если он существует, он будет обновлён с параметрами конфигурации. Укажите имя blob и либо src, либо dest для загрузки или скачивания. Укажите путь src для загрузки и путь dest для скачивания. Если blob (загрузка) или файл (скачивание) уже существуют, они не будут перезаписаны, если force=true. |
| storage_account_name строка / обязательно | Имя используемого хранилища. алиасы: account_name, storage_account | |
| subscription_id строка | Ваш идентификатор Azure-подписки. | |
| tags словарь | Словарь пар строка:строка, присваиваемых объекту в качестве метаданных. Метаданные теги объекта будут обновлены предоставленными значениями. Для удаления тегов установите параметр append_tags в false. | |
| tenant строка | Идентификатор Azure-аренды. Используется при аутентификации с сервисным принципалом. |
Примечания
Примечание
- Для аутентификации с Azure вы можете передать параметры, установить переменные среды, использовать профиль, сохранённый в ~/.azure/credentials, или войти в систему перед запуском задач или плейбука с
az login. - Аутентификация также возможна с использованием сервисного принципала или пользователя Active Directory.
- Для аутентификации через сервисный принципал передайте subscription_id, client_id, secret и tenant или установите переменные среды AZURE_SUBSCRIPTION_ID, AZURE_CLIENT_ID, AZURE_SECRET и AZURE_TENANT.
- Для аутентификации через пользователя Active Directory передайте ad_user и password или установите AZURE_AD_USER и AZURE_PASSWORD в среде.
- В качестве альтернативы учетные данные можно сохранить в ~/.azure/credentials. Это ini-файл, содержащий раздел [default] и следующие ключи: subscription_id, client_id, secret и tenant или subscription_id, ad_user и password. Также можно добавить дополнительные профили. Укажите профиль, передав profile или установив AZURE_PROFILE в среде.
См. также
См. также
- Вход с помощью Azure CLI
-
Как войти в систему с помощью команды
az login.
Примеры
- name: Remove container foo
azure_rm_storageblob:
resource_group: myResourceGroup
storage_account_name: clh0002
container: foo
state: absent
- name: Create container foo and upload a file
azure_rm_storageblob:
resource_group: myResourceGroup
storage_account_name: clh0002
container: foo
blob: graylog.png
src: ./files/graylog.png
public_access: container
content_type: 'application/image'
- name: Download the file
azure_rm_storageblob:
resource_group: myResourceGroup
storage_account_name: clh0002
container: foo
blob: graylog.png
dest: ~/tmp/images/graylog.png
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| blob словарь | при обработке объекта blob | Информация о текущем состоянии blob. Пример: {'content_length': 136532, 'content_settings': {'cache_control': None, 'content_disposition': None, 'content_encoding': None, 'content_language': None, 'content_md5': None, 'content_type': 'application/image'}, 'last_modified': '09-Mar-2016 22:08:25 +0000', 'name': 'graylog.png', 'tags': {}, 'type': 'BlockBlob'} |
| container словарь | всегда | Информация о текущем состоянии выбранного контейнера. Пример: {'last_modified': '09-Mar-2016 19:28:26 +0000', 'name': 'foo', 'tags': {}} |
Авторы
- Chris Houseknecht (@chouseknecht)
- Matt Davis (@nitzmahone)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/azure/azcollection/azure_rm_storageblob_module.html