アプリの構築
モノレポが npm にパッケージを公開するためにのみ使用されるのでない限り、少なくとも1つのアプリケーションが含まれる可能性が高いでしょう。Turborepoでアプリのビルドを調整することで、速度が大幅に向上します。
ビルドのセットアップ
Turborepo は、ワークスペースのタスクをそれぞれのワークスペースの package.json
に保持することで機能します。次のようなモノレポがあるとしましょう。
├── apps
│ └── web
│ └── package.json
├── package.json
└── turbo.json
apps/web/package.json
には、内部に build
スクリプトが必要です。
{
"scripts": {
"build": "next build"
}
}
turbo.json
の内部で、build
をパイプラインに追加できます。
{
"pipeline": {
"build": {
"outputs": [".next/**", "!.next/cache/**"]
}
}
}
outputs
を構成して、以前に完了したタスクをスキップできる Turborepo の非常に強力な機能である キャッシュ を有効にできるようにします。
これは、ルートから turbo build
を実行すると、リポジトリ内のすべてのアプリがビルドされることを意味します。Turborepo のタスクキャッシュのおかげで、非常に高速なビルド時間を得ることができます。