@@ -6,6 +6,7 @@ const { performBulkPublish, publishAsset, initializeLogger } = require('../consu
66const retryFailedLogs = require ( '../util/retryfailed' ) ;
77const { validateFile } = require ( '../util/fs' ) ;
88const { isEmpty } = require ( '../util' ) ;
9+ const { fetchBulkPublishLimit } = require ( '../util/common-utility' ) ;
910
1011const queue = getQueue ( ) ;
1112let logFileName ;
@@ -14,7 +15,7 @@ let filePath;
1415
1516/* eslint-disable no-param-reassign */
1617
17- async function getAssets ( stack , folder , bulkPublish , environments , locale , apiVersion , skip = 0 ) {
18+ async function getAssets ( stack , folder , bulkPublish , environments , locale , apiVersion , bulkPublishLimit , skip = 0 ) {
1819 return new Promise ( ( resolve , reject ) => {
1920 let queryParams = {
2021 folder : folder ,
@@ -33,18 +34,27 @@ async function getAssets(stack, folder, bulkPublish, environments, locale, apiVe
3334 let assets = assetResponse . items ;
3435 for ( let index = 0 ; index < assetResponse . items . length ; index ++ ) {
3536 if ( assets [ index ] . is_dir === true ) {
36- await getAssets ( stack , assets [ index ] . uid , bulkPublish , environments , locale , apiVersion , 0 ) ;
37+ await getAssets (
38+ stack ,
39+ assets [ index ] . uid ,
40+ bulkPublish ,
41+ environments ,
42+ locale ,
43+ apiVersion ,
44+ bulkPublishLimit ,
45+ 0 ,
46+ ) ;
3747 continue ;
3848 }
3949 if ( bulkPublish ) {
40- if ( bulkPublishSet . length < 10 ) {
50+ if ( bulkPublishSet . length < bulkPublishLimit ) {
4151 bulkPublishSet . push ( {
4252 uid : assets [ index ] . uid ,
4353 locale,
4454 publish_details : assets [ index ] . publish_details || [ ] ,
4555 } ) ;
4656 }
47- if ( bulkPublishSet . length === 10 ) {
57+ if ( bulkPublishSet . length === bulkPublishLimit ) {
4858 await queue . Enqueue ( {
4959 assets : bulkPublishSet ,
5060 Type : 'asset' ,
@@ -56,7 +66,11 @@ async function getAssets(stack, folder, bulkPublish, environments, locale, apiVe
5666 bulkPublishSet = [ ] ;
5767 }
5868
59- if ( assetResponse . items . length - 1 === index && bulkPublishSet . length > 0 && bulkPublishSet . length < 10 ) {
69+ if (
70+ assetResponse . items . length - 1 === index &&
71+ bulkPublishSet . length > 0 &&
72+ bulkPublishSet . length < bulkPublishLimit
73+ ) {
6074 await queue . Enqueue ( {
6175 assets : bulkPublishSet ,
6276 Type : 'asset' ,
@@ -81,7 +95,7 @@ async function getAssets(stack, folder, bulkPublish, environments, locale, apiVe
8195 if ( skip === assetResponse . count ) {
8296 return resolve ( true ) ;
8397 }
84- await getAssets ( stack , folder , bulkPublish , environments , locale , apiVersion , skip ) ;
98+ await getAssets ( stack , folder , bulkPublish , environments , locale , apiVersion , bulkPublishLimit , skip ) ;
8599 return resolve ( ) ;
86100 } else {
87101 resolve ( ) ;
@@ -133,8 +147,9 @@ async function start({ retryFailed, bulkPublish, environments, folderUid, locale
133147 }
134148 } else if ( folderUid ) {
135149 setConfig ( config , bulkPublish ) ;
150+ const bulkPublishLimit = fetchBulkPublishLimit ( stack ?. org_uid ) ;
136151 for ( const element of locales ) {
137- await getAssets ( stack , folderUid , bulkPublish , environments , element , apiVersion ) ;
152+ await getAssets ( stack , folderUid , bulkPublish , environments , element , apiVersion , bulkPublishLimit ) ;
138153 }
139154 }
140155}
0 commit comments