Skip to content

Commit 366a898

Browse files
committedNov 14, 2024·
Add scheduled test run against VSCode insiders
1 parent 4584981 commit 366a898

File tree

5 files changed

+39
-4
lines changed

5 files changed

+39
-4
lines changed
 

‎azure-pipelines.yml

+22-2
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,25 @@ pr:
1616
- main
1717
paths:
1818
exclude:
19-
- ./*.md
19+
- ./*.md
20+
21+
# Run a scheduled build every night on main to run tests against insiders VSCode.
22+
# The variable testVSCodeVersion is set to insiders based on the build reason.
23+
schedules:
24+
- cron: "0 0 * * *"
25+
displayName: Daily Insiders Build
26+
branches:
27+
include:
28+
- main
2029

2130
variables:
22-
defaultDotnetVersion: '8.0.403'
31+
- name: defaultDotnetVersion
32+
value: '8.0.403'
33+
- name: testVSCodeVersion
34+
${{ if eq( variables['Build.Reason'], 'Schedule' ) }}:
35+
value: insiders
36+
${{ else }}:
37+
value: stable
2338

2439
stages:
2540
- template: azure-pipelines/build-all.yml
@@ -36,6 +51,7 @@ stages:
3651
parameters:
3752
# Prefer the dotnet from the container.
3853
dotnetVersion: ''
54+
testVSCodeVersion: $(testVSCodeVersion)
3955
installAdditionalLinuxDependencies: true
4056
pool:
4157
name: NetCore-Public
@@ -50,6 +66,7 @@ stages:
5066
parameters:
5167
# Prefer the dotnet from the container.
5268
dotnetVersion: ''
69+
testVSCodeVersion: $(testVSCodeVersion)
5370
installAdditionalLinuxDependencies: true
5471
pool:
5572
name: NetCore-Public
@@ -63,6 +80,7 @@ stages:
6380
- template: azure-pipelines/test-matrix.yml
6481
parameters:
6582
dotnetVersion: $(defaultDotnetVersion)
83+
testVSCodeVersion: $(testVSCodeVersion)
6684
pool:
6785
name: NetCore-Public
6886
demands: ImageOverride -equals 1es-windows-2022-open
@@ -74,6 +92,7 @@ stages:
7492
- template: azure-pipelines/test-matrix.yml
7593
parameters:
7694
dotnetVersion: $(defaultDotnetVersion)
95+
testVSCodeVersion: $(testVSCodeVersion)
7796
pool:
7897
name: Azure Pipelines
7998
vmImage: macOS-13
@@ -96,3 +115,4 @@ stages:
96115
- template: azure-pipelines/test-omnisharp.yml
97116
parameters:
98117
dotnetVersion: $(defaultDotnetVersion)
118+
testVSCodeVersion: $(testVSCodeVersion)

‎azure-pipelines/test-matrix.yml

+4-1
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ parameters:
99
- name: installAdditionalLinuxDependencies
1010
type: boolean
1111
default: false
12+
- name: testVSCodeVersion
13+
type: string
1214

1315
jobs:
1416
- job:
@@ -26,4 +28,5 @@ jobs:
2628
parameters:
2729
dotnetVersion: ${{ parameters.dotnetVersion }}
2830
installAdditionalLinuxDependencies: true
29-
npmCommand: $(npmCommand)
31+
npmCommand: $(npmCommand)
32+
testVSCodeVersion: ${{ parameters.testVSCodeVersion }}

‎azure-pipelines/test-omnisharp.yml

+3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
parameters:
22
- name: dotnetVersion
33
type: string
4+
- name: testVSCodeVersion
5+
type: string
46

57
steps:
68
- checkout: self
@@ -19,6 +21,7 @@ steps:
1921
displayName: 🧪 Run unit and integration tests
2022
env:
2123
DISPLAY: :99.0
24+
CODE_VERSION: ${{ parameters.testVSCodeVersion }}
2225

2326
- task: PublishTestResults@2
2427
condition: succeededOrFailed()

‎azure-pipelines/test.yml

+3
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ parameters:
66
default: false
77
- name: npmCommand
88
type: string
9+
- name: testVSCodeVersion
10+
type: string
911

1012
steps:
1113
- checkout: self
@@ -29,6 +31,7 @@ steps:
2931
displayName: 🧪 Run $(Agent.JobName)
3032
env:
3133
DISPLAY: :99.0
34+
CODE_VERSION: ${{ parameters.testVSCodeVersion }}
3235

3336
- task: PublishTestResults@2
3437
condition: succeededOrFailed()

‎test/vscodeLauncher.ts

+7-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,13 @@ export async function prepareVSCodeAndExecuteTests(
1515
userDataDir: string,
1616
env: NodeJS.ProcessEnv
1717
): Promise<number> {
18-
const vscodeExecutablePath = await downloadAndUnzipVSCode('1.94.2');
18+
let vscodeVersion = 'stable';
19+
if (process.env.CODE_VERSION) {
20+
console.log(`VSCode version overriden to ${process.env.CODE_VERSION}.`);
21+
vscodeVersion = process.env.CODE_VERSION;
22+
}
23+
24+
const vscodeExecutablePath = await downloadAndUnzipVSCode(vscodeVersion);
1925
const [cli, ...args] = resolveCliArgsFromVSCodeExecutablePath(vscodeExecutablePath);
2026

2127
console.log('Display: ' + env.DISPLAY);

0 commit comments

Comments
 (0)
Please sign in to comment.