mirror of
https://gitee.com/dolphinscheduler/DolphinScheduler.git
synced 2024-11-29 18:58:05 +08:00
883 lines
40 KiB
XML
Executable File
883 lines
40 KiB
XML
Executable File
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!--
|
|
~ 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.
|
|
-->
|
|
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
<modelVersion>4.0.0</modelVersion>
|
|
<parent>
|
|
<groupId>org.apache</groupId>
|
|
<artifactId>apache</artifactId>
|
|
<version>25</version>
|
|
</parent>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler</artifactId>
|
|
<version>dev-SNAPSHOT</version>
|
|
<packaging>pom</packaging>
|
|
<name>${project.artifactId}</name>
|
|
<description>Dolphin Scheduler is a distributed and easy-to-expand visual DAG workflow scheduling system, dedicated
|
|
to solving the complex dependencies in data processing, making the scheduling system out of the box for data
|
|
processing.</description>
|
|
|
|
<modules>
|
|
<module>dolphinscheduler-bom</module>
|
|
<module>dolphinscheduler-alert</module>
|
|
<module>dolphinscheduler-spi</module>
|
|
<module>dolphinscheduler-registry</module>
|
|
<module>dolphinscheduler-task-plugin</module>
|
|
<module>dolphinscheduler-common</module>
|
|
<module>dolphinscheduler-api</module>
|
|
<module>dolphinscheduler-yarn-aop</module>
|
|
<module>dolphinscheduler-dao</module>
|
|
<module>dolphinscheduler-dist</module>
|
|
<module>dolphinscheduler-service</module>
|
|
<module>dolphinscheduler-microbench</module>
|
|
<module>dolphinscheduler-data-quality</module>
|
|
<module>dolphinscheduler-standalone-server</module>
|
|
<module>dolphinscheduler-datasource-plugin</module>
|
|
<module>dolphinscheduler-meter</module>
|
|
<module>dolphinscheduler-master</module>
|
|
<module>dolphinscheduler-worker</module>
|
|
<module>dolphinscheduler-tools</module>
|
|
<module>dolphinscheduler-ui</module>
|
|
<module>dolphinscheduler-scheduler-plugin</module>
|
|
<module>dolphinscheduler-storage-plugin</module>
|
|
<module>dolphinscheduler-extract</module>
|
|
<module>dolphinscheduler-dao-plugin</module>
|
|
<module>dolphinscheduler-authentication</module>
|
|
<module>dolphinscheduler-eventbus</module>
|
|
</modules>
|
|
|
|
<properties>
|
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
<spring.boot.version>2.6.1</spring.boot.version>
|
|
<java.version>1.8</java.version>
|
|
<junit.version>5.9.0</junit.version>
|
|
<mockito.version>3.12.4</mockito.version>
|
|
<spotbugs.version>3.1.12</spotbugs.version>
|
|
<maven-compiler-plugin.version>3.3</maven-compiler-plugin.version>
|
|
<maven-assembly-plugin.version>3.3.0</maven-assembly-plugin.version>
|
|
<maven-release-plugin.version>2.5.3</maven-release-plugin.version>
|
|
<maven-source-plugin.version>2.4</maven-source-plugin.version>
|
|
<maven-surefire-plugin.version>3.0.0-M6</maven-surefire-plugin.version>
|
|
<maven-dependency-plugin.version>3.1.1</maven-dependency-plugin.version>
|
|
<maven-shade-plugin.version>3.3.0</maven-shade-plugin.version>
|
|
<rpm-maven-plugion.version>2.2.0</rpm-maven-plugion.version>
|
|
<aspectj-maven-plugin.version>1.14.0</aspectj-maven-plugin.version>
|
|
<spotless.version>2.27.2</spotless.version>
|
|
<jacoco.version>0.8.8</jacoco.version>
|
|
<cobertura-maven-plugin.version>2.7</cobertura-maven-plugin.version>
|
|
<auto-service.version>1.0.1</auto-service.version>
|
|
<jacoco.skip>false</jacoco.skip>
|
|
<maven-jar-plugin.version>3.2.0</maven-jar-plugin.version>
|
|
<exec-maven-plugin.version>3.0.0</exec-maven-plugin.version>
|
|
<owasp-dependency-check-maven.version>10.0.2</owasp-dependency-check-maven.version>
|
|
<lombok.version>1.18.20</lombok.version>
|
|
<awaitility.version>4.2.0</awaitility.version>
|
|
<truth.version>1.4.2</truth.version>
|
|
<docker.hub>apache</docker.hub>
|
|
<docker.repo>${project.name}</docker.repo>
|
|
<docker.tag>${project.version}</docker.tag>
|
|
<docker.build.skip>true</docker.build.skip>
|
|
<docker.push.skip>true</docker.push.skip>
|
|
<skipDepCheck>true</skipDepCheck>
|
|
<build.ui.skip>true</build.ui.skip>
|
|
<build.plugins.skip>false</build.plugins.skip>
|
|
<build.assembly.skip>true</build.assembly.skip>
|
|
<spotless.skip>false</spotless.skip>
|
|
<maven.deploy.skip>true</maven.deploy.skip>
|
|
|
|
<skipUT>false</skipUT>
|
|
</properties>
|
|
|
|
<dependencyManagement>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-master</artifactId>
|
|
<version>${project.version}</version>
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>org.apache.logging.log4j</groupId>
|
|
<artifactId>log4j-to-slf4j</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>log4j</groupId>
|
|
<artifactId>log4j</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-worker</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-api</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-alert-server</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-standalone-server</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-ui</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-yarn-aop</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-common</artifactId>
|
|
<version>${project.version}</version>
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>org.apache.logging.log4j</groupId>
|
|
<artifactId>log4j-api</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>org.apache.logging.log4j</groupId>
|
|
<artifactId>log4j-to-slf4j</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-dao</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-service</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-meter</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-spi</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-data-quality</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-tools</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-alert-api</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-alert-all</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-registry-api</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-registry-all</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-scheduler-api</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-scheduler-all</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-datasource-api</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-datasource-all</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-task-api</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-task-all</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-storage-api</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-storage-all</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-extract-base</artifactId>
|
|
<version>${project.version}</version>
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>org.apache.logging.log4j</groupId>
|
|
<artifactId>log4j-api</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>org.apache.logging.log4j</groupId>
|
|
<artifactId>log4j-to-slf4j</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-extract-master</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-extract-worker</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-extract-alert</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-dao-plugin-all</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-dao-api</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-dao-h2</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-dao-mysql</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-dao-postgresql</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.dolphinscheduler</groupId>
|
|
<artifactId>dolphinscheduler-aws-authentication</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.junit</groupId>
|
|
<artifactId>junit-bom</artifactId>
|
|
<version>${junit.version}</version>
|
|
<type>pom</type>
|
|
<scope>import</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
|
|
</dependencyManagement>
|
|
|
|
<dependencies>
|
|
<!--
|
|
NOTE: only development / test phase dependencies (scope = test / provided)
|
|
that won't be packaged into final jar can be declared here.
|
|
For example: annotation processors, test dependencies that are used by most
|
|
of the submodules.
|
|
-->
|
|
<dependency>
|
|
<groupId>org.junit.jupiter</groupId>
|
|
<artifactId>junit-jupiter-api</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.junit.vintage</groupId>
|
|
<artifactId>junit-vintage-engine</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.mockito</groupId>
|
|
<artifactId>mockito-core</artifactId>
|
|
<version>${mockito.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.mockito</groupId>
|
|
<artifactId>mockito-inline</artifactId>
|
|
<version>${mockito.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.mockito</groupId>
|
|
<artifactId>mockito-junit-jupiter</artifactId>
|
|
<version>${mockito.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.jacoco</groupId>
|
|
<artifactId>org.jacoco.agent</artifactId>
|
|
<version>${jacoco.version}</version>
|
|
<classifier>runtime</classifier>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-configuration-processor</artifactId>
|
|
<version>${spring.boot.version}</version>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.google.auto.service</groupId>
|
|
<artifactId>auto-service</artifactId>
|
|
<version>${auto-service.version}</version>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.projectlombok</groupId>
|
|
<artifactId>lombok</artifactId>
|
|
<version>${lombok.version}</version>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.awaitility</groupId>
|
|
<artifactId>awaitility</artifactId>
|
|
<version>${awaitility.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.google.truth</groupId>
|
|
<artifactId>truth</artifactId>
|
|
<version>${truth.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
|
|
<build>
|
|
<pluginManagement>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>rpm-maven-plugin</artifactId>
|
|
<version>${rpm-maven-plugion.version}</version>
|
|
<inherited>false</inherited>
|
|
</plugin>
|
|
|
|
<plugin>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>aspectj-maven-plugin</artifactId>
|
|
<version>${aspectj-maven-plugin.version}</version>
|
|
<configuration>
|
|
<complianceLevel>${java.version}</complianceLevel>
|
|
<source>${java.version}</source>
|
|
<target>${java.version}</target>
|
|
<showWeaveInfo>true</showWeaveInfo>
|
|
<verbose>true</verbose>
|
|
<Xlint>ignore</Xlint>
|
|
<encoding>UTF-8</encoding>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<goals>
|
|
<goal>compile</goal>
|
|
<goal>test-compile</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<version>${maven-compiler-plugin.version}</version>
|
|
<configuration>
|
|
<source>${java.version}</source>
|
|
<target>${java.version}</target>
|
|
<testSource>${java.version}</testSource>
|
|
<testTarget>${java.version}</testTarget>
|
|
</configuration>
|
|
</plugin>
|
|
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-release-plugin</artifactId>
|
|
<version>${maven-release-plugin.version}</version>
|
|
<configuration>
|
|
<tagNameFormat>@{project.version}</tagNameFormat>
|
|
</configuration>
|
|
</plugin>
|
|
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-assembly-plugin</artifactId>
|
|
<version>${maven-assembly-plugin.version}</version>
|
|
</plugin>
|
|
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-dependency-plugin</artifactId>
|
|
<version>${maven-dependency-plugin.version}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-shade-plugin</artifactId>
|
|
<version>${maven-shade-plugin.version}</version>
|
|
<configuration>
|
|
<shadedArtifactAttached>true</shadedArtifactAttached>
|
|
<shadedClassifierName>shade</shadedClassifierName>
|
|
<createDependencyReducedPom>false</createDependencyReducedPom>
|
|
<promoteTransitiveDependencies>false</promoteTransitiveDependencies>
|
|
<filters>
|
|
<filter>
|
|
<artifact>*:*</artifact>
|
|
<excludes>
|
|
<exclude>META-INF/*.SF</exclude>
|
|
<exclude>META-INF/*.DSA</exclude>
|
|
<exclude>META-INF/*.RSA</exclude>
|
|
</excludes>
|
|
</filter>
|
|
</filters>
|
|
</configuration>
|
|
|
|
<executions>
|
|
<execution>
|
|
<goals>
|
|
<goal>shade</goal>
|
|
</goals>
|
|
<phase>package</phase>
|
|
<configuration>
|
|
<transformers combine.children="append">
|
|
<!-- The service transformer is needed to merge META-INF/services files -->
|
|
<transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer" />
|
|
</transformers>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-jar-plugin</artifactId>
|
|
<version>${maven-jar-plugin.version}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>exec-maven-plugin</artifactId>
|
|
<version>${exec-maven-plugin.version}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.owasp</groupId>
|
|
<artifactId>dependency-check-maven</artifactId>
|
|
<version>${owasp-dependency-check-maven.version}</version>
|
|
<configuration>
|
|
<skip>${skipDepCheck}</skip>
|
|
<skipProvidedScope>true</skipProvidedScope>
|
|
<skipRuntimeScope>true</skipRuntimeScope>
|
|
<skipSystemScope>true</skipSystemScope>
|
|
<failBuildOnCVSS>7</failBuildOnCVSS>
|
|
<nvdApiKeyEnvironmentVariable>NIST_NVD_API_KEY</nvdApiKeyEnvironmentVariable>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<goals>
|
|
<goal>aggregate</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</pluginManagement>
|
|
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.owasp</groupId>
|
|
<artifactId>dependency-check-maven</artifactId>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-release-plugin</artifactId>
|
|
<version>${maven-release-plugin.version}</version>
|
|
<configuration>
|
|
<autoVersionSubmodules>true</autoVersionSubmodules>
|
|
<tagNameFormat>@{project.version}</tagNameFormat>
|
|
<tagBase>${project.version}</tagBase>
|
|
</configuration>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.apache.maven.scm</groupId>
|
|
<artifactId>maven-scm-provider-jgit</artifactId>
|
|
<version>1.9.5</version>
|
|
</dependency>
|
|
</dependencies>
|
|
</plugin>
|
|
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<version>${maven-compiler-plugin.version}</version>
|
|
<configuration>
|
|
<source>${java.version}</source>
|
|
<target>${java.version}</target>
|
|
<encoding>${project.build.sourceEncoding}</encoding>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-surefire-plugin</artifactId>
|
|
<version>${maven-surefire-plugin.version}</version>
|
|
<configuration>
|
|
<skip>${skipUT}</skip>
|
|
<systemPropertyVariables>
|
|
<jacoco-agent.destfile>${project.build.directory}/jacoco.exec</jacoco-agent.destfile>
|
|
</systemPropertyVariables>
|
|
</configuration>
|
|
</plugin>
|
|
|
|
<!-- jenkins plugin jacoco report-->
|
|
<plugin>
|
|
<groupId>org.jacoco</groupId>
|
|
<artifactId>jacoco-maven-plugin</artifactId>
|
|
<version>${jacoco.version}</version>
|
|
<configuration>
|
|
<skip>${jacoco.skip}</skip>
|
|
<dataFile>${project.build.directory}/jacoco.exec</dataFile>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>default-instrument</id>
|
|
<goals>
|
|
<goal>instrument</goal>
|
|
</goals>
|
|
<configuration>
|
|
<excludes>com/github/dreamhead/moco/*</excludes>
|
|
</configuration>
|
|
</execution>
|
|
<execution>
|
|
<id>default-restore-instrumented-classes</id>
|
|
<goals>
|
|
<goal>restore-instrumented-classes</goal>
|
|
</goals>
|
|
</execution>
|
|
<execution>
|
|
<id>default-report</id>
|
|
<goals>
|
|
<goal>report</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>com.github.spotbugs</groupId>
|
|
<artifactId>spotbugs-maven-plugin</artifactId>
|
|
<version>${spotbugs.version}</version>
|
|
<configuration>
|
|
<xmlOutput>true</xmlOutput>
|
|
<threshold>medium</threshold>
|
|
<effort>default</effort>
|
|
<excludeFilterFile>dev-config/spotbugs-exclude.xml</excludeFilterFile>
|
|
<failOnError>true</failOnError>
|
|
</configuration>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>com.github.spotbugs</groupId>
|
|
<artifactId>spotbugs</artifactId>
|
|
<version>4.0.0-beta4</version>
|
|
</dependency>
|
|
</dependencies>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>com.diffplug.spotless</groupId>
|
|
<artifactId>spotless-maven-plugin</artifactId>
|
|
<version>${spotless.version}</version>
|
|
<configuration>
|
|
<skip>${spotless.skip}</skip>
|
|
<java>
|
|
<eclipse>
|
|
<file>${maven.multiModuleProjectDirectory}/style/spotless_dolphinscheduler_formatter.xml</file>
|
|
</eclipse>
|
|
<removeUnusedImports />
|
|
<licenseHeader>
|
|
<file>${maven.multiModuleProjectDirectory}/style/license-header</file>
|
|
</licenseHeader>
|
|
<importOrder>
|
|
<file>${maven.multiModuleProjectDirectory}/style/eclipse.importorder</file>
|
|
</importOrder>
|
|
<replaceRegex>
|
|
<name>Remove wildcard imports</name>
|
|
<searchRegex>import\s+(static)*\s*[^\*\s]+\*;(\r\n|\r|\n)</searchRegex>
|
|
<replacement>$1</replacement>
|
|
</replaceRegex>
|
|
<replaceRegex>
|
|
<name>Block powermock</name>
|
|
<searchRegex>import\s+org\.powermock\.[^\*\s]*(|\*);(\r\n|\r|\n)</searchRegex>
|
|
<replacement>$1</replacement>
|
|
</replaceRegex>
|
|
<replaceRegex>
|
|
<name>Block jUnit4 imports</name>
|
|
<searchRegex>import\s+org\.junit\.[^jupiter][^\*\s]*(|\*);(\r\n|\r|\n)</searchRegex>
|
|
<replacement>$1</replacement>
|
|
</replaceRegex>
|
|
<replaceRegex>
|
|
<name>Block kubernetes-client</name>
|
|
<searchRegex>import\s+io\.kubernetes\.client\.[^\*\s]*(|\*);(\r\n|\r|\n)</searchRegex>
|
|
<replacement>$1</replacement>
|
|
</replaceRegex>
|
|
<includes>
|
|
<include>src/main/java/**/*.java</include>
|
|
<include>src/test/java/**/*.java</include>
|
|
<include>dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/java/**/*.java</include>
|
|
<include>dolphinscheduler-e2e/dolphinscheduler-e2e-core/src/main/java/**/*.java</include>
|
|
<include>dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/java/**/*.java</include>
|
|
<include>dolphinscheduler-api-test/dolphinscheduler-api-test-core/src/main/java/**/*.java</include>
|
|
</includes>
|
|
<excludes>
|
|
<!-- Using customer license -->
|
|
<exclude>src/main/java/org/apache/dolphinscheduler/common/utils/CodeGenerateUtils.java</exclude>
|
|
</excludes>
|
|
</java>
|
|
<pom>
|
|
<sortPom>
|
|
<encoding>UTF-8</encoding>
|
|
<nrOfIndentSpace>4</nrOfIndentSpace>
|
|
<keepBlankLines>true</keepBlankLines>
|
|
<indentBlankLines>false</indentBlankLines>
|
|
<indentSchemaLocation>true</indentSchemaLocation>
|
|
<spaceBeforeCloseEmptyElement>true</spaceBeforeCloseEmptyElement>
|
|
<sortModules>false</sortModules>
|
|
<sortExecutions>false</sortExecutions>
|
|
<predefinedSortOrder>custom_1</predefinedSortOrder>
|
|
<expandEmptyElements>false</expandEmptyElements>
|
|
<sortProperties>false</sortProperties>
|
|
</sortPom>
|
|
<replace>
|
|
<name>Leading blank line</name>
|
|
<search>project</search>
|
|
<replacement>project</replacement>
|
|
</replace>
|
|
</pom>
|
|
<markdown>
|
|
<includes>
|
|
<include>docs/**/*.md</include>
|
|
</includes>
|
|
<excludes>
|
|
<exclude>**/.github/**/*.md</exclude>
|
|
</excludes>
|
|
<flexmark />
|
|
</markdown>
|
|
<upToDateChecking>
|
|
<enabled>true</enabled>
|
|
</upToDateChecking>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<goals>
|
|
<goal>check</goal>
|
|
</goals>
|
|
<phase>compile</phase>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>cobertura-maven-plugin</artifactId>
|
|
<version>${cobertura-maven-plugin.version}</version>
|
|
<configuration>
|
|
<check />
|
|
<aggregate>true</aggregate>
|
|
<outputDirectory>./target/cobertura</outputDirectory>
|
|
<encoding>${project.build.sourceEncoding}</encoding>
|
|
<quiet>true</quiet>
|
|
<format>xml</format>
|
|
<instrumentation>
|
|
<ignoreTrivial>true</ignoreTrivial>
|
|
</instrumentation>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<artifactId>maven-source-plugin</artifactId>
|
|
<version>${maven-source-plugin.version}</version>
|
|
<executions>
|
|
<execution>
|
|
<id>attach-sources</id>
|
|
<goals>
|
|
<goal>jar</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-dependency-plugin</artifactId>
|
|
<version>${maven-dependency-plugin.version}</version>
|
|
<executions>
|
|
<execution>
|
|
<id>analyze-dependencies</id>
|
|
<goals>
|
|
<goal>analyze-only</goal>
|
|
</goals>
|
|
<configuration>
|
|
<ignoredDependencies>
|
|
<!-- Because of SpringBoot auto-configurations, the configuration is happening outside of your application code, so Maven believes these dependencies to be unused -->
|
|
<!-- Static code analysis tools like (maven-dependency-plugin) can not detect runtime dependencies, so you should instruct them about runtime dependencies -->
|
|
<!-- https://stackoverflow.com/questions/37528928/spring-boot-core-dependencies-seen-as-unused-by-maven-dependency-plugin -->
|
|
<ignoredDependency>org.springframework*:*</ignoredDependency>
|
|
<ignoredDependency>org.apache.dolphinscheduler:dolphinscheduler-meter</ignoredDependency>
|
|
</ignoredDependencies>
|
|
<ignoreNonCompile>true</ignoreNonCompile>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
<url>https://dolphinscheduler.apache.org</url>
|
|
<mailingLists>
|
|
<mailingList>
|
|
<name>DolphinScheduler Developer List</name>
|
|
<subscribe>dev-subscribe@dolphinscheduler.apache.org</subscribe>
|
|
<unsubscribe>dev-unsubscribe@dolphinscheduler.apache.org</unsubscribe>
|
|
<post>dev@dolphinscheduler.apache.org</post>
|
|
</mailingList>
|
|
</mailingLists>
|
|
<scm>
|
|
<connection>scm:git:https://github.com/apache/dolphinscheduler.git</connection>
|
|
<developerConnection>scm:git:https://github.com/apache/dolphinscheduler.git</developerConnection>
|
|
<url>https://github.com/apache/dolphinscheduler</url>
|
|
<tag>HEAD</tag>
|
|
</scm>
|
|
|
|
<distributionManagement>
|
|
<repository>
|
|
<id>apache.releases.https</id>
|
|
<name>Apache Release Distribution Repository</name>
|
|
<url>https://repository.apache.org/service/local/staging/deploy/maven2</url>
|
|
</repository>
|
|
<snapshotRepository>
|
|
<id>apache.snapshots.https</id>
|
|
<name>Apache Development Snapshot Repository</name>
|
|
<url>https://repository.apache.org/content/repositories/snapshots</url>
|
|
</snapshotRepository>
|
|
</distributionManagement>
|
|
|
|
<profiles>
|
|
<profile>
|
|
<id>release</id>
|
|
<properties>
|
|
<build.ui.skip>false</build.ui.skip>
|
|
<build.plugins.skip>true</build.plugins.skip>
|
|
<build.assembly.skip>false</build.assembly.skip>
|
|
</properties>
|
|
</profile>
|
|
<profile>
|
|
<id>staging</id>
|
|
<properties>
|
|
<build.ui.skip>false</build.ui.skip>
|
|
<build.plugins.skip>false</build.plugins.skip>
|
|
<build.assembly.skip>false</build.assembly.skip>
|
|
</properties>
|
|
</profile>
|
|
<profile>
|
|
<id>docker</id>
|
|
<properties>
|
|
<docker.build.skip>false</docker.build.skip>
|
|
<docker.push.skip>false</docker.push.skip>
|
|
</properties>
|
|
</profile>
|
|
<profile>
|
|
<id>helm-doc</id>
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>exec-maven-plugin</artifactId>
|
|
<version>${exec-maven-plugin.version}</version>
|
|
<executions>
|
|
<execution>
|
|
<id>helm-doc</id>
|
|
<goals>
|
|
<goal>exec</goal>
|
|
</goals>
|
|
<phase>validate</phase>
|
|
<configuration>
|
|
<executable>docker</executable>
|
|
<workingDirectory>${project.basedir}</workingDirectory>
|
|
<arguments>
|
|
<argument>run</argument>
|
|
<argument>--rm</argument>
|
|
<argument>--volume</argument>
|
|
<argument>${project.basedir}/deploy/kubernetes:/helm-docs</argument>
|
|
<argument>jnorwood/helm-docs:v1.11.3</argument>
|
|
</arguments>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</profile>
|
|
</profiles>
|
|
</project>
|