Skip to content

Merge pull request #74 from opekope2/dev #28

Merge pull request #74 from opekope2/dev

Merge pull request #74 from opekope2/dev #28

Workflow file for this run

name: Publish OptiGUI
on:
push:
tags:
- "*"
jobs:
build:
name: Build OptiGUI
uses: ./.github/workflows/build.yml
with:
build-project: true
build-docs: true
upload-output: true
publish:
name: Publish OptiGUI
runs-on: ubuntu-latest
needs: build
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Download build output
uses: actions/download-artifact@v3
with:
name: jars
path: dist
- name: Fetch release tag
run: git fetch origin $GITHUB_REF:$GITHUB_REF -f
- name: Load publish information
id: load-versions
run: |
git for-each-ref $GITHUB_REF --format '%(contents)' > CHANGELOG.g.md
JAVA_VERSION=$(grep java_version gradle.properties | sed "s|java_version=||g")
echo "JAVA_VERSION=$JAVA_VERSION" >> $GITHUB_OUTPUT
- name: Publish to GitHub, Modrinth, and CurseForge
uses: Kir-Antipov/[email protected]
with:
modrinth-id: ${{ vars.MODRINTH_ID }}
modrinth-token: ${{ secrets.MODRINTH_TOKEN }}
modrinth-featured: false
curseforge-id: ${{ vars.CURSEFORGE_ID }}
curseforge-token: ${{ secrets.CURSEFORGE_TOKEN }}
github-token: ${{ secrets.GITHUB_TOKEN }}
name: OptiGUI ${{ github.ref_name }}
files: |
dist/OptiGUI/build/libs/!(*-@(dev|sources|javadoc)).jar
dist/OptiGUI/build/libs/*-@(dev|sources|javadoc).jar
dist/Api/build/libs/!(*-@(dev|sources|javadoc)).jar
changelog-file: CHANGELOG.g.md
game-version-filter: releases
java: ${{ steps.load-versions.outputs.JAVA_VERSION }}
- name: Delete build output
uses: geekyeggo/delete-artifact@v2
with:
name: jars
useGlob: false
failOnError: false
push-docs:
name: Push documentation
runs-on: ubuntu-latest
needs: build
env:
VERSION: ${{ github.ref_name }}
steps:
- name: Checkout repository
uses: actions/checkout@v3
with:
fetch-depth: 0
ref: docs
- name: Configure git
run: |
git config user.email "[email protected]"
git config user.name "github-actions[bot]"
- name: Download Kotlin documentation
uses: actions/download-artifact@v3
with:
name: kdoc
path: docs/kdoc/${{ github.ref_name }}
- name: Download Java documentation
uses: actions/download-artifact@v3
with:
name: javadoc
path: docs/javadoc/${{ github.ref_name }}
- name: Update latest documentation folder (Kotlin)
run: |
cd docs/kdoc
unlink latest
ln -s $VERSION latest
- name: Update latest documentation folder (Java)
run: |
cd docs/javadoc
unlink latest
ln -s $VERSION latest
- name: Update links
run: |
sed -i "s|#CI_KDOC_PLACEHOLDER|#CI_KDOC_PLACEHOLDER\n - $VERSION: kdoc/$VERSION|g" mkdocs.yml
sed -i "s|#CI_JAVADOC_PLACEHOLDER|#CI_JAVADOC_PLACEHOLDER\n - $VERSION: javadoc/$VERSION|g" mkdocs.yml
- name: Commit documentation
run: |
git add docs
git commit -a -m "Add documentation for $VERSION"
- name: Push documentation
uses: ad-m/github-push-action@master
with:
branch: docs
- name: Delete documentation artifacts
uses: geekyeggo/delete-artifact@v2
with:
name: |
kdoc
javadoc
useGlob: false
failOnError: false
publish-docs:
name: Publish documentation
runs-on: ubuntu-latest
needs: push-docs
steps:
- name: Checkout repository
uses: actions/checkout@v3
with:
ref: docs
- name: Configure git
run: |
git config user.email "[email protected]"
git config user.name "github-actions[bot]"
- name: Publish documentation
uses: mhausenblas/mkdocs-deploy-gh-pages@master
env:
GITHUB_TOKEN: ${{ github.token }}