mirror of
				https://codeberg.org/h3xx/simplify_static_dir
				synced 2024-08-14 23:57:24 +00:00 
			
		
		
		
	CI: Improve method of capturing output
This commit is contained in:
		
							parent
							
								
									d13f8ff83c
								
							
						
					
					
						commit
						76da187807
					
				
					 1 changed files with 8 additions and 7 deletions
				
			
		|  | @ -12,6 +12,8 @@ use File::Basename qw/ | ||||||
|     dirname |     dirname | ||||||
| /; | /; | ||||||
| require File::Temp; | require File::Temp; | ||||||
|  | use IPC::Open3 qw/ open3 /; | ||||||
|  | use Symbol qw/ gensym /; | ||||||
| 
 | 
 | ||||||
| use Exporter; | use Exporter; | ||||||
| use parent 'Exporter'; | use parent 'Exporter'; | ||||||
|  | @ -102,7 +104,6 @@ sub run_script_capture { | ||||||
|     my @args = @_; |     my @args = @_; | ||||||
|     my @cmd = (SCRIPT, @args); |     my @cmd = (SCRIPT, @args); | ||||||
| 
 | 
 | ||||||
|     use IPC::Open3 qw/ open3 /; |  | ||||||
|     my $stderr = File::Temp->new( |     my $stderr = File::Temp->new( | ||||||
|         TMPDIR => 1, |         TMPDIR => 1, | ||||||
|         CLEANUP => 1, |         CLEANUP => 1, | ||||||
|  | @ -112,20 +113,20 @@ sub run_script_capture { | ||||||
|         CLEANUP => 1, |         CLEANUP => 1, | ||||||
|     ); |     ); | ||||||
|     my $in = ''; |     my $in = ''; | ||||||
|     local *CATCHOUT = $stdout; |     my $child_out = gensym(); | ||||||
|     local *CATCHERR = $stderr; |     my $child_err = gensym(); | ||||||
|     print STDERR "+ @cmd\n"; |     print STDERR "+ @cmd\n"; | ||||||
|     my $pid = open3 $in, '>&CATCHOUT', '>&CATCHERR', @cmd; |     my $pid = open3 $in, $child_out, $child_err, @cmd; | ||||||
|     waitpid $pid, 0; |     waitpid $pid, 0; | ||||||
|     foreach my $handle (\*CATCHOUT, \*CATCHERR) { |     foreach my $handle ($child_out, $child_err) { | ||||||
|         seek $handle, 0, 0; |         seek $handle, 0, 0; | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     local $/; |     local $/; | ||||||
|     return ( |     return ( | ||||||
|         $?, |         $?, | ||||||
|         scalar <CATCHOUT>, # slurp! |         scalar <$child_out>, # slurp! | ||||||
|         scalar <CATCHERR>, # slurp! |         scalar <$child_err>, # slurp! | ||||||
|     ); |     ); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue