Taskfileを使ってみました
2024-09-02
Taskfile とは
Taskfile とはタスクランナー/ビルドツールで、Makefile よりもシンプルで使いやすいことを目指しています。
Go 言語で書かれているため、バイナリ 1 つで他に依存するものがありません。
Taskfile.ymlというファイルにシンプルなスキーマを使ってタスクを記述するだけです。
TaskA fast, cross-platform build tool inspired by Make, designed for modern workflows.
taskfile.dev
インストール
Mac と Windows はそれぞれ以下のコマンドでインストールできます。
- Mac
brew install go-task/tap/go-task- Windows
winget install Task.TaskGo 言語の環境があれば以下でも可能です。
go install github.com/go-task/task/v3/cmd/task@latest使い方
まずはTaskfile.ymlを作成し、以下のコードを記述してください。
version: "3"
tasks:
# タスク名
hello:
# 実行するコマンド
cmds:
- echo 'Hello World from Task!'
#出力結果のみターミナルに表示
silent: trueその後ファイルと同じ階層で以下のコマンドを実行します。
task helloするとターミナルに以下が表示されるはずです。
Hello World from Task!モノレポ環境で実行
今回は React と Golang のモノレポ環境で使うコマンドを考えます。
version: "3"
silent: true
tasks:
dev:
desc: Start dev server
deps:
- task: dev:backend
- task: dev:frontend
dev:backend:
desc: Start backend dev server
dir: ./backend
cmd: air
dev:frontend:
desc: Start frontend dev server
dir: ./frontend
deps:
- frontend:install-deps
cmd: bun run dev上記のコードを記載後task devコマンドを実行するとフロントエンドとバックエンドが起動します。
参考
Taskfileを使ってみよう
zenn.dev
