@@ -14,45 +14,50 @@ import {green, Log} from '../../utils/logging.js';
1414export async function updateGeneratedFileTargets ( ) : Promise < void > {
1515 const spinner = new Spinner ( 'Querying for all generated file targets' ) ;
1616
17- // Query for all of the generated file targets
18- const result = await ChildProcess . spawn (
19- getBazelBin ( ) ,
20- [
21- 'query' ,
22- `"kind(nodejs_binary, //...) intersect attr(name, '.update$', //...)"` ,
23- '--output' ,
24- 'label ',
25- ] ,
26- { mode : 'silent' } ,
27- ) ;
28-
29- if ( result . status !== 0 ) {
30- spinner . complete ( ) ;
31- throw Error ( `Unexpected error: ${ result . stderr } ` ) ;
32- }
17+ try {
18+ // Query for all of the generated file targets
19+ const result = await ChildProcess . spawn (
20+ getBazelBin ( ) ,
21+ [
22+ 'query' ,
23+ `"kind(nodejs_binary, //...) intersect attr(name, '.update$', //...)"` ,
24+ '--output ',
25+ 'label' ,
26+ ] ,
27+ { mode : 'silent' } ,
28+ ) ;
29+
30+ if ( result . status !== 0 ) {
31+ throw new Error ( `Unexpected error: ${ result . stderr } ` ) ;
32+ }
3333
34- const targets = result . stdout . trim ( ) . split ( / \r ? \n / ) ;
34+ const targets = result . stdout . trim ( ) . split ( / \r ? \n / ) ;
3535
36- Log . debug . group ( 'Discovered Targets' ) ;
37- targets . forEach ( ( target ) => Log . debug ( target ) ) ;
38- Log . debug . groupEnd ( ) ;
36+ Log . debug . group ( 'Discovered Targets' ) ;
37+ targets . forEach ( ( target ) => Log . debug ( target ) ) ;
38+ Log . debug . groupEnd ( ) ;
3939
40- spinner . update ( `Found ${ targets . length } generated file targets to update` ) ;
40+ spinner . update ( `Found ${ targets . length } generated file targets to update` ) ;
4141
42- // Build all of the generated file targets in parallel.
43- await ChildProcess . spawn ( getBazelBin ( ) , [ 'build' , targets . join ( ' ' ) ] , { mode : 'silent' } ) ;
42+ // Build all of the generated file targets in parallel.
43+ await ChildProcess . spawn ( getBazelBin ( ) , [ 'build' , targets . join ( ' ' ) ] , { mode : 'silent' } ) ;
4444
45- // Individually run the generated file update targets.
46- for ( let idx = 0 ; idx < targets . length ; idx ++ ) {
47- const target = targets [ idx ] ;
48- spinner . update ( `${ idx + 1 } of ${ targets . length } updates completed` ) ;
49- const updateResult = await ChildProcess . spawn ( getBazelBin ( ) , [ 'run' , target ] , { mode : 'silent' } ) ;
50- if ( updateResult . status !== 0 ) {
51- spinner . complete ( ) ;
52- throw Error ( `Unexpected error while updating: ${ target } .` ) ;
45+ // Individually run the generated file update targets.
46+ for ( let idx = 0 ; idx < targets . length ; idx ++ ) {
47+ const target = targets [ idx ] ;
48+ spinner . update ( `${ idx + 1 } of ${ targets . length } updates completed` ) ;
49+ const updateResult = await ChildProcess . spawn ( getBazelBin ( ) , [ 'run' , target ] , {
50+ mode : 'silent' ,
51+ } ) ;
52+ if ( updateResult . status !== 0 ) {
53+ throw new Error ( `Unexpected error while updating: ${ target } .` ) ;
54+ }
5355 }
54- }
5556
56- spinner . complete ( ) ;
57- Log . info ( ` ${ green ( '✔' ) } Updated all generated files (${ targets . length } targets)` ) ;
57+ spinner . complete ( ) ;
58+ Log . info ( ` ${ green ( '✔' ) } Updated all generated files (${ targets . length } targets)` ) ;
59+ } catch ( e ) {
60+ spinner . failure ( 'An error has occurred.' ) ;
61+ throw e ;
62+ }
5863}
0 commit comments