Add template repository workflow
This commit is contained in:
parent
7e8fa83e5a
commit
1b8cfb5563
3 changed files with 75 additions and 1 deletions
38
.github/workflows/init.yml
vendored
Normal file
38
.github/workflows/init.yml
vendored
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
name: Initialize Template Repo
|
||||||
|
on:
|
||||||
|
- push
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
contents: write
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
cleanup:
|
||||||
|
name: "Initialize Repo"
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
if: github.event.repository.name != 'Forge1.8.9Template'
|
||||||
|
steps:
|
||||||
|
- name: Checkout repository
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
- name: Initialize Repo
|
||||||
|
run: |
|
||||||
|
git config --local user.email "action@github.com"
|
||||||
|
git config --local user.name "GitHub Action"
|
||||||
|
owner=$(echo $GITHUB_REPOSITORY | cut -d/ -f1 | tr '[:upper:]' '[:lower:]')
|
||||||
|
name=$(echo $GITHUB_REPOSITORY | cut -d/ -f2 | tr '[:upper:]' '[:lower:]' | tr -d "-" | tr -d ".")
|
||||||
|
pack_name="com.github.${owner,,}.${name,,}"
|
||||||
|
proj_name="$(echo $GITHUB_REPOSITORY | cut -d/ -f2)"
|
||||||
|
modid="$(echo $name | sed 's/[^a-z]//g')"
|
||||||
|
./make-my-own.sh "$pack_name" "$proj_name" "$modid"
|
||||||
|
git add .
|
||||||
|
git commit -F- <<EOF
|
||||||
|
Initialize template repository proper
|
||||||
|
|
||||||
|
Set package name to $pack_name
|
||||||
|
Set project name to $proj_name
|
||||||
|
Set modid to $modid
|
||||||
|
EOF
|
||||||
|
- name: Push changes
|
||||||
|
uses: ad-m/github-push-action@v0.6.0
|
||||||
|
with:
|
||||||
|
branch: ${{ github.ref }}
|
||||||
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
@ -12,7 +12,7 @@ val baseGroup: String by project
|
||||||
val mcVersion: String by project
|
val mcVersion: String by project
|
||||||
val version: String by project
|
val version: String by project
|
||||||
val mixinGroup = "$baseGroup.mixin"
|
val mixinGroup = "$baseGroup.mixin"
|
||||||
val modid = rootProject.name
|
val modid: String by project
|
||||||
|
|
||||||
// Toolchains:
|
// Toolchains:
|
||||||
java {
|
java {
|
||||||
|
|
36
make-my-own.sh
Executable file
36
make-my-own.sh
Executable file
|
@ -0,0 +1,36 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
print_help() {
|
||||||
|
echo "$0 <new package name> <project name> <modid>"
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ "$#" -ne "3" ]; then
|
||||||
|
print_help
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
base=$(dirname "$(readlink -f "$0")")
|
||||||
|
echo "Updating $base"
|
||||||
|
package_name="$1"
|
||||||
|
project_name="$2"
|
||||||
|
modid="$3"
|
||||||
|
package_dir=$(echo "$package_name" | tr . /)
|
||||||
|
echo "Setting package name to $package_name"
|
||||||
|
echo "Setting project name to $project_name"
|
||||||
|
echo "Setting package dir to $package_dir"
|
||||||
|
echo "Setting mod id to $modid"
|
||||||
|
(
|
||||||
|
set -x
|
||||||
|
find "$base"/src/main -type f -exec sed -i s/examplemod/"$modid"/g\;s/com.example/"$package_name"/g {} +
|
||||||
|
sed -i s/com.example/"$package_name"/g\;s/examplemod/"$modid"/g "$base"/gradle.properties
|
||||||
|
sed -i s/examplemod/"$project_name"/g "$base"/settings.gradle.kts
|
||||||
|
mkdir -p "$base"/src/main/java/"$package_dir"
|
||||||
|
mkdir -p "$base"/src/main/kotlin/"$package_dir"
|
||||||
|
mv "$base"/src/main/java/com/example/* "$base"/src/main/java/"$package_dir"
|
||||||
|
mv "$base"/src/main/kotlin/com/example/* "$base"/src/main/kotlin/"$package_dir"
|
||||||
|
mv "$base"/src/main/resources/mixins.examplemod.json "$base"/src/main/resources/mixins."$modid".json
|
||||||
|
rm "$base"/.github/workflows/init.yml
|
||||||
|
rm "$(readlink -f $0)"
|
||||||
|
)
|
||||||
|
echo "All done"
|
||||||
|
echo "Now go commit those changes"
|
Loading…
Add table
Reference in a new issue