-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathturbo.json
More file actions
151 lines (139 loc) · 4.02 KB
/
turbo.json
File metadata and controls
151 lines (139 loc) · 4.02 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
{
"$schema": "https://turbo.build/schema.json",
"ui": "tui",
"globalDependencies": ["*.js", "*.json", "*.ts"],
"globalEnv": ["CI", "SKIP_THE_BUILD"],
"tasks": {
// -----------------------------------------------------------------------
// Workspace tasks
// Tests are a repo-wide task
"//#w:all-tests": {
"dependsOn": ["w:dependencies"],
"inputs": ["$TURBO_DEFAULT$", "**/__tests__/**", "**/tests/**", "**/*.test.*", "**/*.spec.*"],
"outputs": ["coverage/**"]
},
"//#w:all-tests:ci": {
"dependsOn": ["w:dependencies"],
"inputs": ["$TURBO_DEFAULT$", "**/__tests__/**", "**/tests/**", "**/*.test.*", "**/*.spec.*"],
"outputs": ["coverage/**"]
},
"//#w:all-tests:ui": {
"dependsOn": ["w:dependencies"],
"cache": false,
"persistent": true
},
"//#w:all-tests:watch": {
"dependsOn": ["w:dependencies"],
"cache": false,
"persistent": true
},
// An abstract "all packages" dependency for repo-wide workspace tasks.
// This should exactly match the package-level `dependencies` task below -- we just have to explicitly list
// the packages. See https://github.com/vercel/turborepo/discussions/7481
"//#w:dependencies": {
"dependsOn": ["@spautz/basic-library-template#build", "@spautz/react-library-template#build"]
},
// Lint checks cover the whole repo, so packages have to be resolvable
"//#w:lint": {
"dependsOn": ["w:dependencies"],
"outputLogs": "new-only"
},
"//#w:lint:verify": {
"dependsOn": ["w:dependencies"],
"outputLogs": "new-only"
},
// Typecheck only target the root's own files: not repo-wide
"//#w:typecheck": {
"outputLogs": "new-only"
},
// -----------------------------------------------------------------------
// Special tasks for packages
"pipeline-all": {
"dependsOn": ["typecheck", "lint", "test", "build", "build-storybook"]
},
"pipeline-ci": {
"dependsOn": ["typecheck", "lint:verify", "test:ci", "build", "build-storybook"]
},
// -----------------------------------------------------------------------
// Package tasks
// Anything that's a dependency of something else in this repo must be built
"dependencies": {
"dependsOn": ["^build"]
},
// Topographic dependencies are abstract, since there's no 'topo' task to run
"topo": {
"dependsOn": ["^topo"]
},
// Individual/standalone package tasks
"build": {
"dependsOn": ["^build"],
"outputs": [
".astro/**",
".next/**",
".nuxt/**",
".output/**",
".react-router/**",
".svelte-kit/**",
".nuxt/**",
"!.next/cache/**",
"_fresh/**",
"build/**",
"dist/**",
"legacy-types/**",
"out/**",
"public/build/**"
],
"outputLogs": "new-only"
},
"build:watch": {
"dependsOn": ["^build"],
"cache": false,
"persistent": true,
"interactive": true
},
"build-storybook": {
"dependsOn": ["^build"],
"outputLogs": "new-only"
},
"dev": {
"dependsOn": ["^build"],
"cache": false,
"persistent": true,
"interactive": true
},
"lint": {
"dependsOn": ["^build"],
"outputLogs": "new-only"
},
"lint:verify": {
"dependsOn": ["^build"],
"outputLogs": "new-only"
},
"test": {
"dependsOn": ["^build", "^test"],
"outputs": ["coverage/**"],
"outputLogs": "new-only"
},
"test:ci": {
"dependsOn": ["^build", "^test:ci"],
"outputs": ["coverage/**"],
"outputLogs": "new-only"
},
"test:ui": {
"dependsOn": ["^build", "^test"],
"cache": false,
"persistent": true,
"interactive": true
},
"test:watch": {
"dependsOn": ["^build", "^test"],
"cache": false,
"persistent": true,
"interactive": true
},
"typecheck": {
"dependsOn": ["^build", "^typecheck"],
"outputLogs": "new-only"
}
}
}