Skip to content

Commit 96aa8c5

Browse files
build: consolidate GH actions
Signed-off-by: Andreas Reichel <andreas@manticore-projects.com>
1 parent 62bd1ac commit 96aa8c5

File tree

6 files changed

+94
-174
lines changed

6 files changed

+94
-174
lines changed

.github/workflows/ci.yml

Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
name: CI Pipeline
2+
3+
on:
4+
push:
5+
branches: [ "master" ]
6+
pull_request:
7+
branches: [ "master" ]
8+
workflow_dispatch:
9+
10+
permissions:
11+
contents: read
12+
13+
jobs:
14+
gradle_check:
15+
runs-on: ubuntu-latest
16+
steps:
17+
- uses: actions/checkout@main
18+
- name: Set up JDK 11
19+
uses: actions/setup-java@main
20+
with:
21+
java-version: '11'
22+
distribution: 'temurin'
23+
- name: Build with Gradle
24+
uses: gradle/actions/setup-gradle@main
25+
- name: Run Gradle Check
26+
run: gradle check
27+
28+
gradle_publish:
29+
needs: gradle_check
30+
runs-on: ubuntu-latest
31+
steps:
32+
- uses: actions/checkout@main
33+
with:
34+
fetch-depth: 0
35+
- name: Set up JDK 11
36+
uses: actions/setup-java@main
37+
with:
38+
java-version: '11'
39+
distribution: 'temurin'
40+
- name: Build with Gradle
41+
uses: gradle/actions/setup-gradle@main
42+
- name: Publish
43+
run: gradle publish
44+
env:
45+
ossrhUsername: ${{ secrets.OSSRHUSERNAME }}
46+
ossrhPassword: ${{ secrets.OSSRHPASSWORD }}
47+
48+
gradle_sphinx:
49+
needs: gradle_publish
50+
runs-on: ubuntu-latest
51+
steps:
52+
- uses: actions/setup-python@main
53+
- name: Install XSLT Processor
54+
run: sudo apt-get install xsltproc sphinx-common
55+
- name: Install dependencies
56+
run: pip install furo myst_parser sphinx-prompt sphinx_substitution_extensions sphinx_issues sphinx_inline_tabs pygments
57+
- name: Checkout project sources
58+
uses: actions/checkout@main
59+
with:
60+
ref: master
61+
fetch-depth: 0
62+
- name: Setup Gradle
63+
uses: gradle/actions/setup-gradle@main
64+
- name: Run build with Gradle Wrapper
65+
run: FLOATING_TOC=false gradle xmldoc sphinx
66+
- name: Deploy
67+
uses: actions/configure-pages@main
68+
- name: Upload artifact
69+
uses: actions/upload-pages-artifact@main
70+
with:
71+
path: 'build/sphinx'
72+
- name: Deploy to GitHub Pages
73+
id: deployment
74+
uses: actions/deploy-pages@main
75+
76+
maven_publish:
77+
needs: gradle_sphinx
78+
runs-on: ubuntu-latest
79+
steps:
80+
- uses: actions/checkout@main
81+
- name: Set up JDK 11
82+
uses: actions/setup-java@main
83+
with:
84+
java-version: '11'
85+
distribution: 'temurin'
86+
cache: maven
87+
server-id: sonatype-nexus-snapshots
88+
server-username: MAVEN_USERNAME
89+
server-password: MAVEN_PASSWORD
90+
- name: Build with Maven
91+
run: mvn -B deploy --file pom.xml -DdisableXmlReport=true -Djacoco.skip=true -Dpmd.skip=true
92+
env:
93+
MAVEN_USERNAME: ${{ secrets.OSSRHUSERNAME }}
94+
MAVEN_PASSWORD: ${{ secrets.OSSRHPASSWORD }}

.github/workflows/gradle.yml

Lines changed: 0 additions & 35 deletions
This file was deleted.

.github/workflows/gradle_publish.yml

Lines changed: 0 additions & 36 deletions
This file was deleted.

.github/workflows/maven.yml

Lines changed: 0 additions & 36 deletions
This file was deleted.

.github/workflows/maven_deploy.yml

Lines changed: 0 additions & 33 deletions
This file was deleted.

.github/workflows/sphinx.yml

Lines changed: 0 additions & 34 deletions
This file was deleted.

0 commit comments

Comments
 (0)