From 2fd0f026d38c54ddd6a542776fd90212d00fc456 Mon Sep 17 00:00:00 2001 From: Ralph Khreish <35776126+Crunchyman-ralph@users.noreply.github.com> Date: Wed, 13 Aug 2025 15:08:55 +0200 Subject: [PATCH] chore: remove pre-release CI for extension, too much work and doesn't make sense for us (#1129) --- .github/scripts/pre-release.mjs | 54 ---------- .github/workflows/extension-pre-release.yml | 110 -------------------- .github/workflows/pre-release.yml | 4 +- 3 files changed, 1 insertion(+), 167 deletions(-) delete mode 100755 .github/scripts/pre-release.mjs delete mode 100644 .github/workflows/extension-pre-release.yml diff --git a/.github/scripts/pre-release.mjs b/.github/scripts/pre-release.mjs deleted file mode 100755 index 15a191c0..00000000 --- a/.github/scripts/pre-release.mjs +++ /dev/null @@ -1,54 +0,0 @@ -#!/usr/bin/env node -import { readFileSync, existsSync } from 'node:fs'; -import { join, dirname } from 'node:path'; -import { fileURLToPath } from 'node:url'; -import { - findRootDir, - runCommand, - getPackageVersion, - createAndPushTag -} from './utils.mjs'; - -const __filename = fileURLToPath(import.meta.url); -const __dirname = dirname(__filename); - -const rootDir = findRootDir(__dirname); -const extensionPkgPath = join(rootDir, 'apps', 'extension', 'package.json'); - -console.log('🚀 Starting pre-release process...'); - -// Check if we're in RC mode -const preJsonPath = join(rootDir, '.changeset', 'pre.json'); -if (!existsSync(preJsonPath)) { - console.error('⚠️ Not in RC mode. Run "npx changeset pre enter rc" first.'); - process.exit(1); -} - -try { - const preJson = JSON.parse(readFileSync(preJsonPath, 'utf8')); - if (preJson.tag !== 'rc') { - console.error(`⚠️ Not in RC mode. Current tag: ${preJson.tag}`); - process.exit(1); - } -} catch (error) { - console.error('Failed to read pre.json:', error.message); - process.exit(1); -} - -// Get current extension version -const extensionVersion = getPackageVersion(extensionPkgPath); -console.log(`Extension version: ${extensionVersion}`); - -// Run changeset publish for npm packages -console.log('📦 Publishing npm packages...'); -runCommand('npx', ['changeset', 'publish']); - -// Create tag for extension pre-release if it doesn't exist -const extensionTag = `extension-rc@${extensionVersion}`; -const tagCreated = createAndPushTag(extensionTag); - -if (tagCreated) { - console.log('This will trigger the extension-pre-release workflow...'); -} - -console.log('✅ Pre-release process completed!'); diff --git a/.github/workflows/extension-pre-release.yml b/.github/workflows/extension-pre-release.yml deleted file mode 100644 index 44526b3b..00000000 --- a/.github/workflows/extension-pre-release.yml +++ /dev/null @@ -1,110 +0,0 @@ -name: Extension Pre-Release - -on: - push: - tags: - - "extension-rc@*" - -permissions: - contents: write - -concurrency: extension-pre-release-${{ github.ref }} - -jobs: - publish-extension-rc: - runs-on: ubuntu-latest - environment: extension-release - steps: - - uses: actions/checkout@v4 - - - uses: actions/setup-node@v4 - with: - node-version: 20 - - - name: Cache node_modules - uses: actions/cache@v4 - with: - path: | - node_modules - */*/node_modules - key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} - restore-keys: | - ${{ runner.os }}-node- - - - name: Install Extension Dependencies - working-directory: apps/extension - run: npm ci - timeout-minutes: 5 - - - name: Type Check Extension - working-directory: apps/extension - run: npm run check-types - env: - FORCE_COLOR: 1 - - - name: Build Extension - working-directory: apps/extension - run: npm run build - env: - FORCE_COLOR: 1 - - - name: Package Extension - working-directory: apps/extension - run: npm run package - env: - FORCE_COLOR: 1 - - - name: Create VSIX Package (Pre-Release) - working-directory: apps/extension/vsix-build - run: npx vsce package --no-dependencies --pre-release - env: - FORCE_COLOR: 1 - - - name: Get VSIX filename - id: vsix-info - working-directory: apps/extension/vsix-build - run: | - VSIX_FILE=$(find . -maxdepth 1 -name "*.vsix" -type f | head -n1 | xargs basename) - if [ -z "$VSIX_FILE" ]; then - echo "Error: No VSIX file found" - exit 1 - fi - echo "vsix-filename=$VSIX_FILE" >> "$GITHUB_OUTPUT" - echo "Found VSIX: $VSIX_FILE" - - - name: Publish to VS Code Marketplace (Pre-Release) - working-directory: apps/extension/vsix-build - run: npx vsce publish --packagePath "${{ steps.vsix-info.outputs.vsix-filename }}" --pre-release - env: - VSCE_PAT: ${{ secrets.VSCE_PAT }} - FORCE_COLOR: 1 - - - name: Install Open VSX CLI - run: npm install -g ovsx - - - name: Publish to Open VSX Registry (Pre-Release) - working-directory: apps/extension/vsix-build - run: ovsx publish "${{ steps.vsix-info.outputs.vsix-filename }}" --pre-release - env: - OVSX_PAT: ${{ secrets.OVSX_PAT }} - FORCE_COLOR: 1 - - - name: Upload Build Artifacts - uses: actions/upload-artifact@v4 - with: - name: extension-pre-release-${{ github.ref_name }} - path: | - apps/extension/vsix-build/*.vsix - apps/extension/dist/ - retention-days: 30 - - notify-success: - needs: publish-extension-rc - if: success() - runs-on: ubuntu-latest - steps: - - name: Success Notification - run: | - echo "🚀 Extension ${{ github.ref_name }} successfully published as pre-release!" - echo "📦 Available on VS Code Marketplace (Pre-Release)" - echo "🌍 Available on Open VSX Registry (Pre-Release)" \ No newline at end of file diff --git a/.github/workflows/pre-release.yml b/.github/workflows/pre-release.yml index dda73040..fc9b71a6 100644 --- a/.github/workflows/pre-release.yml +++ b/.github/workflows/pre-release.yml @@ -68,12 +68,10 @@ jobs: - name: Create Release Candidate Pull Request or Publish Release Candidate to npm uses: changesets/action@v1 with: - publish: node ./.github/scripts/pre-release.mjs + publish: npx changeset publish env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} NPM_TOKEN: ${{ secrets.NPM_TOKEN }} - VSCE_PAT: ${{ secrets.VSCE_PAT }} - OVSX_PAT: ${{ secrets.OVSX_PAT }} - name: Commit & Push changes uses: actions-js/push@master