@@ -53,17 +53,30 @@ async function installLinux() {
5353 core . info ( 'Checksum verified successfully' )
5454
5555 core . info ( 'Extracting installer...' )
56- await exec . exec ( 'tar' , [ '-xzvf' , tarballPath , '-C' , tmpDir ] )
56+ let exitCode = await exec . exec ( 'tar' , [ '-xzvf' , tarballPath , '-C' , tmpDir ] )
57+ if ( exitCode !== 0 ) {
58+ throw new Error ( `Failed to extract installer (exit code: ${ exitCode } )` )
59+ }
5760
5861 const extractDir = join ( tmpDir , 'Bluemix_CLI' )
5962 core . info ( 'Running installer...' )
6063 const installScript = join ( extractDir , 'install' )
61- await exec . exec ( 'chmod' , [ '755' , installScript ] )
62- await exec . exec ( installScript , [ '-q' ] )
64+ exitCode = await exec . exec ( 'chmod' , [ '755' , installScript ] )
65+ if ( exitCode !== 0 ) {
66+ throw new Error ( `Failed to set permissions on install script (exit code: ${ exitCode } )` )
67+ }
68+
69+ exitCode = await exec . exec ( installScript , [ '-q' ] )
70+ if ( exitCode !== 0 ) {
71+ throw new Error ( `Installation failed (exit code: ${ exitCode } )` )
72+ }
6373
6474 core . info ( 'Cleaning up temporary files...' )
6575 fs . unlinkSync ( tarballPath )
66- await exec . exec ( 'rm' , [ '-rf' , extractDir ] )
76+ exitCode = await exec . exec ( 'rm' , [ '-rf' , extractDir ] )
77+ if ( exitCode !== 0 ) {
78+ core . warning ( `Failed to clean up temporary directory (exit code: ${ exitCode } )` )
79+ }
6780
6881 core . info ( 'IBM Cloud CLI installed successfully' )
6982}
0 commit comments