name: Release on: push: tags: - "v*" jobs: release: name: Release runs-on: ubuntu-22.04 permissions: contents: write steps: - name: Code checkout uses: actions/checkout@v4 - name: Setup Node uses: actions/setup-node@v4 with: node-version: 20 cache: "yarn" - name: Install dependencies run: yarn install --frozen-lockfile - name: Build run: yarn build:production - name: Create release branch and bump version env: REF: ${{ github.ref }} run: | BRANCH=release/${REF:10} git config --local user.email "github-actions[bot]@users.noreply.github.com" git config --local user.name "github-actions[bot]" git checkout -b $BRANCH git push -u origin $BRANCH sed -i "s/ 'version' => 'canary',/ 'version' => '${REF:11}',/" config/app.php git add config/app.php git commit -m "ci(release): bump version" git push - name: Create release archive run: | rm -rf node_modules tests CODE_OF_CONDUCT.md CONTRIBUTING.md flake.lock flake.nix phpunit.xml shell.nix tar -czf panel.tar.gz * .editorconfig .env.example .eslintignore .eslintrc.js .gitignore .prettierrc.json - name: Create checksum run: | SUM=`sha256sum panel.tar.gz` echo $SUM > checksum.txt - name: Create release id: create_release uses: softprops/action-gh-release@v2 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: draft: true prerelease: ${{ contains(github.ref, 'rc') || contains(github.ref, 'beta') || contains(github.ref, 'alpha') }} files: | panel.tar.gz checksum.txt