mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-19 12:18:00 +00:00
add test-build profile
This commit is contained in:
58
.github/workflows/test-android-build.yml
vendored
Normal file
58
.github/workflows/test-android-build.yml
vendored
Normal file
@@ -0,0 +1,58 @@
|
||||
name: Test Android build
|
||||
|
||||
on:
|
||||
push:
|
||||
paths: [ 'forge-gui-android/**' ]
|
||||
pull_request:
|
||||
paths: [ 'forge-gui-android/**' ]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
java: [ '17' ]
|
||||
name: Test with Java ${{ matrix.Java }}
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Set up JDK 17
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
java-version: ${{ matrix.java }}
|
||||
distribution: 'temurin'
|
||||
cache: 'maven'
|
||||
|
||||
- name: Install old maven (3.8.1)
|
||||
run: |
|
||||
curl -o apache-maven-3.8.1-bin.tar.gz https://archive.apache.org/dist/maven/maven-3/3.8.1/binaries/apache-maven-3.8.1-bin.tar.gz
|
||||
tar xf apache-maven-3.8.1-bin.tar.gz
|
||||
export PATH=$PWD/apache-maven-3.8.1/bin:$PATH
|
||||
export MAVEN_HOME=$PWD/apache-maven-3.8.1
|
||||
mvn --version
|
||||
|
||||
- name: Set Up Android tools
|
||||
run: |
|
||||
JAVA_HOME=${JAVA_HOME_17_X64} ${ANDROID_SDK_ROOT}/cmdline-tools/latest/bin/sdkmanager --sdk_root=$ANDROID_SDK_ROOT "platform-tools"
|
||||
JAVA_HOME=${JAVA_HOME_17_X64} ${ANDROID_SDK_ROOT}/cmdline-tools/latest/bin/sdkmanager --sdk_root=$ANDROID_SDK_ROOT --install "platforms;android-35"
|
||||
JAVA_HOME=${JAVA_HOME_17_X64} ${ANDROID_SDK_ROOT}/cmdline-tools/latest/bin/sdkmanager --sdk_root=$ANDROID_SDK_ROOT --install "build-tools;35.0.0"
|
||||
|
||||
- name: Install Android maven plugin
|
||||
run: |
|
||||
mkdir -p ~/.m2/repository/com/simpligility/maven/plugins/android-maven-plugin/4.6.2
|
||||
cd ~/.m2/repository/com/simpligility/maven/plugins/android-maven-plugin/4.6.2
|
||||
curl -L -o android-maven-plugin-4.6.2.jar https://github.com/Card-Forge/android-maven-plugin/releases/download/4.6.2/android-maven-plugin-4.6.2.jar
|
||||
curl -L -o android-maven-plugin-4.6.2.pom https://github.com/Card-Forge/android-maven-plugin/releases/download/4.6.2/android-maven-plugin-4.6.2.pom
|
||||
#mvn install:install-file -Dfile=android-maven-plugin-4.6.2.jar -DgroupId=com.simpligility.maven.plugins -DartifactId=android-maven-plugin -Dversion=4.6.2 -Dpackaging=jar
|
||||
cd -
|
||||
mvn install -Dmaven.test.skip=true
|
||||
mvn dependency:tree
|
||||
|
||||
- name: Install virtual framebuffer (if not available) to allow running GUI on a headless server
|
||||
run: command -v Xvfb >/dev/null 2>&1 || { sudo apt update && sudo apt install -y xvfb; }
|
||||
|
||||
- name: Run build in virtual framebuffer
|
||||
run: |
|
||||
export DISPLAY=":1"
|
||||
Xvfb :1 -screen 0 800x600x8 &
|
||||
mvn -U -B -P android-test-build verify -e -T 1C -Dandroid.sdk.path=/usr/local/lib/android/sdk -Dandroid.buildToolsVersion=35.0.0 -Dmaven.test.skip=true
|
||||
@@ -527,5 +527,116 @@
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
<profile>
|
||||
<!-- test build signed with embedded debug.keystore from uber-signer -->
|
||||
<id>android-test-build</id>
|
||||
<properties>
|
||||
<packaging.type>apk</packaging.type>
|
||||
</properties>
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<artifactId>exec-maven-plugin</artifactId>
|
||||
<version>3.4.1</version>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>SignV2</id>
|
||||
<phase>verify</phase>
|
||||
<goals>
|
||||
<goal>exec</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
<configuration>
|
||||
<workingDirectory>${pom.basedir}</workingDirectory>
|
||||
<executable>java</executable>
|
||||
<arguments>
|
||||
<argument>-jar</argument>
|
||||
<argument>${pom.basedir}/tools/uber-apk-signer.jar</argument>
|
||||
<argument>-a</argument>
|
||||
<argument>${pom.basedir}/target/</argument>
|
||||
<argument>--debug</argument>
|
||||
</arguments>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>com.simpligility.maven.plugins</groupId>
|
||||
<artifactId>android-maven-plugin</artifactId>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>javax.xml.bind</groupId>
|
||||
<artifactId>jaxb-api</artifactId>
|
||||
<version>2.3.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.sun.xml.bind</groupId>
|
||||
<artifactId>jaxb-impl</artifactId>
|
||||
<version>2.3.4</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>sun</groupId>
|
||||
<artifactId>misc</artifactId>
|
||||
<version>1</version>
|
||||
<scope>system</scope>
|
||||
<systemPath>${pom.basedir}/libs/sun-misc.jar</systemPath>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<version>4.6.2</version>
|
||||
<extensions>true</extensions>
|
||||
<configuration>
|
||||
<sign>
|
||||
<debug>false</debug>
|
||||
</sign>
|
||||
<sdk>
|
||||
<platform>35</platform>
|
||||
<buildTools>35.0.0</buildTools>
|
||||
</sdk>
|
||||
<zipalign>
|
||||
<verbose>false</verbose>
|
||||
</zipalign>
|
||||
<dexForceJumbo>true</dexForceJumbo>
|
||||
<assetsDirectory>${project.basedir}/assets</assetsDirectory>
|
||||
<resourceDirectory>${project.basedir}/res</resourceDirectory>
|
||||
<nativeLibrariesDirectory>${project.basedir}/libs</nativeLibrariesDirectory>
|
||||
<extractDuplicates>true</extractDuplicates>
|
||||
<proguard>
|
||||
<skip>false</skip>
|
||||
<config>${project.basedir}/proguard.cfg</config>
|
||||
</proguard>
|
||||
<proguardProguardJarPath>${pom.basedir}/tools/proguard.jar</proguardProguardJarPath>
|
||||
<release>true</release>
|
||||
<dexCompiler>d8</dexCompiler>
|
||||
<d8>
|
||||
<minApi>26</minApi>
|
||||
<jvmArguments>
|
||||
<argument>${build.min.memory}</argument>
|
||||
<argument>${build.max.memory}</argument>
|
||||
</jvmArguments>
|
||||
</d8>
|
||||
<dex>
|
||||
<multi-dex>true</multi-dex>
|
||||
<jvmArguments>
|
||||
<argument>${build.min.memory}</argument>
|
||||
<argument>${build.max.memory}</argument>
|
||||
</jvmArguments>
|
||||
<dexArguments>--min-sdk-version=26</dexArguments>
|
||||
</dex>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>update-manifest</id>
|
||||
<goals>
|
||||
<goal>manifest-merger</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<manifestVersionName>${snapshot-version}</manifestVersionName>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
</profiles>
|
||||
</project>
|
||||
|
||||
2
pom.xml
2
pom.xml
@@ -69,10 +69,10 @@
|
||||
<module>forge-gui-mobile</module>
|
||||
<module>forge-gui-mobile-dev</module>
|
||||
<module>forge-gui-desktop</module>
|
||||
<module>forge-gui-android</module>
|
||||
<module>forge-gui-ios</module>
|
||||
<module>forge-adventure</module>
|
||||
<module>forge-lda</module>
|
||||
<module>forge-gui-android</module>
|
||||
</modules>
|
||||
|
||||
<distributionManagement>
|
||||
|
||||
Reference in New Issue
Block a user