From 006d3756051ca7677ea5fe4354d99b8ec6bbe6ae Mon Sep 17 00:00:00 2001 From: doprz <52579214+doprz@users.noreply.github.com> Date: Tue, 14 Oct 2025 20:06:46 -0500 Subject: [PATCH] fix: scripts and CI/CD --- .github/workflows/release.yml | 113 +++++++++++++++++++--------------- package.json | 2 +- 2 files changed, 63 insertions(+), 52 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 6d1ad23c..c92df9ad 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,63 +1,74 @@ name: Release on: - pull_request: - push: - branches: - - main + pull_request: + push: + branches: + - main concurrency: ${{ github.workflow }}-${{ github.ref }} jobs: - nix-check: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v5 - - uses: cachix/install-nix-action@v31 - with: - github_access_token: ${{ secrets.GITHUB_TOKEN }} - - run: nix flake check + nix-check: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v5 + - uses: cachix/install-nix-action@v31 + with: + github_access_token: ${{ secrets.GITHUB_TOKEN }} + - run: nix flake check - release: - name: Release - runs-on: ubuntu-latest - needs: nix-check - if: github.event_name == 'push' && github.ref == 'refs/heads/main' - permissions: - contents: write - pull-requests: write - steps: - - name: Checkout Repo - uses: actions/checkout@v5 - with: - fetch-depth: 0 + release: + name: Release + runs-on: ubuntu-latest + needs: nix-check + if: github.event_name == 'push' && github.ref == 'refs/heads/main' + permissions: + contents: write + pull-requests: write + steps: + - name: Checkout Repo + uses: actions/checkout@v5 + with: + fetch-depth: 0 - - name: Install Nix - uses: cachix/install-nix-action@v31 - with: - github_access_token: ${{ secrets.GITHUB_TOKEN }} + - name: Install Nix + uses: cachix/install-nix-action@v31 + with: + github_access_token: ${{ secrets.GITHUB_TOKEN }} - - name: Install Dependencies - run: nix develop .#full --command pnpm install --frozen-lockfile + - name: Install Dependencies + run: nix develop .#full --command pnpm install --frozen-lockfile - - name: Create Release Pull Request or Publish - id: changesets - uses: changesets/action@v1 - with: - version: nix develop .#full --command pnpm run version - publish: nix develop .#full --command pnpm run release - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: Create Release Pull Request or Publish + id: changesets + uses: changesets/action@v1 + with: + version: nix develop .#full --command pnpm run version + publish: nix develop .#full --command pnpm run release + commit: 'feat(release): version UTRP' + title: 'feat(release): version UTRP' + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - name: Create GitHub Release with Assets - if: steps.changesets.outputs.published == 'true' - uses: softprops/action-gh-release@v5 - with: - tag_name: v${{ steps.changesets.outputs.publishedPackages[0].version }} - name: Release v${{ steps.changesets.outputs.publishedPackages[0].version }} - files: | - packages/*.zip - draft: false - prerelease: false - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file + - name: Get UTRP Version and Tag + if: steps.changesets.outputs.hasChangesets == 'false' + id: version + run: | + VERSION=$(nix develop --command node -p "require('./package.json').version") + echo "version=$VERSION" >> $GITHUB_OUTPUT + echo "tag=v$VERSION" >> $GITHUB_OUTPUT + + - name: Create GitHub Release with Assets + if: steps.changesets.outputs.hasChangesets == 'false' + uses: softprops/action-gh-release@v2 + with: + tag_name: ${{ steps.version.outputs.tag }} + name: Release ${{ steps.version.outputs.tag }} + files: | + package/ut-registration-plus-${{ steps.version.outputs.version }}.zip + generate_release_notes: true + draft: false + prerelease: false + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/package.json b/package.json index e9cebfef..97b0b586 100644 --- a/package.json +++ b/package.json @@ -15,7 +15,7 @@ "zip:to-publish": "SENTRY_ENV='production' pnpm zip", "changeset": "changeset", "version": "changeset version && pnpm run generate-changelog", - "release": "pnpm run zip-to-publish && changeset tag", + "release": "pnpm run zip:to-publish && changeset tag", "prettier": "prettier src --check", "prettier:fix": "prettier src --write", "lint": "eslint src --ext ts,tsx --report-unused-disable-directives",