diff --git a/ng-dev/misc/generated-files/update-generated-files.ts b/ng-dev/misc/generated-files/update-generated-files.ts index c04150a66..72f43c1f4 100644 --- a/ng-dev/misc/generated-files/update-generated-files.ts +++ b/ng-dev/misc/generated-files/update-generated-files.ts @@ -14,45 +14,50 @@ import {green, Log} from '../../utils/logging.js'; export async function updateGeneratedFileTargets(): Promise { const spinner = new Spinner('Querying for all generated file targets'); - // Query for all of the generated file targets - const result = await ChildProcess.spawn( - getBazelBin(), - [ - 'query', - `"kind(nodejs_binary, //...) intersect attr(name, '.update$', //...)"`, - '--output', - 'label', - ], - {mode: 'silent'}, - ); - - if (result.status !== 0) { - spinner.complete(); - throw Error(`Unexpected error: ${result.stderr}`); - } + try { + // Query for all of the generated file targets + const result = await ChildProcess.spawn( + getBazelBin(), + [ + 'query', + `"kind(nodejs_binary, //...) intersect attr(name, '.update$', //...)"`, + '--output', + 'label', + ], + {mode: 'silent'}, + ); + + if (result.status !== 0) { + throw new Error(`Unexpected error: ${result.stderr}`); + } - const targets = result.stdout.trim().split(/\r?\n/); + const targets = result.stdout.trim().split(/\r?\n/); - Log.debug.group('Discovered Targets'); - targets.forEach((target) => Log.debug(target)); - Log.debug.groupEnd(); + Log.debug.group('Discovered Targets'); + targets.forEach((target) => Log.debug(target)); + Log.debug.groupEnd(); - spinner.update(`Found ${targets.length} generated file targets to update`); + spinner.update(`Found ${targets.length} generated file targets to update`); - // Build all of the generated file targets in parallel. - await ChildProcess.spawn(getBazelBin(), ['build', targets.join(' ')], {mode: 'silent'}); + // Build all of the generated file targets in parallel. + await ChildProcess.spawn(getBazelBin(), ['build', targets.join(' ')], {mode: 'silent'}); - // Individually run the generated file update targets. - for (let idx = 0; idx < targets.length; idx++) { - const target = targets[idx]; - spinner.update(`${idx + 1} of ${targets.length} updates completed`); - const updateResult = await ChildProcess.spawn(getBazelBin(), ['run', target], {mode: 'silent'}); - if (updateResult.status !== 0) { - spinner.complete(); - throw Error(`Unexpected error while updating: ${target}.`); + // Individually run the generated file update targets. + for (let idx = 0; idx < targets.length; idx++) { + const target = targets[idx]; + spinner.update(`${idx + 1} of ${targets.length} updates completed`); + const updateResult = await ChildProcess.spawn(getBazelBin(), ['run', target], { + mode: 'silent', + }); + if (updateResult.status !== 0) { + throw new Error(`Unexpected error while updating: ${target}.`); + } } - } - spinner.complete(); - Log.info(` ${green('✔')} Updated all generated files (${targets.length} targets)`); + spinner.complete(); + Log.info(` ${green('✔')} Updated all generated files (${targets.length} targets)`); + } catch (e) { + spinner.failure('An error has occurred.'); + throw e; + } }