| <?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> |
| |
| <groupId>org.apache.skywalking</groupId> |
| <artifactId>apm</artifactId> |
| <version>6.5.0</version> |
| |
| <parent> |
| <groupId>org.apache</groupId> |
| <artifactId>apache</artifactId> |
| <version>21</version> |
| <relativePath /> |
| </parent> |
| |
| <modules> |
| <module>apm-commons</module> |
| <module>apm-protocol</module> |
| </modules> |
| <packaging>pom</packaging> |
| |
| <name>apm</name> |
| <url>https://github.com/apache/skywalking</url> |
| |
| <scm> |
| <url>https://github.com/apache/skywalking</url> |
| <connection>scm:git:https://github.com/apache/skywalking.git</connection> |
| <developerConnection>scm:git:https://github.com/apache/skywalking.git</developerConnection> |
| <tag>v6.5.0</tag> |
| </scm> |
| |
| <issueManagement> |
| <system>GitHub</system> |
| <url>https://github.com/apache/skywalking/issues</url> |
| </issueManagement> |
| |
| <licenses> |
| <license> |
| <name>The Apache Software License, Version 2.0</name> |
| <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> |
| </license> |
| </licenses> |
| |
| <mailingLists> |
| <mailingList> |
| <name>SkyWalking Developer List</name> |
| <post>dev@skywalking.apache.org</post> |
| <subscribe>dev-subscribe@skywalking.apache.org</subscribe> |
| <unsubscribe>dev-unsubscribe@skywalking.apache.org</unsubscribe> |
| </mailingList> |
| <mailingList> |
| <name>SkyWalking Commits</name> |
| <post>commits@skywalking.apache.org</post> |
| <subscribe>commits-subscribe@skywalking.apache.org</subscribe> |
| <unsubscribe>commits-unsubscribe@skywalking.apache.org</unsubscribe> |
| </mailingList> |
| </mailingLists> |
| |
| <profiles> |
| <profile> |
| <id>agent</id> |
| <activation> |
| <activeByDefault>true</activeByDefault> |
| </activation> |
| <modules> |
| <module>apm-sniffer</module> |
| <module>apm-application-toolkit</module> |
| </modules> |
| </profile> |
| <profile> |
| <id>backend</id> |
| <activation> |
| <activeByDefault>true</activeByDefault> |
| </activation> |
| <modules> |
| <module>oap-server</module> |
| </modules> |
| </profile> |
| <profile> |
| <id>ui</id> |
| <activation> |
| <activeByDefault>true</activeByDefault> |
| </activation> |
| <modules> |
| <module>apm-webapp</module> |
| </modules> |
| </profile> |
| <profile> |
| <id>dist</id> |
| <activation> |
| <activeByDefault>true</activeByDefault> |
| </activation> |
| <modules> |
| <module>apm-dist</module> |
| </modules> |
| </profile> |
| <profile> |
| <id>all</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <modules> |
| <module>apm-sniffer</module> |
| <module>apm-application-toolkit</module> |
| <module>oap-server</module> |
| <module>apm-webapp</module> |
| <module>apm-dist</module> |
| </modules> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>exec-maven-plugin</artifactId> |
| <version>${exec-maven-plugin.version}</version> |
| <executions> |
| <execution> |
| <id>git submodule update</id> |
| <phase>initialize</phase> |
| <inherited>false</inherited> |
| <configuration> |
| <executable>git</executable> |
| <arguments> |
| <argument>submodule</argument> |
| <argument>update</argument> |
| <argument>--init</argument> |
| <argument>--recursive</argument> |
| </arguments> |
| </configuration> |
| <goals> |
| <goal>exec</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| <profile> |
| <id>CI-with-IT</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-failsafe-plugin</artifactId> |
| <executions> |
| <execution> |
| <goals> |
| <goal>integration-test</goal> |
| <goal>verify</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| </profiles> |
| |
| <properties> |
| <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> |
| <compiler.version>1.8</compiler.version> |
| <powermock.version>1.6.4</powermock.version> |
| <checkstyle.version>6.18</checkstyle.version> |
| <junit.version>4.12</junit.version> |
| <mockito-all.version>1.10.19</mockito-all.version> |
| |
| <!-- Plugin versions --> |
| <docker.plugin.version>0.4.13</docker.plugin.version> |
| <takari-maven-plugin.version>0.6.1</takari-maven-plugin.version> |
| <exec-maven-plugin.version>1.6.0</exec-maven-plugin.version> |
| <maven-antrun-plugin.version>1.8</maven-antrun-plugin.version> |
| <maven-deploy-plugin.version>2.8.2</maven-deploy-plugin.version> |
| <maven-assembly-plugin.version>3.1.0</maven-assembly-plugin.version> |
| <maven-failsafe-plugin.version>2.22.0</maven-failsafe-plugin.version> |
| <maven-surefire-plugin.version>2.22.0</maven-surefire-plugin.version> |
| <maven-jar-plugin.version>3.1.0</maven-jar-plugin.version> |
| <maven-shade-plugin.version>3.1.1</maven-shade-plugin.version> |
| <maven-enforcer-plugin.version>3.0.0-M2</maven-enforcer-plugin.version> |
| <apache-rat-plugin.version>0.12</apache-rat-plugin.version> |
| <maven-compiler-plugin.version>3.8.0</maven-compiler-plugin.version> |
| <maven-resource-plugin.version>3.1.0</maven-resource-plugin.version> |
| <maven-source-plugin.version>3.0.1</maven-source-plugin.version> |
| <versions-maven-plugin.version>2.5</versions-maven-plugin.version> |
| <coveralls-maven-plugin.version>4.3.0</coveralls-maven-plugin.version> |
| <maven-checkstyle-plugin.version>3.1.0</maven-checkstyle-plugin.version> |
| <jmh.version>1.21</jmh.version> |
| <gmaven-plugin.version>1.5</gmaven-plugin.version> |
| <cobertura-maven-plugin.version>2.7</cobertura-maven-plugin.version> |
| </properties> |
| |
| <dependencies> |
| <dependency> |
| <groupId>junit</groupId> |
| <artifactId>junit</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.mockito</groupId> |
| <artifactId>mockito-all</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.powermock</groupId> |
| <artifactId>powermock-module-junit4</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.powermock</groupId> |
| <artifactId>powermock-api-mockito</artifactId> |
| <scope>test</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.openjdk.jmh</groupId> |
| <artifactId>jmh-core</artifactId> |
| <version>${jmh.version}</version> |
| <scope>test</scope> |
| </dependency> |
| </dependencies> |
| |
| <dependencyManagement> |
| <dependencies> |
| <dependency> |
| <groupId>junit</groupId> |
| <artifactId>junit</artifactId> |
| <version>${junit.version}</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.mockito</groupId> |
| <artifactId>mockito-all</artifactId> |
| <version>${mockito-all.version}</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.powermock</groupId> |
| <artifactId>powermock-module-junit4</artifactId> |
| <version>${powermock.version}</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.powermock</groupId> |
| <artifactId>powermock-api-mockito</artifactId> |
| <version>${powermock.version}</version> |
| <scope>test</scope> |
| </dependency> |
| </dependencies> |
| </dependencyManagement> |
| |
| <build> |
| <pluginManagement> |
| <plugins> |
| <!-- mvn -N io.takari:maven:wrapper -Dmaven=3.5.4 --> |
| <plugin> |
| <groupId>io.takari</groupId> |
| <artifactId>maven</artifactId> |
| <version>${takari-maven-plugin.version}</version> |
| </plugin> |
| <plugin> |
| <artifactId>maven-antrun-plugin</artifactId> |
| <version>${maven-antrun-plugin.version}</version> |
| </plugin> |
| <plugin> |
| <artifactId>maven-deploy-plugin</artifactId> |
| <version>${maven-deploy-plugin.version}</version> |
| </plugin> |
| <plugin> |
| <artifactId>maven-assembly-plugin</artifactId> |
| <version>${maven-assembly-plugin.version}</version> |
| </plugin> |
| <plugin> |
| <artifactId>maven-failsafe-plugin</artifactId> |
| <version>${maven-failsafe-plugin.version}</version> |
| </plugin> |
| <plugin> |
| <artifactId>maven-jar-plugin</artifactId> |
| <version>${maven-jar-plugin.version}</version> |
| </plugin> |
| <plugin> |
| <artifactId>maven-shade-plugin</artifactId> |
| <version>${maven-shade-plugin.version}</version> |
| </plugin> |
| <!-- |
| maven-surefire-plugin will exclude integration tests (ITs) |
| and leave them for maven-failsafe-plugin to run, which is bound to the `verify` goal. |
| If you want to run the ITs please activate the CI-with-IT profile |
| as well as the the profiles of the modules whose ITs you want to run. |
| e.g. you want to run the ITs in oap-server, run `./mvnw -Pbackend,CI-with-IT clean verify` |
| --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <version>${maven-surefire-plugin.version}</version> |
| <configuration> |
| <excludes> |
| <exclude>IT*.class</exclude> |
| </excludes> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>io.fabric8</groupId> |
| <artifactId>docker-maven-plugin</artifactId> |
| <version>${maven-docker-plugin.version}</version> |
| <configuration> |
| <containerNamePattern>%a-%t-%i</containerNamePattern> |
| </configuration> |
| </plugin> |
| </plugins> |
| </pluginManagement> |
| <plugins> |
| <plugin> |
| <artifactId>maven-enforcer-plugin</artifactId> |
| <version>${maven-enforcer-plugin.version}</version> |
| <executions> |
| <execution> |
| <id>enforce-java</id> |
| <goals> |
| <goal>enforce</goal> |
| </goals> |
| <configuration> |
| <rules> |
| <requireJavaVersion> |
| <!-- Build has not yet been updated for Java 9+ --> |
| <version>1.8</version> |
| </requireJavaVersion> |
| </rules> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.rat</groupId> |
| <artifactId>apache-rat-plugin</artifactId> |
| <version>${apache-rat-plugin.version}</version> |
| <configuration> |
| <excludes> |
| <exclude>**/target/**</exclude> |
| <exclude>**/licenses/**</exclude> |
| <exclude>**/ui-licenses/**</exclude> |
| <exclude>**/codeStyle.xml</exclude> |
| |
| <!-- IDE files --> |
| <exclude>**/*.iml</exclude> |
| <exclude>**/.idea/**</exclude> |
| <exclude>**/*.classpath</exclude> |
| <exclude>**/.project</exclude> |
| <exclude>**/.settings/**</exclude> |
| <exclude>**/dependency-reduced-pom.xml</exclude> |
| |
| <!-- UI IDE configs --> |
| <exclude>**/skywalking-ui/.editorconfig</exclude> |
| <!-- UI ignore --> |
| <exclude>**/skywalking-ui/.browserslistrc</exclude> |
| |
| <!-- git files --> |
| <exclude>**/.gitignore</exclude> |
| <exclude>**/.gitmodules</exclude> |
| <exclude>**/.git/**</exclude> |
| |
| <!-- CI files --> |
| <exclude>**/.travis.yml</exclude> |
| |
| <!-- GitHub files --> |
| <exclude>**/.github/**</exclude> |
| |
| <!-- document files --> |
| <exclude>**/*.md</exclude> |
| <excldue>**/*.MD</excldue> |
| <exclude>**/*.txt</exclude> |
| <exclude>**/docs/**</exclude> |
| |
| <!-- Test cases data in JSON format --> |
| <exclude>**/src/test/resources/json/*.json</exclude> |
| |
| <!-- front end libary and generated files --> |
| <exclude>**/skywalking-ui/node_modules/**</exclude> |
| <exclude>**/skywalking-ui/node/**</exclude> |
| <exclude>**/skywalking-ui/dist/**</exclude> |
| |
| <!-- web UI dependencies descriptions --> |
| <exclude>skywalking-ui/package.json</exclude> |
| <exclude>skywalking-ui/package-lock.json</exclude> |
| |
| <!-- Proto files of Istio, envoy, prometheus and gogoproto projects --> |
| <exclude>**/src/main/proto/envoy/**</exclude> |
| <exclude>**/src/main/proto/gogoproto/gogo.proto</exclude> |
| <exclude>**/src/main/proto/google/**</exclude> |
| <exclude>**/src/main/proto/istio/**</exclude> |
| <exclude>**/src/main/proto/jaeger/**</exclude> |
| <exclude>**/src/main/proto/policy/**</exclude> |
| <exclude>**/src/main/proto/prometheus/client_model/metrics.proto</exclude> |
| <exclude>**/src/main/proto/protoc-gen-swagger/**</exclude> |
| <exclude>**/src/main/proto/validate/validate.proto</exclude> |
| |
| <!-- generated file from oal grammar and rt template --> |
| <exclude>**/src/main/antlr4/org/apache/skywalking/oal/rt/grammar/OALLexer.tokens</exclude> |
| <exclude>**/src/main/resources/code-templates/*/*.ftl</exclude> |
| |
| <!-- Maven Wrapper generated files --> |
| <exclude>.mvn/wrapper/maven-wrapper.properties</exclude> |
| <exclude>tools/dependencies/known-oap-backend-dependencies.txt</exclude> |
| <exclude>apm-checkstyle/CHECKSTYLE_HEAD</exclude> |
| |
| <exclude>.m2/**</exclude> |
| </excludes> |
| </configuration> |
| <executions> |
| <execution> |
| <phase>verify</phase> |
| <goals> |
| <goal>check</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <artifactId>maven-compiler-plugin</artifactId> |
| <version>${maven-compiler-plugin.version}</version> |
| <configuration> |
| <source>${compiler.version}</source> |
| <target>${compiler.version}</target> |
| <encoding>${project.build.sourceEncoding}</encoding> |
| </configuration> |
| </plugin> |
| <plugin> |
| <artifactId>maven-resources-plugin</artifactId> |
| <version>${maven-resource-plugin.version}</version> |
| <configuration> |
| <encoding>${project.build.sourceEncoding}</encoding> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>com.spotify</groupId> |
| <artifactId>docker-maven-plugin</artifactId> |
| <version>${docker.plugin.version}</version> |
| <configuration> |
| <skipDocker>true</skipDocker> |
| </configuration> |
| </plugin> |
| <plugin> |
| <artifactId>maven-source-plugin</artifactId> |
| <version>${maven-source-plugin.version}</version> |
| <executions> |
| <execution> |
| <id>attach-sources</id> |
| <phase>none</phase> |
| <goals> |
| <goal>jar</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.eluder.coveralls</groupId> |
| <artifactId>coveralls-maven-plugin</artifactId> |
| <version>${coveralls-maven-plugin.version}</version> |
| <configuration> |
| <repoToken>${COVERALLS_REPO_TOKEN}</repoToken> |
| <sourceDirectories> |
| <sourceDirectory>${project.build.sourceDirectory}</sourceDirectory> |
| </sourceDirectories> |
| </configuration> |
| </plugin> |
| <plugin> |
| <artifactId>maven-checkstyle-plugin</artifactId> |
| <version>${maven-checkstyle-plugin.version}</version> |
| <configuration> |
| <configLocation>apm-checkstyle/checkStyle.xml</configLocation> |
| <headerLocation>apm-checkstyle/CHECKSTYLE_HEAD</headerLocation> |
| <encoding>UTF-8</encoding> |
| <consoleOutput>true</consoleOutput> |
| <includeTestSourceDirectory>true</includeTestSourceDirectory> |
| <failsOnError>true</failsOnError> |
| <sourceDirectories> |
| <sourceDirectory>${project.build.sourceDirectory}</sourceDirectory> |
| <sourceDirectory>${project.build.testSourceDirectory}</sourceDirectory> |
| </sourceDirectories> |
| <resourceIncludes> |
| **/*.properties, |
| **/*.sh, |
| **/*.bat, |
| **/*.yml, |
| **/*.yaml, |
| **/*.xml |
| </resourceIncludes> |
| <excludes> |
| **/target/generated-test-sources/**, |
| org/apache/skywalking/apm/network/register/v2/**/*.java, |
| org/apache/skywalking/apm/network/common/**/*.java, |
| org/apache/skywalking/apm/network/servicemesh/**/*.java, |
| org/apache/skywalking/apm/network/language/**/*.java, |
| org/apache/skywalking/oap/server/core/remote/grpc/proto/*.java, |
| org/apache/skywalking/oal/rt/grammar/*.java, |
| org/apache/skywalking/oap/server/exporter/grpc/*.java, |
| org/apache/skywalking/oap/server/configuration/service/*.java |
| </excludes> |
| </configuration> |
| <executions> |
| <execution> |
| <id>validate</id> |
| <phase>process-sources</phase> |
| <goals> |
| <goal>check</goal> |
| </goals> |
| </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> |
| <encoding>${project.build.sourceEncoding}</encoding> |
| <quiet>true</quiet> |
| <formats> |
| <format>html</format> |
| <format>xml</format> |
| </formats> |
| <instrumentation> |
| <ignoreTrivial>true</ignoreTrivial> |
| <ignoreMethodAnnotations> |
| <ignoreMethodAnnotation>lombok.Generated</ignoreMethodAnnotation> |
| </ignoreMethodAnnotations> |
| <includes> |
| <include>org/apache/skywalking/**/*.class</include> |
| </includes> |
| <excludes> |
| <exclude>org/apache/skywalking/**/*Test.class</exclude> |
| <exclude>org/apache/skywalking/**/Test*.class</exclude> |
| <exclude>org/apache/skywalking/apm/network/register/v2/**/*.class</exclude> |
| <exclude>org/apache/skywalking/apm/network/common/**/*.class</exclude> |
| <exclude>org/apache/skywalking/apm/network/servicemesh/**/*.class</exclude> |
| <exclude>org/apache/skywalking/apm/network/language/**/*.class</exclude> |
| <exclude>org/apache/skywalking/oap/server/core/remote/grpc/proto/*.class</exclude> |
| <exclude>org/apache/skywalking/oal/rt/grammar/*.class</exclude> |
| <exclude>org/apache/skywalking/oap/server/exporter/grpc/*.class</exclude> |
| <exclude>org/apache/skywalking/oap/server/configuration/service/*.class</exclude> |
| |
| <exclude>org/apache/skywalking/apm/toolkit/**/*Activation.class</exclude> |
| <exclude>org/apache/skywalking/apm/plugin/**/*Instrumentation.class</exclude> |
| <exclude>org/apache/skywalking/apm/plugin/**/*Instrumentation$*.class</exclude> |
| </excludes> |
| </instrumentation> |
| </configuration> |
| </plugin> |
| </plugins> |
| </build> |
| </project> |