diff --git a/.github/workflows/release-v1-beta-core.yml b/.github/workflows/release-v1-beta-core.yml index dc92037258..0f45221313 100644 --- a/.github/workflows/release-v1-beta-core.yml +++ b/.github/workflows/release-v1-beta-core.yml @@ -1,11 +1,7 @@ name: Release CLI Core (v1 Beta) on: - workflow_dispatch: - push: - branches: [v1-beta] - paths: - - 'packages/contentstack/package.json' + workflow_call: jobs: build: @@ -28,6 +24,12 @@ jobs: - name: Clean the repository run: pnpm run clean:all + - name: Install root dependencies + run: pnpm install --frozen-lockfile + + - name: Build all packages + run: pnpm -r --sort run build + - name: Reading Configuration id: release_config uses: rgarcia-phi/json-to-variables@v1.1.0 @@ -35,15 +37,6 @@ jobs: filename: .github/config/release.json prefix: release - # Core CLI - - name: Install all dependencies - id: core-installation - if: ${{env.release_releaseAll == 'true' || env.release_plugins_core == 'true'}} - run: pnpm install --frozen-lockfile - - - name: Build all packages - run: pnpm -r --concurrency 1 run build - - name: Publishing core (Beta) id: publish-core uses: JS-DevTools/npm-publish@v3 diff --git a/.github/workflows/release-v1-beta-platform-plugins.yml b/.github/workflows/release-v1-beta-platform-plugins.yml index 83ee8a804c..7ab8251b6d 100644 --- a/.github/workflows/release-v1-beta-platform-plugins.yml +++ b/.github/workflows/release-v1-beta-platform-plugins.yml @@ -1,8 +1,7 @@ name: Release CLI Platform Plugins (v1 Beta) on: - push: - branches: [v1-beta] + workflow_call: jobs: build: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml old mode 100755 new mode 100644 index 2176205e42..faaee5d685 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,332 +1,15 @@ -name: Release CLI Plugins +name: CLI Release Pipeline on: push: - branches: [main] + branches: [v1-beta] jobs: - build: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: pnpm/action-setup@v4 - with: - version: 7 - - uses: actions/setup-node@v4 - with: - node-version: '22.x' - - - name: Enable Corepack - run: corepack enable - - - name: Install pnpm - run: corepack prepare pnpm@7 --activate - - - name: Install root dependencies - run: pnpm install - - - name: Reading Configuration - id: release_config - uses: rgarcia-phi/json-to-variables@v1.1.0 - with: - filename: .github/config/release.json - prefix: release - - name: Installing dependencies of dev dependencies - id: dev-dependencies-installation - if: ${{env.release_releaseAll == 'true' || env.release_plugins_dev-dependencies == 'true'}} - working-directory: ./packages/contentstack-dev-dependencies - run: npm install - - name: Compiling dev dependencies - if: ${{ steps.dev-dependencies-installation.conclusion == 'success' }} - working-directory: ./packages/contentstack-dev-dependencies - run: npm run prepack - - name: Publishing dev dependencies - uses: JS-DevTools/npm-publish@v3 - if: ${{ steps.dev-dependencies-installation.conclusion == 'success' }} - with: - token: ${{ secrets.NPM_TOKEN }} - package: ./packages/contentstack-dev-dependencies/package.json - - name: Installing dependencies of utilities - id: utilities-installation - if: ${{env.release_releaseAll == 'true' || env.release_plugins_utilities == 'true'}} - working-directory: ./packages/contentstack-utilities - run: npm install - - name: Compiling utilities - if: ${{ steps.utilities-installation.conclusion == 'success' }} - working-directory: ./packages/contentstack-utilities - run: npm run prepack - - name: Publishing utilities - uses: JS-DevTools/npm-publish@v3 - if: ${{ steps.utilities-installation.conclusion == 'success' }} - with: - token: ${{ secrets.NPM_TOKEN }} - package: ./packages/contentstack-utilities/package.json - - name: Installing dependencies of variants - id: variants-installation - if: ${{env.release_releaseAll == 'true' || env.release_plugins_utilities == 'true'}} - working-directory: ./packages/contentstack-variants - run: npm install - - name: Compiling variants - if: ${{ steps.variants-installation.conclusion == 'success' }} - working-directory: ./packages/contentstack-variants - run: npm run prepack - - name: Publishing variants - uses: JS-DevTools/npm-publish@v3 - if: ${{ steps.variants-installation.conclusion == 'success' }} - with: - token: ${{ secrets.NPM_TOKEN }} - package: ./packages/contentstack-variants/package.json - access: public - - name: Installing dependencies of command - id: command-installation - if: ${{env.release_releaseAll == 'true' || env.release_plugins_command == 'true'}} - working-directory: ./packages/contentstack-command - run: npm install - - name: Compiling command - if: ${{ steps.command-installation.conclusion == 'success' }} - working-directory: ./packages/contentstack-command - run: npm run prepack - - name: Publishing command - uses: JS-DevTools/npm-publish@v3 - if: ${{ steps.command-installation.conclusion == 'success' }} - with: - token: ${{ secrets.NPM_TOKEN }} - package: ./packages/contentstack-command/package.json - - name: Installing dependencies of config - id: config-installation - if: ${{env.release_releaseAll == 'true' || env.release_plugins_config == 'true'}} - working-directory: ./packages/contentstack-config - run: npm install - - name: Compiling config - if: ${{ steps.config-installation.conclusion == 'success' }} - working-directory: ./packages/contentstack-config - run: npm run prepack - - name: Publishing config - uses: JS-DevTools/npm-publish@v3 - if: ${{ steps.config-installation.conclusion == 'success' }} - with: - token: ${{ secrets.NPM_TOKEN }} - package: ./packages/contentstack-config/package.json - - name: Installing dependencies of auth - id: auth-installation - if: ${{env.release_releaseAll == 'true' || env.release_plugins_auth == 'true'}} - working-directory: ./packages/contentstack-auth - run: npm install - - name: Compiling auth - if: ${{ steps.auth-installation.conclusion == 'success' }} - working-directory: ./packages/contentstack-auth - run: npm run prepack - - name: Publishing auth - uses: JS-DevTools/npm-publish@v3 - if: ${{ steps.auth-installation.conclusion == 'success' }} - with: - token: ${{ secrets.NPM_TOKEN }} - package: ./packages/contentstack-auth/package.json - - name: Installing dependencies of export - id: export-installation - if: ${{ env.release_releaseAll == 'true' || env.release_plugins_export == 'true'}} - working-directory: ./packages/contentstack-export - run: npm install - - name: Compiling export - if: ${{ steps.export-installation.conclusion == 'success' }} - working-directory: ./packages/contentstack-export - run: npm run prepack - - name: Publishing export - uses: JS-DevTools/npm-publish@v3 - if: ${{ steps.export-installation.conclusion == 'success' }} - with: - token: ${{ secrets.NPM_TOKEN }} - package: ./packages/contentstack-export/package.json - - name: Installing dependencies of audit - id: audit-installation - if: ${{env.release_releaseAll == 'true' || env.release_plugins_audit == 'true'}} - working-directory: ./packages/contentstack-audit - run: npm install - - name: Compiling audit - if: ${{ steps.audit-installation.conclusion == 'success' }} - working-directory: ./packages/contentstack-audit - run: npm run prepack - - name: Publishing audit - uses: JS-DevTools/npm-publish@v3 - if: ${{ steps.audit-installation.conclusion == 'success' }} - with: - token: ${{ secrets.NPM_TOKEN }} - package: ./packages/contentstack-audit/package.json - access: public - - name: Installing dependencies of import - id: import-installation - if: ${{env.release_releaseAll == 'true' || env.release_plugins_import == 'true'}} - working-directory: ./packages/contentstack-import - run: npm install - - name: Compiling import - if: ${{ steps.import-installation.conclusion == 'success' }} - working-directory: ./packages/contentstack-import - run: npm run prepack - - name: Publishing import - uses: JS-DevTools/npm-publish@v3 - if: ${{ steps.import-installation.conclusion == 'success' }} - with: - token: ${{ secrets.NPM_TOKEN }} - package: ./packages/contentstack-import/package.json - - name: Installing dependencies of clone - id: clone-installation - if: ${{env.release_releaseAll == 'true' || env.release_plugins_clone == 'true'}} - working-directory: ./packages/contentstack-clone - run: npm install - - name: Compiling Clone - if: ${{ steps.clone-installation.conclusion == 'success' }} - working-directory: ./packages/contentstack-clone - run: npm run prepack - - name: Publishing clone - uses: JS-DevTools/npm-publish@v3 - if: ${{ steps.clone-installation.conclusion == 'success' }} - with: - token: ${{ secrets.NPM_TOKEN }} - package: ./packages/contentstack-clone/package.json - - name: Installing dependencies of import-setup - id: import-setup-installation - if: ${{env.release_releaseAll == 'true' || env.release_plugins_import_setup == 'true'}} - working-directory: ./packages/contentstack-import-setup - run: npm install - - name: Compiling import-setup - if: ${{ steps.import-setup-installation.conclusion == 'success' }} - working-directory: ./packages/contentstack-import-setup - run: npm run prepack - - name: Publishing import-setup - uses: JS-DevTools/npm-publish@v3 - if: ${{ steps.import-setup-installation.conclusion == 'success' }} - with: - token: ${{ secrets.NPM_TOKEN }} - package: ./packages/contentstack-import-setup/package.json - access: public - - name: Installing dependencies of export to csv - id: export-to-csv-installation - if: ${{env.release_releaseAll == 'true' || env.release_plugins_export-to-csv == 'true'}} - working-directory: ./packages/contentstack-export-to-csv - run: npm install - - name: Compiling export to csv - if: ${{ steps.export-to-csv-installation.conclusion == 'success' }} - working-directory: ./packages/contentstack-export-to-csv - run: npm run prepack - - name: Publishing export to csv - uses: JS-DevTools/npm-publish@v3 - if: ${{ steps.export-to-csv-installation.conclusion == 'success' }} - with: - token: ${{ secrets.NPM_TOKEN }} - package: ./packages/contentstack-export-to-csv/package.json - - name: Installing dependencies of migrate rte - id: migrate-rte-installation - if: ${{env.release_releaseAll == 'true' || env.release_plugins_migrate-rte == 'true'}} - working-directory: ./packages/contentstack-migrate-rte - run: npm install - - name: Publishing migrate rte - uses: JS-DevTools/npm-publish@v3 - if: ${{ steps.migrate-rte-installation.conclusion == 'success' }} - with: - token: ${{ secrets.NPM_TOKEN }} - package: ./packages/contentstack-migrate-rte/package.json - - name: Installing dependencies of migration - id: migration-installation - if: ${{env.release_releaseAll == 'true' || env.release_plugins_migration == 'true'}} - working-directory: ./packages/contentstack-migration - run: npm install - - name: Compiling Migration - if: ${{ steps.migration-installation.conclusion == 'success' }} - working-directory: ./packages/contentstack-migration - run: npm run prepack - - name: Publishing migration - uses: JS-DevTools/npm-publish@v3 - if: ${{ steps.migration-installation.conclusion == 'success' }} - with: - token: ${{ secrets.NPM_TOKEN }} - package: ./packages/contentstack-migration/package.json - - name: Installing dependencies of seed - id: seed-installation - if: ${{env.release_releaseAll == 'true' || env.release_plugins_seed == 'true'}} - working-directory: ./packages/contentstack-seed - run: npm install - - name: Compiling seed - if: ${{ steps.seed-installation.conclusion == 'success' }} - working-directory: ./packages/contentstack-seed - run: npm run prepack - - name: Publishing seed - uses: JS-DevTools/npm-publish@v3 - if: ${{ steps.seed-installation.conclusion == 'success' }} - with: - token: ${{ secrets.NPM_TOKEN }} - package: ./packages/contentstack-seed/package.json - - name: Installing dependencies of bootstrap - id: bootstrap-installation - if: ${{env.release_releaseAll == 'true' || env.release_plugins_bootstrap == 'true'}} - working-directory: ./packages/contentstack-bootstrap - run: npm install - - name: Compiling bootstrap - if: ${{ steps.bootstrap-installation.conclusion == 'success' }} - working-directory: ./packages/contentstack-bootstrap - run: npm run prepack - - name: Publishing bootstrap - uses: JS-DevTools/npm-publish@v3 - if: ${{ steps.bootstrap-installation.conclusion == 'success' }} - with: - token: ${{ secrets.NPM_TOKEN }} - package: ./packages/contentstack-bootstrap/package.json - - name: Installing dependencies of bulk publish - id: bulk-publish-installation - if: ${{env.release_releaseAll == 'true' || env.release_plugins_bulk-publish == 'true'}} - working-directory: ./packages/contentstack-bulk-publish - run: npm install - - name: Publishing bulk publish - uses: JS-DevTools/npm-publish@v3 - if: ${{ steps.bulk-publish-installation.conclusion == 'success' }} - with: - token: ${{ secrets.NPM_TOKEN }} - package: ./packages/contentstack-bulk-publish/package.json - - name: Installing dependencies of branches - id: branches-installation - if: ${{env.release_releaseAll == 'true' || env.release_plugins_branches == 'true'}} - working-directory: ./packages/contentstack-branches - run: npm install - - name: Compiling branches - if: ${{ steps.branches-installation.conclusion == 'success' }} - working-directory: ./packages/contentstack-branches - run: npm run prepack - - name: Publishing branches - uses: JS-DevTools/npm-publish@v3 - if: ${{ steps.branches-installation.conclusion == 'success' }} - with: - token: ${{ secrets.NPM_TOKEN }} - package: ./packages/contentstack-branches/package.json - access: public - - name: Installing dependencies of core - id: core-installation - if: ${{env.release_releaseAll == 'true' || env.release_plugins_core == 'true'}} - working-directory: ./packages/contentstack - run: npm install - - name: Compiling core - if: ${{ steps.core-installation.conclusion == 'success' }} - working-directory: ./packages/contentstack - run: npm run prepack - - name: Publishing core - id: publish-core - uses: JS-DevTools/npm-publish@v3 - if: ${{ steps.core-installation.conclusion == 'success' }} - with: - token: ${{ secrets.NPM_TOKEN }} - package: ./packages/contentstack/package.json - - uses: actions/checkout@v4 - if: ${{ steps.publish-core.conclusion == 'success' }} - with: - ref: 'prod-qa-pipeline' - - run: echo ${{ steps.publish-core.outputs.version }} > version.md - if: ${{ steps.publish-core.conclusion == 'success' }} - - uses: EndBug/add-and-commit@v9 - if: ${{ steps.publish-core.conclusion == 'success' }} - with: - message: 'Released version' - - name: Create Release - if: ${{ steps.publish-core.conclusion == 'success' }} - id: create_release - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - VERSION: ${{ steps.publish-core.outputs.version }} - run: gh release create v"$VERSION" --title "Release $VERSION" --generate-notes + plugins: + uses: ./.github/workflows/release-v1-beta-platform-plugins.yml + secrets: inherit + + core: + needs: plugins + uses: ./.github/workflows/release-v1-beta-core.yml + secrets: inherit diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 800d7b9bba..0ef31e8c7c 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -26,7 +26,7 @@ jobs: # run: mv packages/contentstack/package.json packages/contentstack/package.json.disabled || true - name: Install Dependencies (Excluding Contentstack) - run: pnpm install --frozen-lockfile + run: pnpm install --no-frozen-lockfile - name: Build all plugins (Excluding Contentstack) run: | diff --git a/.talismanrc b/.talismanrc index ca9851ab61..63c632b1e9 100644 --- a/.talismanrc +++ b/.talismanrc @@ -1,6 +1,10 @@ fileignoreconfig: + - filename: packages/contentstack-bootstrap/src/bootstrap/utils.ts + checksum: 6e6fb00bb11b03141e5ad27eeaa4af9718dc30520c3e73970bc208cc0ba2a7d2 + - filename: .github/workflows/release.yml + checksum: 73807361b1a862dc882846ac75fefca49e3c734db032e9aa80158f2a686bea13 - filename: pnpm-lock.yaml - checksum: 00d2cba7fffe932f86c5835d3dd23056a2055e6fa60d86175ca73710505b0d1d + checksum: 45b77e385a0b13c82ba125dcdc82d27a360132ff6edda801cd8b75943996c310 - filename: packages/contentstack-auth/src/commands/auth/logout.ts checksum: 20ff708d5a0ee56eb8786b19df07b49dacaddfa1deafe99c0397716c7865726d version: '1.0' diff --git a/packages/contentstack/package.json b/packages/contentstack/package.json index d54f3e6c11..eab2cc1671 100755 --- a/packages/contentstack/package.json +++ b/packages/contentstack/package.json @@ -1,7 +1,7 @@ { "name": "@contentstack/cli", "description": "Command-line tool (CLI) to interact with Contentstack v1-beta", - "version": "1.60.0-beta.5", + "version": "1.60.0-beta.6", "author": "Contentstack", "bin": { "csdx": "./bin/run.js"