name: Release on: workflow_dispatch: push: jobs: release: name: Release permissions: contents: write runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 with: fetch-depth: 0 - name: Setup Java uses: actions/setup-java@v4 with: distribution: temurin java-version: '21' - name: Setup Node.js uses: actions/setup-node@v4 with: node-version: 'lts/*' cache: npm - name: Install dependencies run: npm ci - name: Release id: release env: GITEA_TOKEN: ${{ secrets.GITEA_TOKEN }} GITEA_URL: ${{ gitea.server_url }} GITEA_REPOSITORY: ${{ gitea.repository }} GITEA_REF_NAME: ${{ gitea.ref_name }} MORPHE_REGISTRY_USERNAME: ${{ secrets.MORPHE_REGISTRY_USERNAME }} MORPHE_REGISTRY_TOKEN: ${{ secrets.MORPHE_REGISTRY_TOKEN }} run: npx semantic-release # Semantic Release performs the Gradle build while publishing. Build only # when no release was produced so every push still verifies compilation. - name: Verify project compiles if: steps.release.outputs.new_release_published != 'true' env: MORPHE_REGISTRY_USERNAME: ${{ secrets.MORPHE_REGISTRY_USERNAME }} MORPHE_REGISTRY_TOKEN: ${{ secrets.MORPHE_REGISTRY_TOKEN }} run: ./gradlew :patches:buildAndroid clean --no-daemon