Spec-Zone.ru › Ansible 2.9

unarchive – Распаковывает архив (при необходимости, скопировав его с локальной машины)

  • Описание
  • Параметры
  • Примечания
  • См. также
  • Примеры
  • Статус

Описание

  • Модуль unarchive распаковывает архив. Он не будет распаковывать сжатый файл, не содержащий архив.
  • По умолчанию он скопирует исходный файл с локальной системы на целевую перед распаковкой.
  • Установите remote_src=yes, чтобы распаковать архив, который уже существует на целевой системе.
  • Если требуется проверка контрольной суммы, используйте get_url или uri для получения файла и установки remote_src=yes.
  • Для целевых систем Windows используйте модуль win_unzip.

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
attributes
строка
Атрибуты, которые должен иметь результирующий файл или директория.
Чтобы узнать поддерживаемые флаги, см. страницу справки для chattr на целевой системе.
Эта строка должна содержать атрибуты в том же порядке, что и отображаемый lsattr.
Оператор = предполагается по умолчанию, в противном случае необходимо включить операторы + или - в строку.

псевдонимы: attr
copy
логическое значение
    Варианты:
  • нет
  • да ←
Если true, файл копируется с локального 'master' на целевой компьютер, в противном случае плагин будет искать архив src на целевом компьютере.
Этот параметр устарел в пользу remote_src.
Этот параметр несовместим с remote_src.
creates
путь
Если указанный абсолютный путь (файл или директория) уже существует, этот шаг не будет выполнен.
decrypt
логическое значение
добавлено в 2.4
    Варианты:
  • нет
  • да ←
Этот параметр управляет автоматическим расшифрованием исходных файлов с помощью хранилища.
dest
путь / обязательно
Абсолютный удаленный путь, куда должен быть распакован архив.
exclude
список
Список каталогов и файлов, которые нужно исключить из действия распаковки.
extra_opts
список
По умолчанию:
""
Укажите дополнительные параметры, передав массив.
Каждый параметр командной строки, разделенный пробелом, должен быть новым элементом массива. См. примеры.
Параметры командной строки с несколькими элементами должны использовать несколько строк в массиве, по одной для каждого элемента.
group
строка
Имя группы, которая должна владеть файлом/директорией, как это передается в chown.
keep_newer
логическое значение
    Варианты:
  • нет ←
  • да
Не заменять существующие файлы, которые новее файлов из архива.
list_files
логическое значение
    Варианты:
  • нет ←
  • да
Если установлено в True, возвращает список файлов, содержащихся в архиве.
mode
строка
Права доступа, которые должен иметь результирующий файл или директория.
Для тех, кто привык к /usr/bin/chmod, помните, что режимы фактически являются восьмеричными числами. Вы должны либо добавить ведущую ноль, чтобы интерпретатор YAML Ansible знал, что это восьмеричное число (как 0644 или 01777), либо заключить его в кавычки (как '644' или '1777'), чтобы Ansible получил строку и смог выполнить преобразование строки в число.
Передача Ansible числа без соблюдения одного из этих правил приведет к десятичному числу, что приведет к неожиданным результатам.
Начиная с Ansible 1.8, режим может быть задан как символический режим (например, u+rwx или u=rw,g=r,o=r).
owner
строка
Имя пользователя, который должен владеть файлом/директорией, как это передается в chown.
remote_src
логическое значение
    Варианты:
  • нет ←
  • да
