name: Release on: push: tags: - 'v*' jobs: release: runs-on: ubuntu-latest steps: - name: Checkout run: | git clone --depth 1 --branch ${{ gitea.ref_name }} https://oauth2:${{ secrets.RELEASE_TOKEN }}@git.lokili.xyz/${{ gitea.repository }}.git . - name: Setup Java 21 run: | curl -sL https://download.java.net/java/GA/jdk21.0.2/f2283984656d49d69e91c558476027ac/13/GPL/openjdk-21.0.2_linux-x64_bin.tar.gz | tar xz - name: Build run: | export JAVA_HOME=$PWD/jdk-21.0.2 export PATH=$JAVA_HOME/bin:$PATH chmod +x gradlew ./gradlew build --no-daemon - name: Create Release run: | VERSION=${{ gitea.ref_name }} VERSION=${VERSION#v} JAR_FILE=$(ls build/libs/LoChat-*.jar | head -1) curl -X POST \ -H "Authorization: token ${{ secrets.RELEASE_TOKEN }}" \ -H "Content-Type: application/json" \ "https://git.lokili.xyz/api/v1/repos/${{ gitea.repository }}/releases" \ -d "{\"tag_name\": \"${{ gitea.ref_name }}\", \"name\": \"LoChat $VERSION\", \"body\": \"Release $VERSION\"}" sleep 2 RELEASE_ID=$(curl -s -H "Authorization: token ${{ secrets.RELEASE_TOKEN }}" \ "https://git.lokili.xyz/api/v1/repos/${{ gitea.repository }}/releases/tags/${{ gitea.ref_name }}" | grep -o '"id":[0-9]*' | head -1 | cut -d: -f2) curl -X POST \ -H "Authorization: token ${{ secrets.RELEASE_TOKEN }}" \ -H "Content-Type: application/octet-stream" \ "https://git.lokili.xyz/api/v1/repos/${{ gitea.repository }}/releases/$RELEASE_ID/assets?name=LoChat-$VERSION.jar" \ --data-binary @"$JAR_FILE"