name: Build on: push: branches: ['**'] tags: ['v*'] pull_request: workflow_dispatch: env: # Public URL of this Gitea instance. The runner is handed the instance's # internal address (a LAN IP), which is no good in a manifest the TV fetches. PUBLIC_SERVER_URL: https://git.crylia.de jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: node-version: '20' - name: Install ares CLI run: npm install - name: Build run: npm run build - name: Package IPK run: npm run package - name: Generate manifest and repository index run: npm run manifest - name: Show what was built run: ls -la dist # Tag a commit with v (matching package.json) to publish a # release. The repository URL for the Homebrew Channel stays stable: # ///releases/download/latest/apps.json - name: Write release notes if: startsWith(github.ref, 'refs/tags/v') run: | cat > "${RUNNER_TEMP:-/tmp}/release-notes.md" <.ipk\`. EOF - name: Release if: startsWith(github.ref, 'refs/tags/v') env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: node tools/release-gitea.js --notes-from "${RUNNER_TEMP:-/tmp}/release-notes.md"