forked from microsoft/TypeScript
-
Notifications
You must be signed in to change notification settings - Fork 0
/
azure-pipelines.release.yml
95 lines (80 loc) · 2.7 KB
/
azure-pipelines.release.yml
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
trigger:
branches:
include:
- release-*
resources:
repositories:
- repository: 1esPipelines
type: git
name: 1ESPipelineTemplates/1ESPipelineTemplates
ref: refs/tags/release
extends:
template: v1/1ES.Official.PipelineTemplate.yml@1esPipelines
parameters:
pool:
name: TypeScript-AzurePipelines-EO
image: 1ESPT-Mariner2.0
os: linux
sdl:
sourceAnalysisPool:
name: TypeScript-AzurePipelines-EO
image: 1ESPT-Windows2022
os: windows
stages:
- stage: buildStage
displayName: Build Stage
jobs:
- job: test
displayName: Test
steps:
- checkout: self
clean: true
fetchDepth: 1
fetchTags: false
- task: NodeTool@0
inputs:
versionSpec: 20.x
displayName: 'Install Node'
- script: |
npm install -g `node -e 'console.log(JSON.parse(fs.readFileSync("package.json", "utf8")).packageManager)'`
npm --version
displayName: 'Install packageManager from package.json'
- script: npm ci
displayName: 'npm ci'
- script: 'npm test'
displayName: 'npm test'
- job: build
displayName: Build
dependsOn: test
steps:
- checkout: self
clean: true
fetchDepth: 1
fetchTags: false
- task: NodeTool@0
inputs:
versionSpec: 20.x
displayName: 'Install Node'
- script: |
npm install -g `node -e 'console.log(JSON.parse(fs.readFileSync("package.json", "utf8")).packageManager)'`
npm --version
displayName: 'Install packageManager from package.json'
- script: npm ci
displayName: 'npm ci'
- script: |
npx hereby LKG
npx hereby clean
node ./scripts/addPackageJsonGitHead.mjs package.json
npm pack
displayName: 'LKG, clean, pack'
- task: CopyFiles@2
displayName: 'Copy Files to: $(Build.ArtifactStagingDirectory)'
inputs:
SourceFolder: ./
Contents: 'typescript-*.tgz'
TargetFolder: '$(Build.ArtifactStagingDirectory)'
templateContext:
outputs:
- output: pipelineArtifact
targetPath: '$(Build.ArtifactStagingDirectory)'
artifactName: tgz