Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 35 additions & 17 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -1,22 +1,40 @@
name: Build
# Automatically build the project and run any configured tests for every push
# and submitted pull request. This can help catch issues that only occur on
# certain platforms or Java versions, and provides a first line of defence
# against bad commits.

on: [push]
name: build
on: [pull_request, push]

jobs:
build:

runs-on: ubuntu-latest

container:
image: openjdk:17-jdk
options: --user root

strategy:
matrix:
# Use these Java versions
java: [
17, # Current Java LTS & minimum supported by Minecraft
]
# and run on both Linux and Windows
os: [ubuntu-22.04, windows-2022]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v2.2.0
- run: |
chmod +x ./gradlew
./gradlew build
- uses: actions/upload-artifact@v2
with:
name: build-artifacts
path: build/libs/
- name: checkout repository
uses: actions/checkout@v3
- name: validate gradle wrapper
uses: gradle/wrapper-validation-action@v1
- name: setup jdk ${{ matrix.java }}
uses: actions/setup-java@v3
with:
java-version: ${{ matrix.java }}
distribution: 'microsoft'
- name: make gradle wrapper executable
if: ${{ runner.os != 'Windows' }}
run: chmod +x ./gradlew
- name: build
run: ./gradlew build
- name: capture build artifacts
if: ${{ runner.os == 'Linux' && matrix.java == '17' }} # Only upload artifacts built from latest java on one OS
uses: actions/upload-artifact@v3
with:
name: Artifacts
path: build/libs/
130 changes: 26 additions & 104 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,118 +1,40 @@
# User-specific stuff
.idea/

*.iml
*.ipr
*.iws
# gradle

# IntelliJ
.gradle/
build/
out/
# mpeltonen/sbt-idea plugin
.idea_modules/

# JIRA plugin
atlassian-ide-plugin.xml

# Compiled class file
*.class

# Log file
*.log

# BlueJ files
*.ctxt

# Package Files #
*.jar
*.war
*.nar
*.ear
*.zip
*.tar.gz
*.rar

# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*

*~

# temporary files which can be created if a process still has a handle open of a deleted file
.fuse_hidden*

# KDE directory preferences
.directory
classes/

# Linux trash folder which might appear on any partition or disk
.Trash-*
# eclipse

# .nfs files are created when an open file is removed but is still being accessed
.nfs*
*.launch

# General
.DS_Store
.AppleDouble
.LSOverride
# idea

# Icon must end with two \r
Icon

# Thumbnails
._*

# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
.com.apple.timemachine.donotpresent

# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk

# Windows thumbnail cache files
Thumbs.db
Thumbs.db:encryptable
ehthumbs.db
ehthumbs_vista.db

# Dump file
*.stackdump

# Folder config file
[Dd]esktop.ini

# Recycle Bin used on file shares
$RECYCLE.BIN/

# Windows Installer files
*.cab
*.msi
*.msix
*.msm
*.msp
.idea/
*.iml
*.ipr
*.iws

# Windows shortcuts
*.lnk
# vscode

.gradle
build/
.settings/
.vscode/
bin/
.classpath
.project

# Ignore Gradle GUI config
gradle-app.setting
# macos

# Cache of project
.gradletasknamecache
*.DS_Store

**/build/
# fabric

# Common working directory
run/

# Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored)
!gradle-wrapper.jar
# java

hs_err_*.log
replay_*.log
*.hprof
*.jfr
Loading