Files
fabric-carpet/.github/workflows/rules-to-wiki.yml
T

84 lines
2.8 KiB
YAML

name: Update wiki
on:
push:
branches:
- master
paths:
- "src/main/java/carpet/CarpetSettings.java"
jobs:
Rules:
runs-on: ubuntu-latest
steps:
- name: Checkout Carpet sources
uses: actions/checkout@v2
- name: Set up JDK 1.8
uses: actions/setup-java@v1
with:
java-version: 1.8
- name: Cache Gradle packages
uses: actions/cache@v2
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
restore-keys: ${{ runner.os }}-gradle
- name: Generate RulePrinter class
run: |
cd src/main/java/carpet/utils
echo "
package carpet.utils;
import carpet.CarpetServer;
import carpet.settings.SettingsManager;
import net.fabricmc.loader.api.entrypoint.PreLaunchEntrypoint;
import java.lang.System;
public class RulePrinter implements PreLaunchEntrypoint {
@Override
public void onPreLaunch() {
CarpetServer.onGameStarted();
CarpetServer.settingsManager.printAllRulesToLog(null);
System.exit(0);
}
}
" > RulePrinter.java
cd ../../../../../
- name: Replace fabric.mod.json
run: |
cd src/main/resources
rm fabric.mod.json
echo '
{
"schemaVersion": 1,
"id": "carpet",
"version": "1.4.11",
"entrypoints": {
"preLaunch": [ "carpet.utils.RulePrinter" ]
}
}' > fabric.mod.json
cd ../../../
- name: Run solution
run: |
chmod +x gradlew
./gradlew runServer > settings-toProccess.txt
- name: Checkout wiki
uses: actions/checkout@v2
with:
repository: ${{github.repository}}.wiki
path: wiki
- name: Proccess Gradle log into a pretty wiki page
run: |
from1="# Carpet";
File=settings-toProccess.txt
if grep -q "Deprecated Gradle features" "$File"; then # Happens after update to Gradle 6
to2="Deprecated Gradle features";
else
to2="BUILD SUCCESSFUL"
fi
a="$(cat settings-toProccess.txt)"; a="$(echo "${a#*"$from1"}")"; echo "$from1${a%%"$to2"*}" > wiki/Current-Available-Settings.md
- name: Commit updated wiki page
continue-on-error: true
run: |
cd wiki
git config --global user.name '${{ github.event.pusher.name }}' # Looks better than "github-actions-bot"
git config --global user.email 'github-actions[bot]@users.noreply.github.com'
git commit -am "Update wiki for '${{ github.event.head_commit.message }}'"
git push