name: Release update on: workflow_dispatch: jobs: release-update: runs-on: ubuntu-latest if: github.repository == 'patrykandpatrick/vico' permissions: contents: write steps: - uses: actions/checkout@v4 with: path: vico - uses: actions/setup-java@v4 with: java-version: 17 distribution: zulu - uses: gradle/gradle-build-action@v3 - run: | git config --global user.email "96002241+patrykandpatrickbot@users.noreply.github.com" git config --global user.name "Patryk & Patrick Bot" git clone https://${{ secrets.BOT_PAT }}@github.com/patrykandpatrick/vico-api-reference cd ${{ github.workspace }}/vico VERSION_NAME=$(grep -oP "(?<=version_name).*(?=\",)" versions.gradle | grep -oP "(?<=\").*") echo "VERSION_NAME=$VERSION_NAME" >> $GITHUB_ENV echo "TAG_NAME=v$VERSION_NAME" >> $GITHUB_ENV IS_PRERELEASE=false echo $VERSION_NAME | grep -q "alpha\|beta" && IS_PRERELEASE=true echo "IS_PRERELEASE=$IS_PRERELEASE" >> $GITHUB_ENV ./gradlew assembleDebug - uses: softprops/action-gh-release@v2 with: draft: true files: ${{ github.workspace }}/vico/sample/build/outputs/apk/debug/*.apk prerelease: ${{ env.IS_PRERELEASE }} tag_name: ${{ env.TAG_NAME }} token: ${{ secrets.BOT_PAT }} - run: | cd ${{ github.workspace }}/vico git remote set-url origin https://patrykandpatrickbot:${{ secrets.BOT_PAT }}@github.com/patrykandpatrick/vico ./gradlew dokkaHtmlMultiModule API_REFERENCE_DESTINATION=${{ github.workspace }}/vico-api-reference/latest rm -fr $API_REFERENCE_DESTINATION/* cp -R ${{ github.workspace }}/vico/vico/build/dokka/htmlMultiModule/. $API_REFERENCE_DESTINATION cd ${{ github.workspace }}/vico-api-reference git remote set-url origin https://patrykandpatrickbot:${{ secrets.BOT_PAT }}@github.com/patrykandpatrick/vico-api-reference git add -A git diff --staged --quiet HEAD || git commit -m "Update API reference" git push origin cd ${{ github.workspace }}/vico git push origin ./gradlew publish env: ORG_GRADLE_PROJECT_GPG_KEY: ${{ secrets.GPG_KEY }} ORG_GRADLE_PROJECT_GPG_KEY_PASSWORD: ${{ secrets.GPG_KEY_PASSWORD }} ORG_GRADLE_PROJECT_OSSRH_TOKEN: ${{ secrets.OSSRH_TOKEN }} ORG_GRADLE_PROJECT_OSSRH_TOKEN_PASSWORD: ${{ secrets.OSSRH_TOKEN_PASSWORD }}