Skip to content

Nightly Build

Nightly Build #292

Workflow file for this run

permissions:
contents: write
name: Nightly Build
on:
workflow_dispatch:
schedule:
- cron: "30 21 * * *"
jobs:
build:
runs-on: ubuntu-24.04
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: refs/heads/neoforge-dev/1.21.1
submodules: recursive
- name: Setup Java
uses: actions/setup-java@v4
with:
distribution: "temurin"
java-version: 21
cache: "gradle"
- name: Generate assets
run: |
git submodule foreach '../gradlew runData'
cd ./ConfluenceOtherworld && ./gradlew runData
- name: Build Confluence
working-directory: ./ConfluenceOtherworld
run: ./gradlew build
- name: Get version with date suffix
id: version
working-directory: ./ConfluenceOtherworld
run: |
if [ -f "gradle.properties" ]; then
BASE_VERSION=$(grep -E "^(mod_)?version" gradle.properties | head -1 | cut -d'=' -f2 | tr -d ' \r\n' | sed 's/-.*//')
else
BASE_VERSION="1.2.0"
fi
DATE_SUFFIX=$(date +%y%m%d)
FULL_VERSION="${BASE_VERSION}-alpha-${DATE_SUFFIX}"
echo "FULL_VERSION=$FULL_VERSION" >> $GITHUB_OUTPUT
- name: Delete previous nightly release
run: |
releases=$(curl -s -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \
"https://api.github.com/repos/${{ github.repository }}/releases?per_page=100")
echo "$releases" | jq -r '.[] | select(.prerelease == true and .name == "Nightly Build") | "\(.id)"' | while read release_id; do
if [ ! -z "$release_id" ]; then
echo "Deleting previous nightly release: $release_id"
curl -s -X DELETE -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \
"https://api.github.com/repos/${{ github.repository }}/releases/$release_id"
fi
done
- name: Upload to Nightly Release
uses: softprops/action-gh-release@v1
with:
files: ./ConfluenceOtherworld/build/libs/*.jar
tag_name: nightly
name: Nightly Build
prerelease: true
make_latest: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}