diff --git a/.azure-pipelines/vscode-gradle-ci.yml b/.azure-pipelines/vscode-gradle-ci.yml index a5728fbaf..adefaf02f 100644 --- a/.azure-pipelines/vscode-gradle-ci.yml +++ b/.azure-pipelines/vscode-gradle-ci.yml @@ -85,7 +85,7 @@ jobs: inputs: buildType: specific project: 'a4d27ce2-a42d-4b71-8eef-78cee9a9728e' - pipeline: 14788 + pipeline: 15023 downloadType: specific extractTars: false - task: CopyFiles@2 @@ -94,9 +94,21 @@ jobs: SourceFolder: '$(System.ArtifactsDirectory)/build-server/server/build/libs' Contents: '**' TargetFolder: $(Build.SourcesDirectory)/extension/server + - task: JavaToolInstaller@0 + displayName: Install Java 17 + inputs: + versionSpec: '17' + jdkArchitectureOption: 'x64' + jdkSourceOption: 'PreInstalled' + - task: Gradle@2 + displayName: Build + inputs: + gradleWrapperFile: 'gradlew' + gradleOptions: '-Xmx3072m' + tasks: ':extension:copyJdtlsPluginJar' - bash: | cd $(Build.SourcesDirectory)/extension - npx vsce@latest package + npx @vscode/vsce@latest package displayName: Package VSIX - task: CopyFiles@2 displayName: Copy VSIX diff --git a/.azure-pipelines/vscode-gradle-nightly.yml b/.azure-pipelines/vscode-gradle-nightly.yml index 1733775dc..81c82ac9f 100644 --- a/.azure-pipelines/vscode-gradle-nightly.yml +++ b/.azure-pipelines/vscode-gradle-nightly.yml @@ -93,9 +93,62 @@ steps: inputs: artifact: 'NOTICE.txt' path: $(Build.SourcesDirectory)/extension +- task: DownloadBuildArtifacts@1 + displayName: 'Download Build Server Artifacts' + inputs: + buildType: specific + project: 'a4d27ce2-a42d-4b71-8eef-78cee9a9728e' + pipeline: 15024 + downloadType: specific + extractTars: false +- task: CopyFiles@2 + displayName: 'Copy Build Server Artifacts' + inputs: + SourceFolder: '$(System.ArtifactsDirectory)/build-server/server/build/libs' + Contents: '**' + TargetFolder: $(Build.SourcesDirectory)/extension/server +- task: JavaToolInstaller@0 + displayName: Install Java 17 + inputs: + versionSpec: '17' + jdkArchitectureOption: 'x64' + jdkSourceOption: 'PreInstalled' +- task: Gradle@2 + displayName: Build + inputs: + gradleWrapperFile: 'gradlew' + gradleOptions: '-Xmx3072m' + tasks: ':extension:copyJdtlsPluginJar' +- task: EsrpCodeSigning@2 + displayName: 'ESRP CodeSigning' + inputs: + ConnectedServiceName: 'vscjavaci_codesign' + FolderPath: 'extension/server' + Pattern: 'com.microsoft.gradle.bs.importer-*.jar' + signConfigType: 'inlineSignParams' + inlineOperation: | + [ + { + "KeyCode" : "CP-447347-Java", + "OperationCode" : "JavaSign", + "Parameters" : { + "SigAlg" : "SHA256withRSA", + "Timestamp" : "-tsa http://sha256timestamp.ws.digicert.com/sha256/timestamp" + }, + "ToolName" : "sign", + "ToolVersion" : "1.0" + }, + { + "KeyCode" : "CP-447347-Java", + "OperationCode" : "JavaVerify", + "Parameters" : {}, + "ToolName" : "sign", + "ToolVersion" : "1.0" + } + ] - bash: | cd $(Build.SourcesDirectory)/extension - npx vsce@latest package --pre-release + npx @vscode/vsce@latest package --pre-release displayName: Package VSIX - task: CopyFiles@2 displayName: Copy VSIX diff --git a/.azure-pipelines/vscode-gradle-rc.yml b/.azure-pipelines/vscode-gradle-rc.yml index 34542d282..a17fa455b 100644 --- a/.azure-pipelines/vscode-gradle-rc.yml +++ b/.azure-pipelines/vscode-gradle-rc.yml @@ -83,7 +83,7 @@ steps: path: $(Build.SourcesDirectory)/extension - bash: | cd $(Build.SourcesDirectory)/extension - npx vsce@latest package + npx @vscode/vsce@latest package displayName: Package VSIX - task: CopyFiles@2 displayName: Copy VSIX diff --git a/extension/.vscodeignore b/extension/.vscodeignore index 6531e92c8..79f856ea3 100644 --- a/extension/.vscodeignore +++ b/extension/.vscodeignore @@ -30,3 +30,5 @@ scripts package.insiders.json jdtls.ext build-server-for-gradle +#codesign +**/CodeSignSummary-*.md diff --git a/extension/build.gradle b/extension/build.gradle index 7ac5fb03e..9b8dce80c 100644 --- a/extension/build.gradle +++ b/extension/build.gradle @@ -200,7 +200,11 @@ task prepareForBetaRelease() { task buildJdtlsPlugin(type: CrossPlatformExec) { workingDir file('./jdtls.ext') - commandLine 'mvnw', 'clean', 'package' + if (System.getProperty('os.name').toLowerCase(Locale.ROOT).contains('windows')) { + commandLine 'mvnw', 'clean', 'package' + } else { + commandLine './mvnw', 'clean', 'package' + } } task copyJdtlsPluginJar(type: Copy) { @@ -214,7 +218,11 @@ task copyJdtlsPluginJar(type: Copy) { task buildBuildServer(type: CrossPlatformExec) { workingDir file('./build-server-for-gradle') - commandLine 'gradlew', 'build', '-x', 'test' + if (System.getProperty('os.name').toLowerCase(Locale.ROOT).contains('windows')) { + commandLine 'gradlew', 'build', '-x', 'test' + } else { + commandLine './gradlew', 'build', '-x', 'test' + } } task copyBuildServerJars(type: Copy) {