-
Notifications
You must be signed in to change notification settings - Fork 336
106 lines (77 loc) · 2.68 KB
/
CI_release.yml
File metadata and controls
106 lines (77 loc) · 2.68 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
pool:
vmImage: 'ubuntu-latest'
variables:
STAGING_DIR: $(Build.ArtifactStagingDirectory)
ARTIFACT_DIR: '$(STAGING_DIR)/vsix'
system.debug: 'true'
stages:
- stage: BuildAndPackage
jobs:
- job: Package
steps:
- task: NodeTool@0
condition: true
inputs:
versionSource: 'spec'
versionSpec: '22.x'
- task: Npm@1
condition: true
inputs:
command: 'install'
- task: Npm@1
condition: true
inputs:
command: 'custom'
customCommand: 'run package'
- script: |
mkdir -p "$ARTIFACT_DIR"
echo "Created folder: $ARTIFACT_DIR"
displayName: 'Create directory on Linux'
env:
ARTIFACT_DIR: $(ARTIFACT_DIR)
- script: |
echo "Artifact dir is $ARTIFACT_DIR"
echo "esrpConnectionName dir is $ESRP_CONNECTION_NAME"
cp vscode-edge-devtools.vsix $(ARTIFACT_DIR)
displayName: 'Copy VSIX to Artifact Staging Directory'
env:
ARTIFACT_DIR: $(ARTIFACT_DIR)
ESRP_CONNECTION_NAME: $(ESRP_CONNECTION_NAME)
- pwsh: npx @vscode/vsce@latest generate-manifest -i $(ARTIFACT_DIR)/vscode-edge-devtools.vsix -o $(ARTIFACT_DIR)/vscode-edge-devtools.manifest
displayName: 'Generate extension manifest'
- pwsh: cp $(ARTIFACT_DIR)/vscode-edge-devtools.manifest $(ARTIFACT_DIR)/vscode-edge-devtools.signature.p7s
displayName: 'Prepare manifest for signing'
- task: EsrpCodeSigning@6
condition: true
inputs:
ConnectedServiceName: $(ESRP_CONNECTION_NAME)
AppRegistrationClientId: $(appRegistrationClientId)
AppRegistrationTenantId: $(esrpTenantId)
EsrpClientId: $(esrpClientId)
ProvisionStorage: 'false'
UseMSIAuthentication: true
AuthAKVName: $(esrpAuthAkvName)
AuthSignCertName: $(esrpAuthCertName)
FolderPath: $(ARTIFACT_DIR)
Pattern: 'vscode-edge-devtools.signature.p7s'
signConfigType: 'inlineSignParams'
inlineOperation: |
[
{
"keyCode": "$(KEY_CODE)",
"operationSetCode": "$(OPERATION_SET_CODE)",
"parameters" : [],
"toolName": "sign",
"toolVersion": "1.0"
}
]
SessionTimeout: '60'
MaxConcurrency: '50'
MaxRetryAttempts: '5'
PendingAnalysisWaitTimeoutMinutes: '5'
- task: PublishBuildArtifacts@1
inputs:
pathToPublish: '$(ARTIFACT_DIR)'
artifactName: 'vsix-artifact'
publishLocation: 'Container'
displayName: 'Publish VSIX Artifact'