| <?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.dolphinscheduler</groupId> |
| <artifactId>dolphinscheduler</artifactId> |
| <version>3.0.5</version> |
| </parent> |
| <artifactId>dolphinscheduler-python</artifactId> |
| <name>${project.artifactId}</name> |
| <packaging>jar</packaging> |
| |
| <profiles> |
| <profile> |
| <id>release</id> |
| <properties> |
| <python.sign.skip>false</python.sign.skip> |
| </properties> |
| </profile> |
| <profile> |
| <id>python</id> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>exec-maven-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>python-api-prepare</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>exec</goal> |
| </goals> |
| <configuration> |
| <executable>python</executable> |
| <workingDirectory>${project.basedir}/pydolphinscheduler</workingDirectory> |
| <arguments> |
| <argument>-m</argument> |
| <argument>pip</argument> |
| <argument>install</argument> |
| <argument>--upgrade</argument> |
| <argument>pip</argument> |
| <argument>.[build]</argument> |
| </arguments> |
| </configuration> |
| </execution> |
| <execution> |
| <id>python-api-clean</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>exec</goal> |
| </goals> |
| <configuration> |
| <executable>python</executable> |
| <workingDirectory>${project.basedir}/pydolphinscheduler</workingDirectory> |
| <arguments> |
| <argument>setup.py</argument> |
| <argument>pre_clean</argument> |
| </arguments> |
| </configuration> |
| </execution> |
| <execution> |
| <id>python-api-build</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>exec</goal> |
| </goals> |
| <configuration> |
| <executable>python</executable> |
| <workingDirectory>${project.basedir}/pydolphinscheduler</workingDirectory> |
| <arguments> |
| <argument>-m</argument> |
| <argument>build</argument> |
| </arguments> |
| </configuration> |
| </execution> |
| <!-- Rename Python dist package to avoid confusion with dolphinscheduler main package --> |
| <execution> |
| <id>python-pkg-rename-tar</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>exec</goal> |
| </goals> |
| <configuration> |
| <executable>bash</executable> |
| <workingDirectory>${project.basedir}/pydolphinscheduler</workingDirectory> |
| <arguments> |
| <argument>-c</argument> |
| <argument>mv dist/apache-dolphinscheduler-*.tar.gz dist/apache-dolphinscheduler-python-${project.version}.tar.gz</argument> |
| </arguments> |
| </configuration> |
| </execution> |
| <execution> |
| <id>python-pkg-rename-whl</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>exec</goal> |
| </goals> |
| <configuration> |
| <executable>bash</executable> |
| <workingDirectory>${project.basedir}/pydolphinscheduler</workingDirectory> |
| <arguments> |
| <argument>-c</argument> |
| <argument>mv dist/apache_dolphinscheduler-*py3-none-any.whl dist/apache_dolphinscheduler-python-${project.version}-py3-none-any.whl</argument> |
| </arguments> |
| </configuration> |
| </execution> |
| <execution> |
| <id>sign-source</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>exec</goal> |
| </goals> |
| <configuration> |
| <skip>${python.sign.skip}</skip> |
| <executable>bash</executable> |
| <workingDirectory>${project.basedir}/pydolphinscheduler</workingDirectory> |
| <arguments> |
| <argument>-c</argument> |
| <!-- We use `bash -c` here cause plugin exec-maven-plugin do not support wildcard--> |
| <argument>gpg --armor --detach-sign --digest-algo=SHA512 dist/*.tar.gz</argument> |
| </arguments> |
| </configuration> |
| </execution> |
| <execution> |
| <id>sign-wheel</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>exec</goal> |
| </goals> |
| <configuration> |
| <skip>${python.sign.skip}</skip> |
| <executable>bash</executable> |
| <workingDirectory>${project.basedir}/pydolphinscheduler</workingDirectory> |
| <arguments> |
| <argument>-c</argument> |
| <!-- We use `bash -c` here cause plugin exec-maven-plugin do not support wildcard--> |
| <argument>gpg --armor --detach-sign --digest-algo=SHA512 dist/*.whl</argument> |
| </arguments> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| </profiles> |
| </project> |