aboutsummaryrefslogtreecommitdiffstats
path: root/.github
diff options
context:
space:
mode:
authorDominik Stadler <centic@apache.org>2020-12-20 18:48:00 +0000
committerDominik Stadler <centic@apache.org>2020-12-20 18:48:00 +0000
commitfb012041e8dd788637e68737199bc313b3e90098 (patch)
tree936934b27f5188d19ab6b2a06aeebf8f6abd0f13 /.github
parent01dabc0d1b76bafa136248ef7676060f65cc45ec (diff)
downloadpoi-fb012041e8dd788637e68737199bc313b3e90098.tar.gz
poi-fb012041e8dd788637e68737199bc313b3e90098.zip
Add initial Github Actions to build PRs with all three build-systems
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1884654 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/test-ant.yml55
-rw-r--r--.github/workflows/test-gradle.yml37
-rw-r--r--.github/workflows/test-maven.yml34
3 files changed, 126 insertions, 0 deletions
diff --git a/.github/workflows/test-ant.yml b/.github/workflows/test-ant.yml
new file mode 100644
index 0000000000..7d57e1db40
--- /dev/null
+++ b/.github/workflows/test-ant.yml
@@ -0,0 +1,55 @@
+
+# This workflow will build a Java project with Ant
+# For more information see: https://docs.github.com/en/free-pro-team@latest/actions/guides/building-and-testing-java-with-ant
+
+name: Java CI with Ant
+
+on:
+ push:
+ branches: [ trunk ]
+ pull_request:
+ branches: [ trunk ]
+
+jobs:
+ build:
+ runs-on: ${{ matrix.os }}
+
+ strategy:
+ fail-fast: false
+ matrix:
+ os: [ubuntu-latest]
+ # for now verify JDK 8 and 11
+ java: [ 8, 11.0.x ]
+
+ name: Java ${{ matrix.java }} build
+ steps:
+ - uses: actions/checkout@v2
+
+ - name: Setup java ${{ matrix.java }}
+ uses: actions/setup-java@v1
+ with:
+ java-version: ${{ matrix.java }}
+
+ - name: Set up Ant
+ id: setup-ant
+ run: |
+ wget https://www.apache.org/dist/ant/binaries/apache-ant-1.10.9-bin.tar.gz
+ tar -xzvf apache-ant-1.10.9-bin.tar.gz
+ export PATH=`pwd`/apache-ant-1.10.9/bin:$PATH
+ echo $(ant -version)
+
+ - name: Cache downloaded third-party libraries
+ uses: actions/cache@v2.1.3
+ with:
+ # A list of files, directories, and wildcard patterns to cache and restore
+ path: lib
+ # An explicit key for restoring and saving the cache
+ key: poi-third-party-libs
+
+ - name: Fetch site via SVN
+ id: setup-doc-site
+ run: |
+ svn co https://svn.apache.org/repos/asf/poi/site/src/documentation src/documentation
+
+ - name: Build with Ant
+ run: ant clean jenkins
diff --git a/.github/workflows/test-gradle.yml b/.github/workflows/test-gradle.yml
new file mode 100644
index 0000000000..7594f29159
--- /dev/null
+++ b/.github/workflows/test-gradle.yml
@@ -0,0 +1,37 @@
+# This workflow will build a Java project with Gradle
+# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-gradle
+
+name: Java CI with Gradle
+
+on:
+ push:
+ branches: [ trunk ]
+ pull_request:
+ branches: [ trunk ]
+
+jobs:
+ build:
+
+ runs-on: ubuntu-latest
+
+ steps:
+ - uses: actions/checkout@v2
+
+ - name: Set up JDK 1.8
+ uses: actions/setup-java@v1
+ with:
+ java-version: 1.8
+
+ - name: Cache
+ uses: actions/cache@v2.1.3
+ with:
+ # A list of files, directories, and wildcard patterns to cache and restore
+ path: lib
+ # An explicit key for restoring and saving the cache
+ key: poi-third-party-libs
+
+ - name: Grant execute permission for gradlew
+ run: chmod +x gradlew
+
+ - name: Build with Gradle
+ run: ./gradlew check
diff --git a/.github/workflows/test-maven.yml b/.github/workflows/test-maven.yml
new file mode 100644
index 0000000000..5b6a47a643
--- /dev/null
+++ b/.github/workflows/test-maven.yml
@@ -0,0 +1,34 @@
+# This workflow will build a Java project with Maven
+# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-maven
+
+name: Java CI with Maven
+
+on:
+ push:
+ branches: [ trunk ]
+ pull_request:
+ branches: [ trunk ]
+
+jobs:
+ build:
+
+ runs-on: ubuntu-latest
+
+ steps:
+ - uses: actions/checkout@v2
+
+ - name: Set up JDK 1.8
+ uses: actions/setup-java@v1
+ with:
+ java-version: 1.8
+
+ - name: Cache
+ uses: actions/cache@v2.1.3
+ with:
+ # A list of files, directories, and wildcard patterns to cache and restore
+ path: lib
+ # An explicit key for restoring and saving the cache
+ key: poi-third-party-libs
+
+ - name: Build with Maven
+ run: (cd sonar && mvn -B validate package --file pom.xml)