55 lines
1.5 KiB
YAML
55 lines
1.5 KiB
YAML
# Maven
|
|
# Build your Java project and run tests with Apache Maven.
|
|
# Add steps that analyze code, save build artifacts, deploy, and more:
|
|
# https://docs.microsoft.com/azure/devops/pipelines/languages/java
|
|
|
|
trigger:
|
|
- master
|
|
|
|
variables:
|
|
MAVEN_CACHE_FOLDER: $(Pipeline.Workspace)/.m2/repository
|
|
MAVEN_OPTS: '-Dmaven.repo.local=$(MAVEN_CACHE_FOLDER)'
|
|
|
|
pool:
|
|
vmImage: 'ubuntu-latest'
|
|
|
|
steps:
|
|
- task: Cache@2
|
|
inputs:
|
|
key: 'maven | "$(Agent.OS)" | **/pom.xml'
|
|
restoreKeys: |
|
|
maven | "$(Agent.OS)"
|
|
maven
|
|
path: $(MAVEN_CACHE_FOLDER)
|
|
displayName: Cache Maven local repo
|
|
- task: Maven@3
|
|
inputs:
|
|
mavenPomFile: 'pom.xml'
|
|
options: '-Dmaven.test.skip=true -Dmaven.repo.local=$(MAVEN_CACHE_FOLDER)'
|
|
publishJUnitResults: false
|
|
javaHomeOption: 'JDKVersion'
|
|
mavenVersionOption: 'Default'
|
|
mavenAuthenticateFeed: false
|
|
effectivePomSkip: false
|
|
sonarQubeRunAnalysis: false
|
|
- task: CopyFiles@2
|
|
inputs:
|
|
SourceFolder: '$(system.defaultworkingdirectory)'
|
|
Contents: |
|
|
**/*.jar
|
|
Dockerfile
|
|
kubernetes/*
|
|
TargetFolder: '$(build.artifactstagingdirectory)'
|
|
|
|
- task: PublishPipelineArtifact@1
|
|
inputs:
|
|
targetPath: '$(build.artifactstagingdirectory)'
|
|
artifact: 'target'
|
|
publishLocation: 'pipeline'
|
|
|
|
- task: Docker@2
|
|
inputs:
|
|
containerRegistry: 'myEventstormingRegistry'
|
|
repository: 'order'
|
|
command: 'buildAndPush'
|
|
Dockerfile: '**/Dockerfile' |