Skip to content

Commit 1158a55

Browse files
committed
ci: add ci to build mod
1 parent bcaa4ff commit 1158a55

File tree

1 file changed

+64
-0
lines changed

1 file changed

+64
-0
lines changed

.github/workflows/build.yml

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
# Automatically build the project and run any configured tests for every push
2+
# and submitted pull request. This can help catch issues that only occur on
3+
# certain platforms or Java versions, and provides a first line of defence
4+
# against bad commits.
5+
6+
name: build
7+
on: [pull_request, push]
8+
9+
jobs:
10+
build:
11+
strategy:
12+
matrix:
13+
# Use these Java versions
14+
java: [
15+
21 # Latest version
16+
]
17+
# and run on both Linux and Windows
18+
os: [ ubuntu-latest, windows-latest ]
19+
fail-fast: false
20+
runs-on: ${{ matrix.os }}
21+
steps:
22+
- name: Checkout repository
23+
uses: actions/checkout@v4
24+
- name: Validate gradle wrapper
25+
uses: gradle/actions/wrapper-validation@v4
26+
- name: Setup jdk ${{ matrix.java }}
27+
uses: actions/setup-java@v4
28+
with:
29+
distribution: 'temurin'
30+
java-version: ${{ matrix.java }}
31+
- name: Setup Gradle
32+
uses: gradle/actions/setup-gradle@v4
33+
- name: Build
34+
run: ./gradlew build
35+
- name: SHA256 Checksum
36+
if: ${{ runner.os == 'Linux' && matrix.java == '21' }} # Only checksum artifacts built from LTS java on one OS
37+
run: |
38+
sha256sum fabric/build/libs/* | sed 's|fabric/build/libs/||' >> sha256-fabric.txt
39+
sha256sum neoforge/build/libs/* | sed 's|neoforge/build/libs/||' >> sha256-neoforge.txt
40+
- name: Publish Checksum Output to Summary
41+
if: ${{ runner.os == 'Linux' && matrix.java == '21' }} # Only upload artifacts built from LTS java on one OS
42+
run: |
43+
{
44+
echo "### Artifact SHA256"
45+
echo '```terraform'
46+
echo '# Fabric`
47+
cat sha256-fabric.txt
48+
echo '# Neoforge'
49+
cat sha256-neoforge.txt
50+
echo '```'
51+
echo "### Gradle Summary"
52+
} >> $GITHUB_STEP_SUMMARY
53+
- name: Capture fabric build artifacts
54+
if: ${{ runner.os == 'Linux' && matrix.java == '21' }} # Only upload artifacts built from LTS java on one OS
55+
uses: actions/upload-artifact@v4
56+
with:
57+
name: fabric-builds
58+
path: fabric/build/libs/
59+
- name: Capture neoforge build artifacts
60+
if: ${{ runner.os == 'Linux' && matrix.java == '21' }} # Only upload artifacts built from LTS java on one OS
61+
uses: actions/upload-artifact@v4
62+
with:
63+
name: neoforge-builds
64+
path: neoforge/build/libs/

0 commit comments

Comments
 (0)