chore: changelog #49
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Create Release | |
| on: | |
| push: | |
| tags: | |
| - 'v*.*.*' | |
| permissions: | |
| contents: write | |
| jobs: | |
| build-and-release: | |
| runs-on: ubuntu-latest | |
| env: | |
| TURBO_FORCE: true | |
| TURBO_API_URL: https://api.vercel.com/v5/artifacts | |
| TURBO_TOKEN: ${{ secrets.TURBO_TOKEN }} | |
| TURBO_TEAM: ${{ secrets.TURBO_TEAM }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Get latest tag from GitHub API | |
| id: get_latest_tag | |
| run: | | |
| TAG_NAME=$(curl -sL "https://api.github.com/repos/francyfox/BunSqStat/tags" | jq -r '.[0].name') | |
| echo "LATEST_TAG=$TAG_NAME" >> $GITHUB_ENV | |
| - name: Cache Turbo and dependencies | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| .turbo | |
| **/node_modules | |
| key: ${{ runner.os }}-turbo-node-${{ hashFiles('**/package.json', '**/bun.lock') }} | |
| restore-keys: | | |
| ${{ runner.os }}-turbo-node- | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Install and build | |
| run: | | |
| cd apps/web && bun i | |
| cd ../server && bun i | |
| cd .. | |
| bun i | |
| bunx turbo run server#build | |
| bunx turbo run web#build | |
| - name: Build server binary | |
| run: | | |
| cd apps/server | |
| bun run build:binary | |
| - name: Prepare releases directory | |
| run: | | |
| mkdir -p releases/web | |
| mkdir -p releases/backend | |
| mkdir -p releases/docs | |
| cp .env.example releases/ | |
| cp LICENSE releases/LICENSE | |
| cp README.md releases/README.md | |
| if [ -d apps/web/dist ]; then cp -r apps/web/dist/* releases/web/; fi | |
| if [ -d apps/server/dist ]; then cp -r apps/server/dist/* releases/backend/; fi | |
| if [ -f apps/server/bunsqstat-backend-binary ]; then cp apps/server/bunsqstat-backend-binary releases/backend/; fi | |
| - name: Archive | |
| run: | | |
| zip -r bunsqstat.zip releases | |
| - name: Create Release | |
| id: create_release | |
| uses: softprops/action-gh-release@v2 | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| with: | |
| tag_name: ${{ env.LATEST_TAG }} | |
| name: Release ${{ env.LATEST_TAG }} | |
| files: | | |
| bunsqstat.zip |