11parameters :
22 - name : version
33 type : string
4- default : latest
4+ default : " "
5+ - name : versionFile
6+ type : string
7+ default : " "
8+ - name : nodeVersionFile
9+ type : string
10+ default : " "
11+ - name : bootstrapNodeVersion
12+ type : string
13+ default : 24.x
14+ - name : stepName
15+ type : string
16+ default : setupVp
517 - name : workingDirectory
618 type : string
719 default : .
@@ -14,6 +26,9 @@ parameters:
1426 - name : registryUrl
1527 type : string
1628 default : " "
29+ - name : authEnv
30+ type : object
31+ default : {}
1732 - name : scope
1833 type : string
1934 default : " "
@@ -22,7 +37,7 @@ parameters:
2237 default : v1.20.0
2338 - name : nodeVersion
2439 type : string
25- default : 24.x
40+ default : " "
2641 - name : packageManager
2742 type : object
2843 default : " "
@@ -37,11 +52,11 @@ parameters:
3752 default : " "
3853
3954steps :
40- - ${{ if ne(parameters.nodeVersion , '') }} :
55+ - ${{ if ne(parameters.bootstrapNodeVersion , '') }} :
4156 - task : UseNode@1
42- displayName : Use Node.js
57+ displayName : Use bootstrap Node.js
4358 inputs :
44- version : ${{ parameters.nodeVersion }}
59+ version : ${{ parameters.bootstrapNodeVersion }}
4560
4661 - powershell : |
4762 $ErrorActionPreference = 'Stop'
5368 displayName: setup-vp prepare (Windows)
5469 env:
5570 SETUP_VP_VERSION: ${{ parameters.version }}
71+ SETUP_VP_VERSION_FILE: ${{ parameters.versionFile }}
72+ SETUP_VP_NODE_VERSION: ${{ parameters.nodeVersion }}
73+ SETUP_VP_NODE_VERSION_FILE: ${{ parameters.nodeVersionFile }}
5674 SETUP_VP_WORKING_DIRECTORY: ${{ parameters.workingDirectory }}
5775 SETUP_VP_RUN_INSTALL: ${{ convertToJson(parameters.runInstall) }}
5876 SETUP_VP_SFW: ${{ iif(eq(parameters.sfw, true), 'true', 'false') }}
7694 displayName: setup-vp prepare (Unix)
7795 env:
7896 SETUP_VP_VERSION: ${{ parameters.version }}
97+ SETUP_VP_VERSION_FILE: ${{ parameters.versionFile }}
98+ SETUP_VP_NODE_VERSION: ${{ parameters.nodeVersion }}
99+ SETUP_VP_NODE_VERSION_FILE: ${{ parameters.nodeVersionFile }}
79100 SETUP_VP_WORKING_DIRECTORY: ${{ parameters.workingDirectory }}
80101 SETUP_VP_RUN_INSTALL: ${{ convertToJson(parameters.runInstall) }}
81102 SETUP_VP_SFW: ${{ iif(eq(parameters.sfw, true), 'true', 'false') }}
@@ -88,6 +109,14 @@ steps:
88109 SETUP_VP_CACHE_DEPENDENCY_PATH: ${{ parameters.cacheDependencyPath }}
89110 SETUP_VP_RUNTIME_OUT: $(Agent.TempDirectory)/setup-vp-azure/dist/azure/index.mjs
90111
112+ - ${{ if eq(parameters.sfw, true) }} :
113+ - task : Cache@2
114+ displayName : Cache Socket Firewall Free
115+ condition : and(succeeded(), eq(variables['SETUP_VP_SFW_READY'], 'true'))
116+ inputs :
117+ key : ' "setup-vp-sfw" | "$(SETUP_VP_SFW_CACHE_KEY)"'
118+ path : $(SETUP_VP_SFW_CACHE_DIR)
119+
91120 - ${{ if eq(parameters.cache, true) }} :
92121 - task : Cache@2
93122 displayName : Cache Vite+ package-manager data
@@ -102,9 +131,10 @@ steps:
102131
103132 - powershell : |
104133 $ErrorActionPreference = 'Stop'
105- node "$(Agent.TempDirectory)\setup-vp-azure\dist\azure\index.mjs" finalize
134+ & "$(SETUP_VP_BOOTSTRAP_NODE)" "$(Agent.TempDirectory)\setup-vp-azure\dist\azure\index.mjs" finalize
106135 condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'))
107136 displayName: setup-vp finalize (Windows)
137+ name: ${{ parameters.stepName }}Windows
108138 env:
109139 SETUP_VP_VERSION: ${{ parameters.version }}
110140 SETUP_VP_WORKING_DIRECTORY: ${{ parameters.workingDirectory }}
@@ -113,14 +143,16 @@ steps:
113143 SETUP_VP_REGISTRY_URL: ${{ parameters.registryUrl }}
114144 SETUP_VP_SCOPE: ${{ parameters.scope }}
115145 NODE_AUTH_TOKEN: $(NODE_AUTH_TOKEN)
146+ ${{ insert }}: ${{ parameters.authEnv }}
116147 SETUP_VP_CACHE: ${{ iif(eq(parameters.cache, true), 'true', 'false') }}
117148 SETUP_VP_CACHE_DEPENDENCY_PATH: ${{ parameters.cacheDependencyPath }}
118149
119150 - bash : |
120151 set -euo pipefail
121- node "$(Agent.TempDirectory)/setup-vp-azure/dist/azure/index.mjs" finalize
152+ "$(SETUP_VP_BOOTSTRAP_NODE)" "$(Agent.TempDirectory)/setup-vp-azure/dist/azure/index.mjs" finalize
122153 condition: and(succeeded(), ne(variables['Agent.OS'], 'Windows_NT'))
123154 displayName: setup-vp finalize (Unix)
155+ name: ${{ parameters.stepName }}Unix
124156 env:
125157 SETUP_VP_VERSION: ${{ parameters.version }}
126158 SETUP_VP_WORKING_DIRECTORY: ${{ parameters.workingDirectory }}
@@ -129,5 +161,6 @@ steps:
129161 SETUP_VP_REGISTRY_URL: ${{ parameters.registryUrl }}
130162 SETUP_VP_SCOPE: ${{ parameters.scope }}
131163 NODE_AUTH_TOKEN: $(NODE_AUTH_TOKEN)
164+ ${{ insert }}: ${{ parameters.authEnv }}
132165 SETUP_VP_CACHE: ${{ iif(eq(parameters.cache, true), 'true', 'false') }}
133166 SETUP_VP_CACHE_DEPENDENCY_PATH: ${{ parameters.cacheDependencyPath }}
0 commit comments