Установите в yes, чтобы указать, что архивный файл уже находится на удаленной системе, а не на локальном контроллере Ansible.
Этот параметр несовместим с copy.
selevel
строка
По умолчанию:
"s0"
Часть уровня SELinux контекста файла.
Это атрибут MLS/MCS, иногда известный как range.
Если установлено в _default, будет использована часть политики level, если она доступна.
serole
строка
Часть роли контекста файла SELinux.
Если установлено в _default, будет использована часть политики role, если она доступна.
setype
строка
Часть типа контекста файла SELinux.
Если установлено в _default, будет использована часть политики type, если она доступна.
seuser
строка
Часть пользователя контекста файла SELinux.
По умолчанию используется политика system, если применимо.
Если установлено в _default, будет использована часть политики user, если она доступна.
src
путь / обязательно
Если remote_src=no (по умолчанию), локальный путь к файлу архива для копирования на целевой сервер; может быть абсолютным или относительным. Если remote_src=yes, путь на целевом сервере к существующему архивному файлу для распаковки.
Если remote_src=yes и src содержит ://, удаленный компьютер сначала загрузит файл из URL. (version_added 2.0). Это только для простых случаев, для полной поддержки загрузки используйте модуль get_url.
unsafe_writes
логическое значение
    Варианты:
  • нет ←
  • да
Влияние на использование атомарной операции для предотвращения повреждения данных или несогласованного чтения из целевого файла.
По умолчанию этот модуль использует атомарные операции для предотвращения повреждения данных или несогласованного чтения из целевых файлов, но иногда системы настроены или просто сломаны таким образом, что это предотвращает. Одним примером являются файлы, смонтированные в docker, которые не могут быть обновлены атомарно изнутри контейнера и могут быть записаны только небезопасным способом.
Этот параметр позволяет Ansible перейти к небезопасным методам обновления файлов, когда атомарные операции терпят неудачу (однако он не заставляет Ansible выполнять небезопасные записи).
ВАЖНО! Небезопасные записи подвержены гонкам и могут привести к повреждению данных.
validate_certs
логическое значение
    Варианты:
  • нет
  • да ←
Это применимо только в случае использования URL https в качестве источника файла.
Это должно быть установлено в no только для сайтов, контролируемых лично, использующих самоподписанный сертификат.
До версии 2.2 код работал так, как если бы это было установлено в yes.

Примечания

Примечание

  • Требует zipinfo и gtar/unzip команду на целевом хосте.
  • Может обрабатывать файлы .zip с помощью unzip, а также файлы .tar, .tar.gz, .tar.bz2 и .tar.xz с помощью gtar.
  • Не обрабатывает файлы .gz, .bz2 или .xz, которые не содержат архив .tar.
  • Использует аргумент gtar’s --diff для вычисления изменений. Если этот arg не поддерживается, архив всегда будет распакован.
  • Существующие файлы/каталоги в пункте назначения, которые отсутствуют в архиве, не затрагиваются. Это поведение аналогично стандартному извлечению из архива.
  • Существующие файлы/каталоги в пункте назначения, которые отсутствуют в архиве, игнорируются для определения необходимости распаковки архива.

См. также

См. также

archive – Создает сжатый архив одного или нескольких файлов или деревьев
Официальная документация модуля archive.
iso_extract – Извлечение файлов из образа ISO
Официальная документация модуля iso_extract.
win_unzip – Распаковывает сжатые файлы и архивы на узле Windows
Официальная документация модуля win_unzip.

Примеры

- name: Extract foo.tgz into /var/lib/foo
  unarchive:
    src: foo.tgz
    dest: /var/lib/foo

- name: Unarchive a file that is already on the remote machine
  unarchive:
    src: /tmp/foo.zip
    dest: /usr/local/bin
    remote_src: yes

- name: Unarchive a file that needs to be downloaded (added in 2.0)
  unarchive:
    src: https://example.com/example.zip
    dest: /usr/local/bin
    remote_src: yes

- name: Unarchive a file with extra options
  unarchive:
    src: /tmp/foo.zip
    dest: /usr/local/bin
    extra_opts:
    - --transform
    - s/^xxx/yyy/

Статус

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

Поддержка Red Hat

Дополнительную информацию о поддержке этого модуля Red Hat можно найти в этой статье базы знаний Red Hat.

Авторы

  • Michael DeHaan

Подсказка

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

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

Spec-Zone.ru

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