microsoft/typespec
Publicmirrored from https://github.com/microsoft/typespecAvailable
eng/common/pipelines/ci.yml
61lines · modecode
| 1 | trigger: |
| 2 | branches: |
| 3 | include: |
| 4 | - gh-readonly-queue/* |
| 5 | |
| 6 | pr: |
| 7 | branches: |
| 8 | include: |
| 9 | - main |
| 10 | - release/* |
| 11 | |
| 12 | extends: |
| 13 | template: /eng/common/pipelines/templates/1es-redirect.yml |
| 14 | parameters: |
| 15 | BinSkimSettings: |
| 16 | analyzeTargetGlob: +:file|**/*.dll;+:file|**/*.exe;-:f|**/tsp.exe # Flag issue with node binary which we can't fix https://github.com/nodejs/node/issues/42100 |
| 17 | stages: |
| 18 | - stage: InitStage |
| 19 | displayName: Initialize |
| 20 | pool: |
| 21 | name: $(LINUXPOOL) |
| 22 | image: $(LINUXVMIMAGE) |
| 23 | os: linux |
| 24 | jobs: |
| 25 | - job: InitJob |
| 26 | displayName: Initialize |
| 27 | steps: |
| 28 | - task: NodeTool@0 |
| 29 | displayName: Install Node.js |
| 30 | inputs: |
| 31 | versionSpec: 22.x |
| 32 | - script: npm install -g pnpm # Pnpm manage-package-manager-versions will respect packageManager field |
| 33 | displayName: Install pnpm |
| 34 | |
| 35 | - script: pnpm install |
| 36 | displayName: Install JavaScript Dependencies |
| 37 | |
| 38 | - script: node $(Build.SourcesDirectory)/eng/common/scripts/resolve-target-branch.js |
| 39 | displayName: Resolve target branch |
| 40 | |
| 41 | - script: pnpm tsx ./eng/common/scripts/dispatch-area-triggers.ts --target-branch $(TARGET_BRANCH) |
| 42 | displayName: "Analyze PR changes" |
| 43 | name: InitStep |
| 44 | |
| 45 | # Run csharp stages if RunCSharp == true |
| 46 | - template: /packages/http-client-csharp/eng/pipeline/templates/ci-stages.yml |
| 47 | parameters: |
| 48 | DependsOn: InitStage |
| 49 | Condition: eq('true', stageDependencies.InitStage.outputs['InitJob.InitStep.RunCSharp']) |
| 50 | |
| 51 | # Run java stages if RunJava == true |
| 52 | - template: /packages/http-client-java/eng/pipeline/templates/ci-stages.yml |
| 53 | parameters: |
| 54 | DependsOn: InitStage |
| 55 | Condition: eq('true', stageDependencies.InitStage.outputs['InitJob.InitStep.RunJava']) |
| 56 | |
| 57 | # Run python stages if RunPython == true |
| 58 | - template: /packages/http-client-python/eng/pipeline/templates/ci-stages.yml |
| 59 | parameters: |
| 60 | DependsOn: InitStage |
| 61 | Condition: eq('true', stageDependencies.InitStage.outputs['InitJob.InitStep.RunPython']) |
| 62 | |