1+ jobs :
2+ - job : " TestLinux"
3+ displayName : ' Test java worker - Linux'
4+
5+ pool :
6+ name : 1es-pool-azfunc
7+ image : 1es-ubuntu-22.04
8+ os : linux
9+
10+ variables :
11+ buildNumber : $[ stageDependencies.Build.Build.outputs['output.buildNumber'] ]
12+ ApplicationInsightAgentVersion : 3.5.1
13+
14+ strategy :
15+ maxParallel : 1
16+ matrix :
17+ open-jdk-8-linux :
18+ JDK_DOWNLOAD_LINK : ' https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u392-b08/OpenJDK8U-jdk_x64_linux_hotspot_8u392b08.tar.gz'
19+ JAVA_VERSION : ' OpenJDK8U-jdk_x64_linux_hotspot_8u392b08'
20+ JDK_PATH : ' jdk8u392-b08'
21+ JAVA_VERSION_SPEC : ' 8'
22+ microsoft-open-jdk-11-linux :
23+ JDK_DOWNLOAD_LINK : ' https://aka.ms/download-jdk/microsoft-jdk-11.0.21-linux-x64.tar.gz'
24+ JAVA_VERSION : ' microsoft-jdk-11.0.21-linux-x64'
25+ JDK_PATH : ' jdk-11.0.21+9'
26+ JAVA_VERSION_SPEC : ' 11'
27+ microsoft-open-jdk-17-linux :
28+ JDK_DOWNLOAD_LINK : ' https://aka.ms/download-jdk/microsoft-jdk-17.0.9-linux-x64.tar.gz'
29+ JAVA_VERSION : ' microsoft-jdk-17.0.9-linux-x64'
30+ JDK_PATH : ' jdk-17.0.9+8'
31+ JAVA_VERSION_SPEC : ' 17'
32+ microsoft-open-jdk-21-linux :
33+ JDK_DOWNLOAD_LINK : ' https://aka.ms/download-jdk/microsoft-jdk-21.0.1-linux-x64.tar.gz'
34+ JAVA_VERSION : ' microsoft-jdk-21.0.1-linux-x64'
35+ JDK_PATH : ' jdk-21.0.1+12'
36+ JAVA_VERSION_SPEC : ' 21'
37+
38+ steps :
39+ - task : NuGetToolInstaller@1
40+ inputs :
41+ checkLatest : true
42+ displayName : ' Install NuGet Tool'
43+ - pwsh : |
44+ Get-Command mvn
45+ displayName: 'Check Maven is installed'
46+ - task : JavaToolInstaller@0 # This step is necessary as Linux image has Java 11 as default
47+ inputs :
48+ versionSpec : ' 8'
49+ jdkArchitectureOption : ' x64'
50+ jdkSourceOption : ' PreInstalled'
51+ displayName : ' Setup Java for Linux'
52+ - pwsh : |
53+ java -version
54+ displayName: 'Check default java version'
55+ - pwsh : |
56+ .\package-pipeline.ps1 -buildNumber $(buildNumber)
57+ displayName: 'Executing build script'
58+ - task : UseDotNet@2
59+ displayName : ' Install .NET 6'
60+ inputs :
61+ version : 6.0.x
62+ - pwsh : | # Download JDK for later installation
63+ Invoke-WebRequest $(JDK_DOWNLOAD_LINK) -OutFile "$(JAVA_VERSION).tar.gz"
64+ $current = get-location | select -ExpandProperty Path
65+ Write-Host "##vso[task.setvariable variable=downloadPath;]$current"
66+ displayName: 'Download jdk for Linux'
67+ - task : JavaToolInstaller@0 # Install JDK downloaded from previous task
68+ inputs :
69+ versionSpec : $(JAVA_VERSION_SPEC)
70+ jdkArchitectureOption : ' x64'
71+ jdkSourceOption : LocalDirectory
72+ jdkFile : " $(downloadPath)/$(JAVA_VERSION).tar.gz"
73+ jdkDestinationDirectory : " $(downloadPath)/externals"
74+ cleanDestinationDirectory : true
75+ displayName : ' Setup Java for Linux'
76+ - pwsh : |
77+ .\setup-tests-pipeline.ps1
78+ displayName: 'Setup test environment -- Install the Core Tools'
79+ - bash : |
80+ chmod +x ./Azure.Functions.Cli/func
81+ chmod +x ./Azure.Functions.Cli/gozip
82+ export PATH=$PATH:./Azure.Functions.Cli
83+ func --version
84+ displayName: 'Setup Core Tools - Linux'
85+ - pwsh : |
86+ cd ./endtoendtests
87+ mvn clean package `-Dmaven`.javadoc`.skip=true `-Dmaven`.test`.skip `-Dorg`.slf4j`.simpleLogger`.log`.org`.apache`.maven`.cli`.transfer`.Slf4jMavenTransferListener=warn `-B
88+ Copy-Item "confluent_cloud_cacert.pem" "./target/azure-functions/azure-functions-java-endtoendtests"
89+ displayName: 'Package Java for E2E'
90+ - task : DotNetCoreCLI@2
91+ inputs :
92+ command : ' test'
93+ projects : |
94+ endtoendtests/Azure.Functions.Java.Tests.E2E/Azure.Functions.Java.Tests.E2E/Azure.Functions.Java.Tests.E2E.csproj
95+ env :
96+ JAVA_HOME : $(JavaHome)
97+ AzureWebJobsStorage : $(AzureWebJobsStorage)
98+ AzureWebJobsCosmosDBConnectionString : $(AzureWebJobsCosmosDBConnectionString)
99+ AzureWebJobsSqlConnectionString : $(AzureWebJobsSqlConnectionString)
100+ AzureWebJobsServiceBus : $(AzureWebJobsServiceBus)
101+ AzureWebJobsEventHubReceiver : $(AzureWebJobsEventHubReceiver)
102+ AzureWebJobsEventHubSender_2 : $(AzureWebJobsEventHubSender_2)
103+ AzureWebJobsEventHubSender : $(AzureWebJobsEventHubSender)
104+ AzureWebJobsEventHubPath : $(AzureWebJobsEventHubPath)
105+ SBTopicName : $(SBTopicName)
106+ SBTopicSubName : $(SBTopicSubName)
107+ CosmosDBDatabaseName : $(CosmosDBDatabaseName)
108+ SBQueueName : $(SBQueueName)
109+ BrokerList" : $(BrokerList)
110+ ConfluentCloudUsername : $(ConfluentCloudUsername)
111+ ConfluentCloudPassword : $(ConfluentCloudPassword)
112+ AzureWebJobsEventGridOutputBindingTopicUriString : $(AzureWebJobsEventGridOutputBindingTopicUriString)
113+ AzureWebJobsEventGridOutputBindingTopicKeyString : $(AzureWebJobsEventGridOutputBindingTopicKeyString)
114+ ApplicationInsightAPIKey : $(ApplicationInsightAPIKey)
115+ ApplicationInsightAPPID : $(ApplicationInsightAPPID)
116+ ApplicationInsightAgentVersion : $(ApplicationInsightAgentVersion)
117+ displayName : ' Build & Run tests'
118+ continueOnError : false
0 commit comments