name: Release — Package & Publish on: push: tags: - 'v*.*.*' # Triggers on: git tag v0.1.0 && git push --tags jobs: release: name: Build & Package Release runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Setup Node.js uses: actions/setup-node@v4 with: node-version: '22' cache: 'npm' - name: Install dependencies run: npm ci - name: Run tests run: npm test - name: Build extension run: npm run build - name: Package as ZIP (Chrome Web Store) run: npm run zip - name: Get version from tag id: version run: echo "VERSION=${GITHUB_REF#refs/tags/}" >> $GITHUB_OUTPUT - name: Create Gitea Release uses: actions/create-release@v1 env: GITHUB_TOKEN: ${{ secrets.GITEA_TOKEN }} with: tag_name: ${{ github.ref }} release_name: LexAI ${{ steps.version.outputs.VERSION }} body: | ## LexAI ${{ steps.version.outputs.VERSION }} ### Installation 1. Download `lexai-chrome-mv3.zip` below 2. Go to `chrome://extensions` 3. Enable Developer Mode 4. Click "Load unpacked" → extract the zip first ### What's new See CHANGELOG.md for details. draft: false prerelease: false - name: Upload ZIP to Release uses: actions/upload-release-asset@v1 env: GITHUB_TOKEN: ${{ secrets.GITEA_TOKEN }} with: upload_url: ${{ steps.create_release.outputs.upload_url }} asset_path: .output/lexai-*.zip asset_name: lexai-chrome-mv3-${{ steps.version.outputs.VERSION }}.zip asset_content_type: application/zip