Skip to content

Commit

Permalink
use maven profile for native packaging. default to local native build
Browse files Browse the repository at this point in the history
  • Loading branch information
dmetasoul-opensource committed Feb 2, 2023
1 parent e9b8092 commit c3789fd
Show file tree
Hide file tree
Showing 5 changed files with 125 additions and 86 deletions.
4 changes: 0 additions & 4 deletions .github/workflows/flink-cdc-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,10 +51,6 @@ jobs:
docker pull -q dockcross/manylinux2014-x64:latest
- name: Build with Maven
run: |
if [ ! -f ~/.cargo/bin/cross ]; then
echo "Cross not installed!"
cargo install cross --git https://github.com/cross-rs/cross
fi
MAVEN_OPTS="-Xmx4000m" mvn -q -B clean package -f pom.xml -DskipTests
- name: Get jar names
run: |
Expand Down
5 changes: 2 additions & 3 deletions .github/workflows/maven-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -59,10 +59,9 @@ jobs:
native-io/target/
key: ${{ runner.os }}-cargo-${{ hashFiles('native-io/Cargo.lock') }}
restore-keys: ${{ runner.os }}-cargo-
- name: Compile Native-IO
run: cd native-io && cargo +nightly build --release --all-features --package lakesoul-io-c
- name: Build with Maven
run: MAVEN_OPTS="-Xmx4000m" LakeSoulLib=/home/runner/work/LakeSoul/LakeSoul/native-io/target/release mvn -q -B clean test --file pom.xml -pl lakesoul-spark -am
run: |
MAVEN_OPTS="-Xmx4000m" mvn -q -B clean test --file pom.xml -pl lakesoul-spark -am
- name: Upload Test Report
continue-on-error: true
uses: actions/upload-artifact@v3
Expand Down
17 changes: 0 additions & 17 deletions lakesoul-flink/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -251,23 +251,6 @@
</dependencies>

<build>
<resources>
<resource>
<directory>${basedir}/../native-io/target/x86_64-unknown-linux-gnu/release/</directory>
<includes>
<include>*.dylib</include>
<include>*.so</include>
<include>*.dll</include>
</includes>
<excludes>
<exclude>deps</exclude>
<exclude>.fingerprint</exclude>
<exclude>build</exclude>
<exclude>examples</exclude>
<exclude>*.d</exclude>
</excludes>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
Expand Down
17 changes: 0 additions & 17 deletions lakesoul-spark/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -234,23 +234,6 @@
</dependencies>

<build>
<resources>
<resource>
<directory>${basedir}/../native-io/target/x86_64-unknown-linux-gnu/release/</directory>
<includes>
<include>*.dylib</include>
<include>*.so</include>
<include>*.dll</include>
</includes>
<excludes>
<exclude>deps</exclude>
<exclude>.fingerprint</exclude>
<exclude>build</exclude>
<exclude>examples</exclude>
<exclude>*.d</exclude>
</excludes>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
Expand Down
168 changes: 123 additions & 45 deletions native-io/lakesoul-io-java/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
<modelVersion>4.0.0</modelVersion>
<artifactId>lakesoul-io-java</artifactId>
<version>2.2.0-SNAPSHOT</version>
<packaging>jar</packaging>

<properties>
<maven.compiler.source>8</maven.compiler.source>
Expand Down Expand Up @@ -110,24 +111,129 @@
</dependency>
</dependencies>

<profiles>
<profile>
<id>native-dev</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<build>
<resources>
<resource>
<directory>${basedir}/../target/release/</directory>
<includes>
<include>*.dylib</include>
<include>*.so</include>
<include>*.dll</include>
</includes>
<excludes>
<exclude>deps</exclude>
<exclude>.fingerprint</exclude>
<exclude>build</exclude>
<exclude>examples</exclude>
<exclude>*.d</exclude>
</excludes>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>3.1.0</version>
<executions>
<execution>
<id>compile-native</id>
<phase>generate-resources</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>cargo</executable>
<commandlineArgs>+nightly build --release --all-features --package lakesoul-io-c</commandlineArgs>
<workingDirectory>${basedir}/../</workingDirectory>
</configuration>
</execution>
<execution>
<id>clean-native</id>
<phase>clean</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>cargo</executable>
<commandlineArgs>
clean
</commandlineArgs>
<workingDirectory>${basedir}/../</workingDirectory>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>

<profile>
<id>release-linux-x86-64</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<build>
<resources>
<resource>
<directory>${basedir}/../target/x86_64-unknown-linux-gnu/release/</directory>
<includes>
<include>*.so</include>
</includes>
<excludes>
<exclude>deps</exclude>
<exclude>.fingerprint</exclude>
<exclude>build</exclude>
<exclude>examples</exclude>
<exclude>*.d</exclude>
</excludes>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>3.1.0</version>
<executions>
<execution>
<id>compile-native</id>
<phase>generate-resources</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>cross</executable>
<commandlineArgs>+nightly build --target x86_64-unknown-linux-gnu --release --all-features --package lakesoul-io-c</commandlineArgs>
<workingDirectory>${basedir}/../</workingDirectory>
</configuration>
</execution>
<execution>
<id>clean-native</id>
<phase>clean</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>cargo</executable>
<commandlineArgs>
clean
</commandlineArgs>
<workingDirectory>${basedir}/../</workingDirectory>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>

<build>
<resources>
<resource>
<directory>${basedir}/../target/x86_64-unknown-linux-gnu/release/</directory>
<includes>
<include>*.dylib</include>
<include>*.so</include>
<include>*.dll</include>
</includes>
<excludes>
<exclude>deps</exclude>
<exclude>.fingerprint</exclude>
<exclude>build</exclude>
<exclude>examples</exclude>
<exclude>*.d</exclude>
</excludes>
</resource>
</resources>
<extensions>
<extension>
<groupId>kr.motd.maven</groupId>
Expand All @@ -153,34 +259,6 @@
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>3.1.0</version>
<executions>
<execution>
<id>compile-native</id>
<phase>prepare-package</phase>
<goals>
<goal>exec</goal>
</goals>
</execution>
</executions>
<configuration>
<executable>cross</executable>
<arguments>
<argument>build</argument>
<argument>+nightly</argument>
<argument>--target</argument>
<argument>x86_64-unknown-linux-gnu</argument>
<argument>--release</argument>
<argument>--all-features</argument>
<argument>--package</argument>
<argument>lakesoul-io-c</argument>
</arguments>
<workingDirectory>${basedir}/../</workingDirectory>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
Expand Down

0 comments on commit c3789fd

Please sign in to comment.