Merge pull request #6 from KyuubiDDragon/claude/fix-tile-loading-perf… #16
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Build and Release | |
| on: | |
| push: | |
| branches: [ master, main ] | |
| pull_request: | |
| branches: [ master, main ] | |
| workflow_dispatch: | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Set up Java 25 | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '25-ea' | |
| distribution: 'temurin' | |
| cache: maven | |
| - name: Build with Maven | |
| run: mvn clean package | |
| - name: Upload artifact | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: EasyWebMap | |
| path: target/EasyWebMap-*.jar | |
| release: | |
| needs: build | |
| runs-on: ubuntu-latest | |
| if: github.event_name == 'push' && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/master') | |
| permissions: | |
| contents: write | |
| steps: | |
| - name: Download artifact | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: EasyWebMap | |
| path: . | |
| - name: List downloaded files | |
| run: ls -la | |
| - name: Checkout for commit info | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Generate version | |
| id: version | |
| run: echo "version=v1.0.${{ github.run_number }}" >> $GITHUB_OUTPUT | |
| - name: Get changelog from commit | |
| id: changelog | |
| run: | | |
| echo "message<<EOF" >> $GITHUB_OUTPUT | |
| git log -1 --pretty=format:"%B" >> $GITHUB_OUTPUT | |
| echo "" >> $GITHUB_OUTPUT | |
| echo "EOF" >> $GITHUB_OUTPUT | |
| - name: Rename JAR | |
| run: | | |
| # Find the JAR wherever it is | |
| JAR_FILE=$(find . -name "EasyWebMap-*.jar" -type f | head -1) | |
| echo "Found JAR: $JAR_FILE" | |
| mv "$JAR_FILE" EasyWebMap-${{ steps.version.outputs.version }}.jar | |
| - name: Create Release | |
| uses: softprops/action-gh-release@v1 | |
| with: | |
| tag_name: ${{ steps.version.outputs.version }} | |
| name: EasyWebMap ${{ steps.version.outputs.version }} | |
| body: | | |
| ## EasyWebMap ${{ steps.version.outputs.version }} | |
| **Commit:** ${{ github.sha }} | |
| **Released:** ${{ github.event.head_commit.timestamp }} | |
| --- | |
| ### Changelog | |
| ${{ steps.changelog.outputs.message }} | |
| --- | |
| ### How to Install | |
| 1. Download `EasyWebMap-${{ steps.version.outputs.version }}.jar` below | |
| 2. Drop it in your server's `mods` folder | |
| 3. Restart your server | |
| 4. Open `http://localhost:8080` in your browser | |
| --- | |
| ### Features | |
| | Feature | Description | | |
| |---------|-------------| | |
| | Live Map | See terrain update in real-time as blocks change | | |
| | Player Tracking | Watch players move around with direction arrows | | |
| | Player List | Click any player name to jump to their location | | |
| | Multi-World | Switch between worlds with a dropdown | | |
| | Explored-Only Rendering | Only renders explored chunks by default (prevents abuse) | | |
| --- | |
| ### Commands | |
| | Command | What it does | | |
| |---------|--------------| | |
| | `/easywebmap status` | Show server status | | |
| | `/easywebmap reload` | Reload config | | |
| | `/easywebmap clearcache` | Clear tile cache | | |
| files: EasyWebMap-${{ steps.version.outputs.version }}.jar | |
| draft: false | |
| prerelease: false | |
| make_latest: true |