[HUDI-1620] Add azure pipelines configs (#2582)
This commit is contained in:
165
azure-pipelines.yml
Normal file
165
azure-pipelines.yml
Normal file
@@ -0,0 +1,165 @@
|
|||||||
|
# Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
|
# contributor license agreements. See the NOTICE file distributed with
|
||||||
|
# this work for additional information regarding copyright ownership.
|
||||||
|
# The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
|
# (the "License"); you may not use this file except in compliance with
|
||||||
|
# the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
branches:
|
||||||
|
include:
|
||||||
|
- '*' # must quote since "*" is a YAML reserved character; we want a string
|
||||||
|
|
||||||
|
pool:
|
||||||
|
vmImage: 'ubuntu-16.04'
|
||||||
|
|
||||||
|
variables:
|
||||||
|
MAVEN_CACHE_FOLDER: $(Pipeline.Workspace)/.m2/repository
|
||||||
|
MAVEN_OPTS: '-Dmaven.repo.local=$(MAVEN_CACHE_FOLDER)'
|
||||||
|
SPARK_VERSION: '2.4.4'
|
||||||
|
HADOOP_VERSION: '2.7'
|
||||||
|
SPARK_HOME: $(Pipeline.Workspace)/spark-$(SPARK_VERSION)-bin-hadoop$(HADOOP_VERSION)
|
||||||
|
SKIP_IT: true
|
||||||
|
|
||||||
|
stages:
|
||||||
|
- stage: test
|
||||||
|
displayName: "Run tests"
|
||||||
|
jobs:
|
||||||
|
- job: unit_tests_spark_client
|
||||||
|
steps:
|
||||||
|
- task: Maven@3
|
||||||
|
inputs:
|
||||||
|
mavenPomFile: 'pom.xml'
|
||||||
|
goals: 'clean install'
|
||||||
|
options: -DskipTests
|
||||||
|
publishJUnitResults: false
|
||||||
|
javaHomeOption: 'JDKVersion'
|
||||||
|
jdkVersionOption: '1.8'
|
||||||
|
jdkArchitectureOption: 'x64'
|
||||||
|
mavenOptions: '-Xmx2g $(MAVEN_OPTS)'
|
||||||
|
- 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'
|
||||||
|
goals: 'test'
|
||||||
|
options: -Pazp-unit-tests -pl hudi-client/hudi-spark-client
|
||||||
|
publishJUnitResults: false
|
||||||
|
testResultsFiles: '**/surefire-reports/TEST-*.xml'
|
||||||
|
testRunTitle: 'unit tests spark client'
|
||||||
|
javaHomeOption: 'JDKVersion'
|
||||||
|
jdkVersionOption: '1.8'
|
||||||
|
jdkArchitectureOption: 'x64'
|
||||||
|
mavenOptions: '-Xmx2g $(MAVEN_OPTS)'
|
||||||
|
- job: unit_tests_utilities
|
||||||
|
steps:
|
||||||
|
- task: Maven@3
|
||||||
|
inputs:
|
||||||
|
mavenPomFile: 'pom.xml'
|
||||||
|
goals: 'clean install'
|
||||||
|
options: -DskipTests
|
||||||
|
publishJUnitResults: false
|
||||||
|
javaHomeOption: 'JDKVersion'
|
||||||
|
jdkVersionOption: '1.8'
|
||||||
|
jdkArchitectureOption: 'x64'
|
||||||
|
mavenOptions: '-Xmx2g $(MAVEN_OPTS)'
|
||||||
|
- 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'
|
||||||
|
goals: 'test'
|
||||||
|
options: -Pazp-unit-tests -pl hudi-utilities
|
||||||
|
publishJUnitResults: false
|
||||||
|
testResultsFiles: '**/surefire-reports/TEST-*.xml'
|
||||||
|
testRunTitle: 'unit tests utilities'
|
||||||
|
javaHomeOption: 'JDKVersion'
|
||||||
|
jdkVersionOption: '1.8'
|
||||||
|
jdkArchitectureOption: 'x64'
|
||||||
|
mavenOptions: '-Xmx2g $(MAVEN_OPTS)'
|
||||||
|
- job: unit_tests_other_modules
|
||||||
|
steps:
|
||||||
|
- task: Maven@3
|
||||||
|
inputs:
|
||||||
|
mavenPomFile: 'pom.xml'
|
||||||
|
goals: 'clean install'
|
||||||
|
options: -DskipTests
|
||||||
|
publishJUnitResults: false
|
||||||
|
javaHomeOption: 'JDKVersion'
|
||||||
|
jdkVersionOption: '1.8'
|
||||||
|
jdkArchitectureOption: 'x64'
|
||||||
|
mavenOptions: '-Xmx2g $(MAVEN_OPTS)'
|
||||||
|
- 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'
|
||||||
|
goals: 'test'
|
||||||
|
options: -Pazp-unit-tests -pl !hudi-utilities,!hudi-client/hudi-spark-client
|
||||||
|
publishJUnitResults: false
|
||||||
|
testResultsFiles: '**/surefire-reports/TEST-*.xml'
|
||||||
|
testRunTitle: 'unit tests other modules'
|
||||||
|
javaHomeOption: 'JDKVersion'
|
||||||
|
jdkVersionOption: '1.8'
|
||||||
|
jdkArchitectureOption: 'x64'
|
||||||
|
mavenOptions: '-Xmx2g $(MAVEN_OPTS)'
|
||||||
|
- job: functional_tests
|
||||||
|
steps:
|
||||||
|
- task: Maven@3
|
||||||
|
inputs:
|
||||||
|
mavenPomFile: 'pom.xml'
|
||||||
|
goals: 'test'
|
||||||
|
options: -Pfunctional-tests
|
||||||
|
publishJUnitResults: false
|
||||||
|
testResultsFiles: '**/surefire-reports/TEST-*.xml'
|
||||||
|
testRunTitle: 'functional tests'
|
||||||
|
javaHomeOption: 'JDKVersion'
|
||||||
|
jdkVersionOption: '1.8'
|
||||||
|
jdkArchitectureOption: 'x64'
|
||||||
|
mavenOptions: '-Xmx2g $(MAVEN_OPTS)'
|
||||||
|
- job: integration_tests
|
||||||
|
condition: eq(variables.SKIP_IT, false)
|
||||||
|
steps:
|
||||||
|
- script: |
|
||||||
|
echo 'Downloading spark-$(SPARK_VERSION)-bin-hadoop$(HADOOP_VERSION)'
|
||||||
|
wget http://archive.apache.org/dist/spark/spark-$(SPARK_VERSION)/spark-$(SPARK_VERSION)-bin-hadoop$(HADOOP_VERSION).tgz -O /tmp/spark-$(SPARK_VERSION).tgz
|
||||||
|
tar -xvf /tmp/spark-$(SPARK_VERSION).tgz
|
||||||
|
mkdir /tmp/spark-events/
|
||||||
|
- task: Maven@3
|
||||||
|
inputs:
|
||||||
|
mavenPomFile: 'pom.xml'
|
||||||
|
goals: 'verify'
|
||||||
|
options: -Pintegration-tests
|
||||||
|
publishJUnitResults: false
|
||||||
|
testResultsFiles: '**/surefire-reports/TEST-*.xml'
|
||||||
|
testRunTitle: 'unit tests utilities'
|
||||||
|
javaHomeOption: 'JDKVersion'
|
||||||
|
jdkVersionOption: '1.8'
|
||||||
|
jdkArchitectureOption: 'x64'
|
||||||
|
mavenOptions: '-Xmx2g $(MAVEN_OPTS)'
|
||||||
34
pom.xml
34
pom.xml
@@ -1249,6 +1249,40 @@
|
|||||||
</plugins>
|
</plugins>
|
||||||
</build>
|
</build>
|
||||||
</profile>
|
</profile>
|
||||||
|
<profile>
|
||||||
|
<id>azp-unit-tests</id>
|
||||||
|
<properties>
|
||||||
|
<skipUTs>false</skipUTs>
|
||||||
|
<skipFTs>true</skipFTs>
|
||||||
|
<skipITs>true</skipITs>
|
||||||
|
</properties>
|
||||||
|
<build>
|
||||||
|
<plugins>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-surefire-plugin</artifactId>
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.junit.jupiter</groupId>
|
||||||
|
<artifactId>junit-jupiter-engine</artifactId>
|
||||||
|
<version>${junit.jupiter.version}</version>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
<configuration combine.self="append">
|
||||||
|
<skip>${skipUTs}</skip>
|
||||||
|
<forkedProcessExitTimeoutInSeconds>120</forkedProcessExitTimeoutInSeconds>
|
||||||
|
<excludedGroups>functional</excludedGroups>
|
||||||
|
<excludes>
|
||||||
|
<exclude>**/*FunctionalTestSuite.java</exclude>
|
||||||
|
<exclude>**/IT*.java</exclude>
|
||||||
|
<exclude>**/testsuite/**/Test*.java</exclude>
|
||||||
|
<exclude>**/TestPushGateWayReporter.java</exclude>
|
||||||
|
</excludes>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</build>
|
||||||
|
</profile>
|
||||||
<profile>
|
<profile>
|
||||||
<id>javadocs</id>
|
<id>javadocs</id>
|
||||||
<build>
|
<build>
|
||||||
|
|||||||
Reference in New Issue
Block a user