Maven@1 – Maven v1 feladat
Ezzel a feladattal építhet az Apache Mavennel.
Syntax
# Maven v1
# Build with Apache Maven.
- task: Maven@1
inputs:
mavenPOMFile: 'pom.xml' # string. Required. Maven POM file. Default: pom.xml.
#goals: 'package' # string. Goal(s). Default: package.
#options: # string. Options.
# JUnit Test Results
#publishJUnitResults: true # boolean. Publish to TFS/Team Services. Default: true.
testResultsFiles: '**/TEST-*.xml' # string. Required when publishJUnitResults = true. Test Results Files. Default: **/TEST-*.xml.
#testRunTitle: # string. Optional. Use when publishJUnitResults = true. Test Run Title.
# Code Coverage
#codeCoverageToolOption: 'None' # 'None' | 'Cobertura' | 'JaCoCo'. Alias: codeCoverageTool. Code Coverage Tool. Default: None.
#codeCoverageClassFilter: # string. Alias: classFilter. Optional. Use when codeCoverageTool != None. Class Inclusion/Exclusion Filters.
#codeCoverageClassFilesDirectories: # string. Alias: classFilesDirectories. Optional. Use when codeCoverageTool = JaCoCo. Class Files Directories.
#codeCoverageSourceDirectories: # string. Alias: srcDirectories. Optional. Use when codeCoverageTool = JaCoCo. Source Files Directories.
#codeCoverageFailIfEmpty: false # boolean. Alias: failIfCoverageEmpty. Optional. Use when codeCoverageTool != None. Fail When Code Coverage Results Are Missing. Default: false.
# Advanced
javaHomeOption: 'JDKVersion' # 'JDKVersion' | 'Path'. Alias: javaHomeSelection. Required. Set JAVA_HOME by. Default: JDKVersion.
#jdkVersionOption: 'default' # 'default' | '1.9' | '1.8' | '1.7' | '1.6'. Alias: jdkVersion. Optional. Use when javaHomeSelection = JDKVersion. JDK Version. Default: default.
#jdkDirectory: # string. Alias: jdkUserInputPath. Required when javaHomeSelection = Path. JDK Path.
#jdkArchitectureOption: 'x64' # 'x86' | 'x64'. Alias: jdkArchitecture. Optional. Use when jdkVersion != default. JDK Architecture. Default: x64.
mavenVersionOption: 'Default' # 'Default' | 'Path'. Alias: mavenVersionSelection. Required. Maven Version. Default: Default.
#mavenDirectory: # string. Alias: mavenPath. Required when mavenVersionSelection = Path. Maven Path.
#mavenSetM2Home: false # boolean. Optional. Use when mavenVersionSelection = Path. Set M2_HOME variable. Default: false.
#mavenOptions: '-Xmx1024m' # string. Alias: mavenOpts. Set MAVEN_OPTS to. Default: -Xmx1024m.
#mavenAuthenticateFeed: true # boolean. Alias: mavenFeedAuthenticate. Authenticate built-in Maven feeds. Default: true.
# Code Analysis
#sonarQubeRunAnalysis: false # boolean. Alias: sqAnalysisEnabled. Run SonarQube Analysis. Default: false.
#sonarQubeServiceEndpoint: # string. Alias: sqConnectedServiceName. Required when sqAnalysisEnabled = true. SonarQube Endpoint.
#sonarQubeProjectName: # string. Alias: sqProjectName. Optional. Use when sqAnalysisEnabled = true. SonarQube Project Name.
#sonarQubeProjectKey: # string. Alias: sqProjectKey. Optional. Use when sqAnalysisEnabled = true. SonarQube Project Key.
#sonarQubeProjectVersion: # string. Alias: sqProjectVersion. Optional. Use when sqAnalysisEnabled = true. SonarQube Project Version.
#sonarQubeSpecifyDB: false # boolean. Alias: sqDbDetailsRequired. Optional. Use when sqAnalysisEnabled = true. The SonarQube server version is lower than 5.2. Default: false.
#sonarQubeDBUrl: # string. Alias: sqDbUrl. Optional. Use when sqDbDetailsRequired = true. Db Connection String.
#sonarQubeDBUsername: # string. Alias: sqDbUsername. Optional. Use when sqDbDetailsRequired = true. Db Username.
#sonarQubeDBPassword: # string. Alias: sqDbPassword. Optional. Use when sqDbDetailsRequired = true. Db User Password.
#sonarQubeIncludeFullReport: true # boolean. Alias: sqAnalysisIncludeFullReport. Optional. Use when sqAnalysisEnabled = true. Include full analysis report in the build summary (SQ 5.3+). Default: true.
#sonarQubeFailWhenQualityGateFails: # boolean. Alias: sqAnalysisBreakBuildIfQualityGateFailed. Optional. Use when sqAnalysisEnabled = true. Fail the build on quality gate failure (SQ 5.3+).
#checkStyleRunAnalysis: false # boolean. Alias: checkstyleAnalysisEnabled. Run Checkstyle. Default: false.
#pmdRunAnalysis: false # boolean. Alias: pmdAnalysisEnabled. Run PMD. Default: false.
#findBugsRunAnalysis: false # boolean. Alias: findbugsAnalysisEnabled. Run FindBugs. Default: false.
Bevitelek
mavenPOMFile
- Maven POM-fájl
string
. Kötelező. Alapértelmezett érték: pom.xml
.
Megadja az adattár gyökerétől a Maven POM-fájlhoz való relatív elérési utat.
goals
- Cél(ok)
string
. Alapértelmezett érték: package
.
options
- Lehetőségek
string
.
publishJUnitResults
- Közzététel a TFS/Team Services szolgáltatásban
boolean
. Alapértelmezett érték: true
.
Itt adhatja meg, hogy a Maven-build által létrehozott JUnit-teszteredményeket közzétehesse a TFS/Team Services szolgáltatásban. Minden teszteredmény-fájlegyeztetés Test Results Files
tesztfuttatásként lesz közzétéve a TFS/Team Servicesben.
testResultsFiles
- Teszteredmények fájljai
string
. Akkor szükséges, ha publishJUnitResults = true
. Alapértelmezett érték: **/TEST-*.xml
.
Meghatározza a közzéteendő teszteredmény-fájlok elérési útját és mintáját. Például az összes olyan XML-fájl esetében, **/TEST-*.xml
amelynek a neve a következővel TEST-
kezdődik: . Ha nincs megadva gyökérútvonal, a fájlok az alapértelmezett munkakönyvtár alatt lesznek megfeleltetve, amelynek értéke elérhető a változóban $(System.DefaultWorkingDirectory)
. Például egy érték **/TEST-*.xml
valójában egyező fájlokat eredményez a fájlból $(System.DefaultWorkingDirectory)/**/TEST-*.xml
.
testRunTitle
- Tesztfuttatás címe
string
. Választható. Használja a következőt: publishJUnitResults = true
.
Megadja a tesztfuttatás nevét.
codeCoverageToolOption
- Kódlefedettségi eszköz
Bemeneti alias: codeCoverageTool
. string
. Engedélyezett értékek: None
, Cobertura
, JaCoCo
. Alapértelmezett érték: None
.
Meghatározza a kódlefedettségi eszközt.
codeCoverageClassFilter
- Osztálybefoglalási/kizárási szűrők
Bemeneti alias: classFilter
. string
. Választható. Használja a következőt: codeCoverageTool != None
.
A szűrők vesszővel tagolt listáját adja meg, amely tartalmazza vagy kizárja az osztályokat a kódlefedettség gyűjtéséből. Például: +:com.*,+:org.*,-:my.app*.*
.
codeCoverageClassFilesDirectories
- Osztályfájlok könyvtárai
Bemeneti alias: classFilesDirectories
. string
. Választható. Használja a következőt: codeCoverageTool = JaCoCo
.
Ez a mező egy többmodulos projekthez szükséges.
A Maven POM-fájltól az osztályfájlokat és archív fájlokat (JAR, WAR stb.) tartalmazó könyvtárakhoz tartozó relatív elérési utak vesszővel tagolt listáját adja meg. A kódlefedettség az ezekben a könyvtárakban lévő osztályfájlokra vonatkozik. Például: target/classes,target/testClasses
.
codeCoverageSourceDirectories
- Forrásfájlok címtárai
Bemeneti alias: srcDirectories
. string
. Választható. Használja a következőt: codeCoverageTool = JaCoCo
.
Ez a mező egy többmodulos projekthez szükséges.
Vesszővel elválasztott listát ad meg a Maven POM-fájltól a forráskódkönyvtárakig. A kódlefedettségi jelentések ezeket használják a forráskód kiemeléséhez. Például: src/java,src/Test
.
codeCoverageFailIfEmpty
- Sikertelen, ha a kódlefedettségi eredmények hiányoznak
Bemeneti alias: failIfCoverageEmpty
. boolean
. Választható. Használja a következőt: codeCoverageTool != None
. Alapértelmezett érték: false
.
Sikertelen a buildelés, ha a kódlefedettség nem eredményezett közzétételi eredményt.
javaHomeOption
- JAVA_HOME beállítása
Bemeneti alias: javaHomeSelection
. string
. Kötelező. Engedélyezett értékek: JDKVersion
(JDK-verzió), Path
. Alapértelmezett érték: JDKVersion
.
Beállíthat JAVA_HOME
egy JDK-verziót, amely a buildek során lesz felderítve, vagy manuálisan adja meg a JDK elérési útját.
jdkVersionOption
- JDK-verzió
Bemeneti alias: jdkVersion
. string
. Választható. Használja a következőt: javaHomeSelection = JDKVersion
. Engedélyezett értékek: default
, 1.9
(JDK 9), 1.8
(JDK 8), 1.7
(JDK 7), 1.6
(JDK 6). Alapértelmezett érték: default
.
Megpróbálja felderíteni a kijelölt JDK-verzió elérési útját, és ennek megfelelően állítja be JAVA_HOME
.
jdkDirectory
- JDK elérési útja
Bemeneti alias: jdkUserInputPath
. string
. Akkor szükséges, ha javaHomeSelection = Path
.
A megadott útvonalra van adva JAVA_HOME
.
jdkArchitectureOption
- JDK-architektúra
Bemeneti alias: jdkArchitecture
. string
. Választható. Használja a következőt: jdkVersion != default
. Engedélyezett értékek: x86
, x64
. Alapértelmezett érték: x64
.
A JDK architektúráját (x86
, x64
) biztosítja.
mavenVersionOption
- Maven-verzió
Bemeneti alias: mavenVersionSelection
. string
. Kötelező. Engedélyezett értékek: Default
, Path
(Egyéni elérési út). Alapértelmezett érték: Default
.
Az alapértelmezett Maven-verziót vagy a megadott egyéni útvonalon lévő verziót használja.
mavenDirectory
- Maven elérési útja
Bemeneti alias: mavenPath
. string
. Akkor szükséges, ha mavenVersionSelection = Path
.
Megadja az egyéni útvonalat a Maven-telepítéshez (például: /usr/share/maven
).
mavenSetM2Home
- M2_HOME változó beállítása
boolean
. Választható. Használja a következőt: mavenVersionSelection = Path
. Alapértelmezett érték: false
.
Beállítja a M2_HOME
változót egy egyéni Maven telepítési útvonalra.
mavenOptions
- Állítsa MAVEN_OPTS értékre
Bemeneti alias: mavenOpts
. string
. Alapértelmezett érték: -Xmx1024m
.
Beállítja a MAVEN_OPTS
környezeti változót, amely parancssori argumentumok küldésére szolgál a JVM elindításához. A -Xmx
jelölő megadja a JVM számára elérhető maximális memóriamennyiséget.
mavenAuthenticateFeed
- Beépített Maven-hírcsatornák hitelesítése
Bemeneti alias: mavenFeedAuthenticate
. boolean
. Alapértelmezett érték: true
.
Automatikus hitelesítés az Azure Artifacts-hírcsatornákkal. Ha az Artifacts-hírcsatornák nincsenek használatban, törölje a beállítás kijelölését a gyorsabb buildelés érdekében.
sonarQubeRunAnalysis
- A SonarQube Analysis futtatása
Bemeneti alias: sqAnalysisEnabled
. boolean
. Alapértelmezett érték: false
.
SonarQube-elemzést futtat az aktuális célok végrehajtása után. install
vagy package
a célokat kell először végrehajtani.
sonarQubeServiceEndpoint
- SonarQube-végpont
Bemeneti alias: sqConnectedServiceName
. string
. Akkor szükséges, ha sqAnalysisEnabled = true
.
A SonarQube-kiszolgáló általános végpontját adja meg.
sonarQubeProjectName
- SonarQube-projekt neve
Bemeneti alias: sqProjectName
. string
. Választható. Használja a következőt: sqAnalysisEnabled = true
.
Megadja például a SonarQube projekt nevét sonar.projectName
.
sonarQubeProjectKey
- SonarQube projektkulcs
Bemeneti alias: sqProjectKey
. string
. Választható. Használja a következőt: sqAnalysisEnabled = true
.
A SonarQube projekt egyedi kulcsát adja meg, például sonar.projectKey
: .
sonarQubeProjectVersion
- SonarQube Project-verzió
Bemeneti alias: sqProjectVersion
. string
. Választható. Használja a következőt: sqAnalysisEnabled = true
.
Megadja például a SonarQube projektverziót sonar.projectVersion
.
sonarQubeSpecifyDB
- A SonarQube-kiszolgáló verziója alacsonyabb, mint 5.2
Bemeneti alias: sqDbDetailsRequired
. boolean
. Választható. Használja a következőt: sqAnalysisEnabled = true
. Alapértelmezett érték: false
.
Ha a SonarQube-kiszolgáló 5.1-s vagy újabb verziójával rendelkezik, meg kell adnia az adatbázis-kapcsolat részleteit.
sonarQubeDBUrl
- Adatbázis kapcsolati sztringje
Bemeneti alias: sqDbUrl
. string
. Választható. Használja a következőt: sqDbDetailsRequired = true
.
Csak a SonarQube server 5.1-hez és alacsonyabbhoz használható.
Megadja az adatbázis-kapcsolat beállítását (például sonar.jdbc.url
vagy jdbc:jtds:sqlserver://localhost/sonar;SelectMethod=Cursor
).
sonarQubeDBUsername
- Adatbázis-felhasználónév
Bemeneti alias: sqDbUsername
. string
. Választható. Használja a következőt: sqDbDetailsRequired = true
.
Csak a SonarQube server 5.1-hez és alacsonyabbhoz használható.
Megadja az adatbázis-felhasználó felhasználónevét (például sonar.jdbc.username
: ).
sonarQubeDBPassword
- Adatbázis felhasználói jelszava
Bemeneti alias: sqDbPassword
. string
. Választható. Használja a következőt: sqDbDetailsRequired = true
.
Csak a SonarQube server 5.1-hez és alacsonyabbhoz használható.
Megadja az adatbázis-felhasználó jelszavát (például sonar.jdbc.password
: ).
sonarQubeIncludeFullReport
- Teljes elemzési jelentés belefoglalása a buildösszegzésbe (SQ 5.3+)
Bemeneti alias: sqAnalysisIncludeFullReport
. boolean
. Választható. Használja a következőt: sqAnalysisEnabled = true
. Alapértelmezett érték: true
.
Ez a beállítás késlelteti a buildelést, amíg a SonarQube-elemzés be nem fejeződik.
sonarQubeFailWhenQualityGateFails
- Sikertelen buildelés a minőségi kapun (SQ 5.3+)
Bemeneti alias: sqAnalysisBreakBuildIfQualityGateFailed
. boolean
. Választható. Használja a következőt: sqAnalysisEnabled = true
.
Ez a lehetőség csak az 5.3-s vagy újabb SonarQube-kiszolgáló használatakor érhető el. Késéseket vezet be, mivel a buildnek várnia kell, amíg a SonarQube elvégzi az elemzést. További információ a SonarQube minőségi kapukról.
checkStyleRunAnalysis
- Checkstyle futtatása
Bemeneti alias: checkstyleAnalysisEnabled
. boolean
. Alapértelmezett érték: false
.
Az alapértelmezett Sun-ellenőrzésekkel futtatja a Checkstyle eszközt. Az eredmények buildösszetevőkként lesznek feltöltve.
pmdRunAnalysis
- A PMD futtatása
Bemeneti alias: pmdAnalysisEnabled
. boolean
. Alapértelmezett érték: false
.
A PMD statikus elemző eszközzel megkeresi a kód hibáit. Az eredmények buildösszetevőkként lesznek feltöltve.
findBugsRunAnalysis
- Kereséskeresések futtatása
Bemeneti alias: findbugsAnalysisEnabled
. boolean
. Alapértelmezett érték: false
.
A FindBugs statikus elemző eszközzel megkeresi a kódban található hibákat. Az eredmények buildösszetevőkként lesznek feltöltve.
Tevékenységvezérlési beállítások
A tevékenységbemeneteken kívül minden tevékenység rendelkezik vezérlési lehetőségekkel. További információ: Vezérlési beállítások és gyakori feladattulajdonságok.
Kimeneti változók
Nincsenek.
Követelmények
Követelmény | Leírás |
---|---|
Folyamattípusok | YAML, klasszikus build, klasszikus kiadás |
Futtatás: | Ügynök, DeploymentGroup |
Igények | A saját üzemeltetésű ügynököknek olyan képességekkel kell rendelkezniük , amelyek megfelelnek a következő követelményeknek a feladatot használó feladatok futtatásához: maven |
Képességek | Ez a feladat nem felel meg a feladat későbbi tevékenységeire vonatkozó követelményeknek. |
Parancskorlátozások | Bármelyik |
Változók beállítása | Bármelyik |
Ügynök verziója | 1.89.0 vagy újabb |
Feladatkategória | Létrehozás |