73 lines
2.8 KiB
YAML
73 lines
2.8 KiB
YAML
jobs:
|
|
- ${{ each image in parameters.images }}:
|
|
- job:
|
|
dependsOn: [ 'setup' ]
|
|
displayName: ${{image.displayName}}
|
|
|
|
pool:
|
|
vmImage: ${{image.vmImage}}
|
|
|
|
variables:
|
|
currentImage: ${{image.vmImage}}
|
|
currentName: ${{image.displayName}}
|
|
codecov: $(CODECOV_TOKEN)
|
|
VERSION:
|
|
JAVA_TOOL_OPTIONS: ${{image.javaToolOptions}}
|
|
|
|
steps:
|
|
- task: Cache@2
|
|
inputs:
|
|
key: maven | $(Build.BuildId)
|
|
path: $(MAVEN_CACHE_FOLDER)
|
|
# Runs 'mvn test'
|
|
- task: Maven@3
|
|
inputs:
|
|
mavenPomFile: 'pom.xml'
|
|
options: '-pl "!org.hl7.fhir.validation.cli" -Dmaven.repo.local=$(MAVEN_CACHE_FOLDER)'
|
|
mavenOptions: '-Xmx3072m'
|
|
javaHomeOption: 'JDKVersion'
|
|
jdkVersionOption: '${{image.jdkVersion}}'
|
|
jdkArchitectureOption: 'x64'
|
|
publishJUnitResults: true
|
|
testResultsFiles: '**/surefire-reports/TEST-*.xml'
|
|
goals: 'test'
|
|
|
|
# Upload test results to codecov
|
|
- script: bash <(curl https://codecov.io/bash) -t $(codecov)
|
|
displayName: 'codecov Bash Uploader'
|
|
condition: eq(variables.currentName, 'ubuntu-latest-java-11')
|
|
|
|
# Publishes the test results to build artifacts.
|
|
- task: PublishCodeCoverageResults@1
|
|
displayName: 'Publish JaCoCo test results'
|
|
condition: eq(variables.currentName, 'ubuntu-latest-java-11')
|
|
inputs:
|
|
codeCoverageTool: 'JaCoCo'
|
|
summaryFileLocation: '$(System.DefaultWorkingDirectory)/org.hl7.fhir.report/target/site/jacoco-aggregate/jacoco.xml'
|
|
reportDirectory: '$(System.DefaultWorkingDirectory)/org.hl7.fhir.report/target/site/jacoco-aggregate/'
|
|
|
|
# Builds the CLI jar
|
|
- task: Maven@3
|
|
inputs:
|
|
mavenPomFile: 'pom.xml'
|
|
mavenOptions: '-Xmx3072m'
|
|
javaHomeOption: 'JDKVersion'
|
|
jdkVersionOption: '${{image.jdkVersion}}'
|
|
jdkArchitectureOption: 'x64'
|
|
options: '-pl org.hl7.fhir.validation.cli -Dmaven.repo.local=$(MAVEN_CACHE_FOLDER)'
|
|
publishJUnitResults: false
|
|
goals: 'install'
|
|
|
|
# Executes the CLI jar
|
|
- task: Maven@3
|
|
inputs:
|
|
mavenPomFile: 'pom.xml'
|
|
mavenOptions: '-Xmx3072m'
|
|
javaHomeOption: 'JDKVersion'
|
|
jdkVersionOption: '${{image.jdkVersion}}'
|
|
jdkArchitectureOption: 'x64'
|
|
options: '-pl org.hl7.fhir.validation.cli -Dmaven.repo.local=$(MAVEN_CACHE_FOLDER)'
|
|
publishJUnitResults: false
|
|
goals: 'exec:exec'
|
|
|