Uploading artifacts
===================

``artifacts``
を定義して、ファイルをターゲットインスタンスに作成またはコピーできます。

.. code:: yaml

   cluster_vars:
     artifacts:
     - type: path
       path: /some/target/path
       state: directory
       owner: root
       group: root
       mode: "0755"
     - type: file
       src: /host/path/to/file
       dest: /target/path/to/file
       owner: root
       group: root
       mode: "0644"
     - type: archive
       src: example.tar.gz
       dest: /some/target/path
     - type: directory
       src: /host/path/a/
       dest: /target/path/b/

次のタイプがサポートされています。

-  ``path``
   を使用して、ファイルとディレクトリの所有権またはモードを作成または削除、および変更します。このタイプは、内部で使用するAnsibleの\ ``file``
   モジュールと同じパラメーターを取得します。

-  ``file``
   を使用してコントローラからファイルをコピーし、所有権とモードを設定します
   ``copy`` を使用します。

-  ``archive``
   を使用して、アーカイブから指定した場所にファイルを抽出します
   ``unarchive`` を使用します。

-  ``directory``
   を使用して、コントローラからターゲットインスタンスにディレクトリをrsyncします
   ``synchronize`` を使用します。

この例では、これらのアーティファクトタイプごとに1つのエントリを示しています。これらのパラメーター、または対応するAnsibleモジュールが受け入れるその他のパラメーターを使用できます。

ファイルとディレクトリをターゲットインスタンスにコピーすることは、一般的なニーズです。アーティファクトの定義は、
 :ref:`custom hook <TPA hooks>` を作成するための便利なショートカットになります。
