Skip to content

Commit b7aa0d8

Browse files
Move lint to a parallel CI job to reduce build time
Remove lint from ci:build's serial dependency chain and run it as a parallel taskTest job in the build-client pipeline. The local `build` task still includes lint. This follows the approach from PR microsoft#25321 and the discussion in PR microsoft#26596. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent cd29b5c commit b7aa0d8

File tree

2 files changed

+4
-5
lines changed

2 files changed

+4
-5
lines changed

fluidBuild.config.cjs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ module.exports = {
3434
"ci:build": {
3535
dependsOn: [
3636
"compile",
37-
"lint",
37+
// "lint" — moved to parallel CI job (see build-client.yml taskTest)
3838
"ci:build:api-reports",
3939
"ci:build:docs",
4040
"build:manifest",

tools/pipelines/build-client.yml

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -206,17 +206,16 @@ extends:
206206
poolBuild: Large-eastus2
207207
checkoutSubmodules: true
208208
taskBundleAnalysis: true
209-
taskLint: false # Linting is captured by `ci:build` via fluid-build
209+
taskLint: false # Linting runs as a parallel job via taskTest below
210210
taskBuildDocs: true
211211
publishDocs: true
212212
# We only care about pipeline run telemetry for the CI runs on the internal project, not for PR runs in the public
213213
# one. And since we don't batch commits for CI pipeline runs, the only reason we see for automated runs is IndividualCI.
214214
telemetry: ${{ eq(variables['Build.Reason'], 'IndividualCI') }}
215215
shouldShip: ${{ or(eq(variables['release'], 'release'), eq(variables['release'], 'prerelease')) }}
216216
taskTest:
217-
# This check must be run after the build, since it relies on built files being present. Eventually it might be moved
218-
# to the "pack" stage since it can use the already-packed packages in that case. As it is the pipeline packs some
219-
# packages twice.
217+
# This check must be run after the build, since it relies on built files being present.
218+
- { name: "lint", jobName: "Lint" }
220219
- { name: "ci:test:jest", jobName: "JestTest" }
221220
- { name: "ci:test:realsvc:tinylicious", jobName: "RealsvcTinyliciousTest" }
222221
- { name: "ci:test:stress:tinylicious", jobName: "StressTinyliciousTest" }

0 commit comments

Comments
 (0)