概要
以下、自分用のメモです。
Task での他のタスクファイルをincludeする方法
Makeなどと同様に他のタスクファイルをincludeして、定義されているタスクを取り込んで利用可能です。
取込むには、トップレベルで includes:
を指定します。
存在しない場合でも処理を止めたくない場合は、optional: true
を指定する。
以下のようなファイル階層になっているとします。
$ tree 06.include/ 06.include/ ├── other │ └── Taskfile.yml ├── other2 │ └── othertaskfile.yml └── Taskfile.yml 2 directories, 3 files
上でメインのタスクファイルは直下の Taskfile.yml
です。サブディレクトリの下にいるタスクファイルをincludeして利用します。
サブディレクトリの下に配置しているタスクファイルは以下の通り。
other/Taskfile.yml
version: "3" tasks: task: cmds: - echo 'task1'
other2/othertaskfile.yml
version: "3" tasks: task: cmds: - echo 'task2'
メインのタスクファイルは以下のようになっています。
Taskfile.yml
version: "3" includes: other1: ./other other2: ./other2/othertaskfile.yml other3: taskfile: ./other3/Taskfile.yml optional: true tasks: default: cmds: - task: other1:task - task: other2:task
実行すると以下のようになります。
$ task -d 06.include/ task: [other1:task] echo 'task1' task1 task: [other2:task] echo 'task2' task2
参考情報
過去の記事については、以下のページからご参照下さい。
サンプルコードは、以下の場所で公開しています。