diff --git a/package-lock.json b/package-lock.json index 7384537241..9e180fd840 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26570,7 +26570,7 @@ "@contentstack/cli-auth": "~1.6.1", "@contentstack/cli-cm-bootstrap": "~1.16.1", "@contentstack/cli-cm-branches": "~1.6.0", - "@contentstack/cli-cm-bulk-publish": "~1.10.0", + "@contentstack/cli-cm-bulk-publish": "~1.10.1", "@contentstack/cli-cm-clone": "~1.16.1", "@contentstack/cli-cm-export": "~1.20.1", "@contentstack/cli-cm-export-to-csv": "~1.9.1", @@ -26975,7 +26975,7 @@ }, "packages/contentstack-bulk-publish": { "name": "@contentstack/cli-cm-bulk-publish", - "version": "1.10.0", + "version": "1.10.1", "license": "MIT", "dependencies": { "@contentstack/cli-command": "~1.6.1", diff --git a/packages/contentstack-bulk-publish/package.json b/packages/contentstack-bulk-publish/package.json index 20e6a777d5..acd3ebb087 100644 --- a/packages/contentstack-bulk-publish/package.json +++ b/packages/contentstack-bulk-publish/package.json @@ -1,7 +1,7 @@ { "name": "@contentstack/cli-cm-bulk-publish", "description": "Contentstack CLI plugin for bulk publish actions", - "version": "1.10.0", + "version": "1.10.1", "author": "Contentstack", "bugs": "https://github.com/contentstack/cli/issues", "dependencies": { diff --git a/packages/contentstack-bulk-publish/src/commands/cm/entries/publish.js b/packages/contentstack-bulk-publish/src/commands/cm/entries/publish.js index 981d818c14..6a7b65883f 100644 --- a/packages/contentstack-bulk-publish/src/commands/cm/entries/publish.js +++ b/packages/contentstack-bulk-publish/src/commands/cm/entries/publish.js @@ -88,16 +88,16 @@ class PublishEntriesCommand extends Command { updatedFlags.environment = updatedFlags['source-env']; updatedFlags.onlyEntries = true; if (updatedFlags.locales instanceof Array) { - updatedFlags.locales.forEach((locale) => { + for (const locale of updatedFlags.locales) { updatedFlags.locale = locale; - publishFunction(startCrossPublish); - }); + await publishFunction(startCrossPublish); + } } else { - updatedFlags.locale = locales; - publishFunction(startCrossPublish); + updatedFlags.locale = updatedFlags.locales; + await publishFunction(startCrossPublish); } } else { - publishFunction(startPublish); + await publishFunction(startPublish); } } catch (error) { let message = formatError(error); diff --git a/packages/contentstack-bulk-publish/src/producer/cross-publish.js b/packages/contentstack-bulk-publish/src/producer/cross-publish.js index 1fa8828a49..07c64a9671 100644 --- a/packages/contentstack-bulk-publish/src/producer/cross-publish.js +++ b/packages/contentstack-bulk-publish/src/producer/cross-publish.js @@ -3,6 +3,7 @@ /* eslint-disable camelcase */ /* eslint-disable complexity */ /* eslint-disable max-params */ +const chalk = require('chalk'); const { configHandler, cliux } = require('@contentstack/cli-utilities'); const { getQueue } = require('../util/queue'); const { performBulkPublish, publishEntry, publishAsset, initializeLogger } = require('../consumer/publish'); @@ -13,7 +14,7 @@ const entryQueue = getQueue(); const assetQueue = getQueue(); const { Command } = require('@contentstack/cli-command'); const command = new Command(); -const { isEmpty } = require('../util'); +const { isEmpty, formatError } = require('../util'); const { fetchBulkPublishLimit } = require('../util/common-utility'); const { generateBulkPublishStatusUrl } = require('../util/generate-bulk-publish-url'); const VARIANTS_PUBLISH_API_VERSION = '3.2'; @@ -204,7 +205,13 @@ async function getSyncEntries( syncData['type'] = queryParamsObj.type; } - const entriesResponse = await Stack.sync(syncData); + let entriesResponse; + try { + entriesResponse = await Stack.sync(syncData); + } catch (syncError) { + console.log(chalk.red(`Failed to sync from environment '${queryParamsObj.environment}' with error ${formatError(syncError)}`)); + return reject(syncError); + } if (filter?.content_type_uid?.length) { entriesResponse.items = entriesResponse.items.filter((entry) => @@ -241,6 +248,7 @@ async function getSyncEntries( destEnv, apiVersion, bulkPublishLimit, + variantsFlag, entriesResponse.pagination_token, ); }, 3000); diff --git a/packages/contentstack-bulk-publish/src/producer/unpublish.js b/packages/contentstack-bulk-publish/src/producer/unpublish.js index e774a85cac..7732f3003e 100644 --- a/packages/contentstack-bulk-publish/src/producer/unpublish.js +++ b/packages/contentstack-bulk-publish/src/producer/unpublish.js @@ -3,6 +3,7 @@ /* eslint-disable complexity */ /* eslint-disable no-console */ /* eslint-disable camelcase */ +const chalk = require('chalk'); const { configHandler, cliux } = require('@contentstack/cli-utilities'); const { getQueue } = require('../util/queue'); const { performBulkUnPublish, UnpublishEntry, UnpublishAsset, initializeLogger } = require('../consumer/publish'); @@ -13,7 +14,7 @@ const entryQueue = getQueue(); const assetQueue = getQueue(); const { Command } = require('@contentstack/cli-command'); const command = new Command(); -const { isEmpty } = require('../util'); +const { isEmpty, formatError } = require('../util'); const { fetchBulkPublishLimit } = require('../util/common-utility'); const { generateBulkPublishStatusUrl } = require('../util/generate-bulk-publish-url'); const VARIANTS_UNPUBLISH_API_VERSION = '3.2'; @@ -217,7 +218,13 @@ async function getSyncEntries( syncData['content_type_uid'] = queryParamsObj.content_type_uid; } - const entriesResponse = await Stack.sync(syncData); + let entriesResponse; + try { + entriesResponse = await Stack.sync(syncData); + } catch (syncError) { + console.log(chalk.red(`Failed to sync from environment '${queryParamsObj.environment}' with error ${formatError(syncError)}`)); + return reject(syncError); + } if (entriesResponse.items.length > 0) { if (variantsFlag) { queryParamsObj.apiVersion = VARIANTS_UNPUBLISH_API_VERSION; diff --git a/packages/contentstack/package.json b/packages/contentstack/package.json index 66b5082406..f28176821d 100755 --- a/packages/contentstack/package.json +++ b/packages/contentstack/package.json @@ -26,7 +26,7 @@ "@contentstack/cli-auth": "~1.6.1", "@contentstack/cli-cm-bootstrap": "~1.16.1", "@contentstack/cli-cm-branches": "~1.6.0", - "@contentstack/cli-cm-bulk-publish": "~1.10.0", + "@contentstack/cli-cm-bulk-publish": "~1.10.1", "@contentstack/cli-cm-clone": "~1.16.1", "@contentstack/cli-cm-export": "~1.20.1", "@contentstack/cli-cm-export-to-csv": "~1.9.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4eedfb368b..a74d672a6d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -16,7 +16,7 @@ importers: '@contentstack/cli-auth': ~1.6.1 '@contentstack/cli-cm-bootstrap': ~1.16.1 '@contentstack/cli-cm-branches': ~1.6.0 - '@contentstack/cli-cm-bulk-publish': ~1.10.0 + '@contentstack/cli-cm-bulk-publish': ~1.10.1 '@contentstack/cli-cm-clone': ~1.16.1 '@contentstack/cli-cm-export': ~1.20.1 '@contentstack/cli-cm-export-to-csv': ~1.9.1