Merge pull request #218 from crazy-max/fix-builder-removal
do not remove builder using the docker driver
This commit is contained in:
		
						commit
						eb27bcbef3
					
				
							
								
								
									
										2
									
								
								dist/index.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								dist/index.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										2
									
								
								dist/index.js.map
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								dist/index.js.map
									
									
									
										generated
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										29
									
								
								src/main.ts
									
									
									
									
									
								
							
							
						
						
									
										29
									
								
								src/main.ts
									
									
									
									
									
								
							| @ -4,6 +4,7 @@ import * as core from '@actions/core'; | |||||||
| import * as exec from '@actions/exec'; | import * as exec from '@actions/exec'; | ||||||
| import * as actionsToolkit from '@docker/actions-toolkit'; | import * as actionsToolkit from '@docker/actions-toolkit'; | ||||||
| import {Buildx} from '@docker/actions-toolkit/lib/buildx/buildx'; | import {Buildx} from '@docker/actions-toolkit/lib/buildx/buildx'; | ||||||
|  | import {Builder} from '@docker/actions-toolkit/lib/buildx/builder'; | ||||||
| import {Docker} from '@docker/actions-toolkit/lib/docker/docker'; | import {Docker} from '@docker/actions-toolkit/lib/docker/docker'; | ||||||
| import {Toolkit} from '@docker/actions-toolkit/lib/toolkit'; | import {Toolkit} from '@docker/actions-toolkit/lib/toolkit'; | ||||||
| import {Util} from '@docker/actions-toolkit/lib/util'; | import {Util} from '@docker/actions-toolkit/lib/util'; | ||||||
| @ -60,6 +61,7 @@ actionsToolkit.run( | |||||||
| 
 | 
 | ||||||
|     core.setOutput('name', inputs.name); |     core.setOutput('name', inputs.name); | ||||||
|     stateHelper.setBuilderName(inputs.name); |     stateHelper.setBuilderName(inputs.name); | ||||||
|  |     stateHelper.setBuilderDriver(inputs.driver); | ||||||
| 
 | 
 | ||||||
|     fs.mkdirSync(Buildx.certsDir, {recursive: true}); |     fs.mkdirSync(Buildx.certsDir, {recursive: true}); | ||||||
|     stateHelper.setCertsDir(Buildx.certsDir); |     stateHelper.setCertsDir(Buildx.certsDir); | ||||||
| @ -169,19 +171,24 @@ actionsToolkit.run( | |||||||
|       return; |       return; | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     if (stateHelper.builderName.length > 0) { |     if (stateHelper.builderDriver != 'docker' && stateHelper.builderName.length > 0) { | ||||||
|       await core.group(`Removing builder`, async () => { |       await core.group(`Removing builder`, async () => { | ||||||
|         const buildx = new Buildx({standalone: stateHelper.standalone}); |         const buildx = new Buildx({standalone: stateHelper.standalone}); | ||||||
|         const rmCmd = await buildx.getCommand(['rm', stateHelper.builderName]); |         const builder = new Builder({buildx: buildx}); | ||||||
|         await exec |         if (await builder.exists(stateHelper.builderName)) { | ||||||
|           .getExecOutput(rmCmd.command, rmCmd.args, { |           const rmCmd = await buildx.getCommand(['rm', stateHelper.builderName]); | ||||||
|             ignoreReturnCode: true |           await exec | ||||||
|           }) |             .getExecOutput(rmCmd.command, rmCmd.args, { | ||||||
|           .then(res => { |               ignoreReturnCode: true | ||||||
|             if (res.stderr.length > 0 && res.exitCode != 0) { |             }) | ||||||
|               core.warning(res.stderr.trim()); |             .then(res => { | ||||||
|             } |               if (res.stderr.length > 0 && res.exitCode != 0) { | ||||||
|           }); |                 core.warning(res.stderr.trim()); | ||||||
|  |               } | ||||||
|  |             }); | ||||||
|  |         } else { | ||||||
|  |           core.info(`${stateHelper.builderName} does not exist`); | ||||||
|  |         } | ||||||
|       }); |       }); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -3,6 +3,7 @@ import * as core from '@actions/core'; | |||||||
| export const IsDebug = !!process.env['STATE_isDebug']; | export const IsDebug = !!process.env['STATE_isDebug']; | ||||||
| export const standalone = /true/i.test(process.env['STATE_standalone'] || ''); | export const standalone = /true/i.test(process.env['STATE_standalone'] || ''); | ||||||
| export const builderName = process.env['STATE_builderName'] || ''; | export const builderName = process.env['STATE_builderName'] || ''; | ||||||
|  | export const builderDriver = process.env['STATE_builderDriver'] || ''; | ||||||
| export const containerName = process.env['STATE_containerName'] || ''; | export const containerName = process.env['STATE_containerName'] || ''; | ||||||
| export const certsDir = process.env['STATE_certsDir'] || ''; | export const certsDir = process.env['STATE_certsDir'] || ''; | ||||||
| export const cleanup = /true/i.test(process.env['STATE_cleanup'] || ''); | export const cleanup = /true/i.test(process.env['STATE_cleanup'] || ''); | ||||||
| @ -19,6 +20,10 @@ export function setBuilderName(builderName: string) { | |||||||
|   core.saveState('builderName', builderName); |   core.saveState('builderName', builderName); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | export function setBuilderDriver(builderDriver: string) { | ||||||
|  |   core.saveState('builderDriver', builderDriver); | ||||||
|  | } | ||||||
|  | 
 | ||||||
| export function setContainerName(containerName: string) { | export function setContainerName(containerName: string) { | ||||||
|   core.saveState('containerName', containerName); |   core.saveState('containerName', containerName); | ||||||
| } | } | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 CrazyMax
						CrazyMax