pom.xml 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!--
  3. ~ Licensed to the Apache Software Foundation (ASF) under one or more
  4. ~ contributor license agreements. See the NOTICE file distributed with
  5. ~ this work for additional information regarding copyright ownership.
  6. ~ The ASF licenses this file to You under the Apache License, Version 2.0
  7. ~ (the "License"); you may not use this file except in compliance with
  8. ~ the License. You may obtain a copy of the License at
  9. ~
  10. ~ http://www.apache.org/licenses/LICENSE-2.0
  11. ~
  12. ~ Unless required by applicable law or agreed to in writing, software
  13. ~ distributed under the License is distributed on an "AS IS" BASIS,
  14. ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  15. ~ See the License for the specific language governing permissions and
  16. ~ limitations under the License.
  17. -->
  18. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  19. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  20. <modelVersion>4.0.0</modelVersion>
  21. <parent>
  22. <groupId>org.apache.dolphinscheduler</groupId>
  23. <artifactId>dolphinscheduler</artifactId>
  24. <version>2.0.4-SNAPSHOT</version>
  25. </parent>
  26. <artifactId>dolphinscheduler-python</artifactId>
  27. <name>${project.artifactId}</name>
  28. <packaging>jar</packaging>
  29. <dependencies>
  30. <!-- dolphinscheduler -->
  31. <dependency>
  32. <groupId>org.apache.dolphinscheduler</groupId>
  33. <artifactId>dolphinscheduler-api</artifactId>
  34. </dependency>
  35. <!--springboot-->
  36. <dependency>
  37. <groupId>org.springframework.boot</groupId>
  38. <artifactId>spring-boot-starter-web</artifactId>
  39. <exclusions>
  40. <exclusion>
  41. <groupId>org.springframework.boot</groupId>
  42. <artifactId>spring-boot-starter-tomcat</artifactId>
  43. </exclusion>
  44. <exclusion>
  45. <artifactId>log4j-to-slf4j</artifactId>
  46. <groupId>org.apache.logging.log4j</groupId>
  47. </exclusion>
  48. </exclusions>
  49. </dependency>
  50. <dependency>
  51. <groupId>net.sf.py4j</groupId>
  52. <artifactId>py4j</artifactId>
  53. </dependency>
  54. </dependencies>
  55. <build>
  56. <plugins>
  57. <plugin>
  58. <groupId>org.apache.maven.plugins</groupId>
  59. <artifactId>maven-jar-plugin</artifactId>
  60. <configuration>
  61. <excludes>
  62. <exclude>*.yaml</exclude>
  63. <exclude>*.xml</exclude>
  64. </excludes>
  65. </configuration>
  66. </plugin>
  67. <plugin>
  68. <artifactId>maven-assembly-plugin</artifactId>
  69. <executions>
  70. <execution>
  71. <id>dolphinscheduler-python-gateway-server</id>
  72. <phase>package</phase>
  73. <goals>
  74. <goal>single</goal>
  75. </goals>
  76. <configuration>
  77. <finalName>python-gateway-server</finalName>
  78. <descriptors>
  79. <descriptor>src/main/assembly/dolphinscheduler-python-gateway-server.xml</descriptor>
  80. </descriptors>
  81. <appendAssemblyId>false</appendAssemblyId>
  82. </configuration>
  83. </execution>
  84. </executions>
  85. </plugin>
  86. </plugins>
  87. </build>
  88. <profiles>
  89. <profile>
  90. <id>docker</id>
  91. <build>
  92. <plugins>
  93. <plugin>
  94. <groupId>org.codehaus.mojo</groupId>
  95. <artifactId>exec-maven-plugin</artifactId>
  96. </plugin>
  97. </plugins>
  98. </build>
  99. </profile>
  100. <profile>
  101. <id>release</id>
  102. <build>
  103. <plugins>
  104. <plugin>
  105. <groupId>org.codehaus.mojo</groupId>
  106. <artifactId>exec-maven-plugin</artifactId>
  107. <executions>
  108. <execution>
  109. <id>python-api-prepare</id>
  110. <phase>prepare-package</phase>
  111. <goals>
  112. <goal>exec</goal>
  113. </goals>
  114. <configuration>
  115. <executable>python3</executable>
  116. <workingDirectory>${project.basedir}/pydolphinscheduler</workingDirectory>
  117. <arguments>
  118. <argument>-m</argument>
  119. <argument>pip</argument>
  120. <argument>install</argument>
  121. <argument>--upgrade</argument>
  122. <argument>pip</argument>
  123. <argument>.[build]</argument>
  124. </arguments>
  125. </configuration>
  126. </execution>
  127. <execution>
  128. <id>python-api-clean</id>
  129. <phase>prepare-package</phase>
  130. <goals>
  131. <goal>exec</goal>
  132. </goals>
  133. <configuration>
  134. <executable>python3</executable>
  135. <workingDirectory>${project.basedir}/pydolphinscheduler</workingDirectory>
  136. <arguments>
  137. <argument>setup.py</argument>
  138. <argument>pre_clean</argument>
  139. </arguments>
  140. </configuration>
  141. </execution>
  142. <execution>
  143. <id>python-api-build</id>
  144. <phase>prepare-package</phase>
  145. <goals>
  146. <goal>exec</goal>
  147. </goals>
  148. <configuration>
  149. <executable>python3</executable>
  150. <workingDirectory>${project.basedir}/pydolphinscheduler</workingDirectory>
  151. <arguments>
  152. <argument>-m</argument>
  153. <argument>build</argument>
  154. </arguments>
  155. </configuration>
  156. </execution>
  157. </executions>
  158. </plugin>
  159. </plugins>
  160. </build>
  161. </profile>
  162. </profiles>
  163. </project>