mdklatt.tmpdir
tmpdir
######
|travis.png|
この Ansibleロール
_ は、一時的な作業ディレクトリを作成し、プレイが終了した時に自動的に削除されます。このロールが含まれる回数に関係なく、プレイごとに1つのディレクトリのみが作成されます。
このロールは Ansible Galaxy
_ にもあります。
============
要件
============
ターゲットマシンには mktemp
コマンドが必要です。
==============
ロール変数
==============
tmpdir_root
: ルートパス(存在する必要があります)。デフォルトはシステムの一時ディレクトリです。tmpdir_template
: ディレクトリ名を作成するために使用されます。デフォルトはtmp.XXXXXX
です。tmpdir_path
: ディレクトリパス。実行時に作成されます。tmpdir_force
: 特権ユーザーとしてディレクトリを削除します。デフォルトは false です。
root
と template
変数はプレイブックレベルでのみ設定する必要があります。 一時ディレクトリが作成された後は、これらの変数を変更しても効果はありません。したがって、このロールを使用する他のロールは、これらの値を変更できることに依存すべきではありません。
force
を true に設定すると、クリーンアップハンドラが特権ユーザーによって書き込まれたファイルを削除できるようになります。
================
例プレイブック
================
.. コード::
- hosts: all
roles:
- name: tmpdir
tmpdir_root: /tmp
tmpdir_template: tmp.XXXXXXXX
tasks:
- name: 一時ディレクトリのソースをダウンロード
unarchive:
src: https://github.com/mdklatt/ansible-tmpdir-role/archive/master.zip
dest: "{{ tmpdir_path }}"
copy: false
=================
モレキュールワークフロー
=================
.. _Molecule: https://molecule.readthedocs.io/en/stable/getting-started.html#run-a-full-test-sequence
クロスプラットフォームテストのために Molecule
_ フレームワークを使用します:
.. コードブロック:: コンソール
$ python -m molecule --all --parallel test
.. |travis.png| 画像:: https://travis-ci.org/mdklatt/ansible-tmpdir-role.svg?branch=main
:alt: Travis CIビルドステータス
:target: travis
_
.. _travis: https://travis-ci.org/mdklatt/ansible-tmpdir-role
.. _Ansibleロール: http://docs.ansible.com/ansible/playbooks_roles.html#roles
.. _Ansible Galaxy: https://galaxy.ansible.com/mdklatt/tmpdir