Fix GitHub token not passed with Git context if subdir defined
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
This commit is contained in:
		
							parent
							
								
									67af6dc1d3
								
							
						
					
					
						commit
						30a32246ba
					
				| @ -500,6 +500,25 @@ nproc=3`], | ||||
|         'https://github.com/docker/build-push-action.git#refs/heads/test-jest:docker' | ||||
|       ] | ||||
|     ], | ||||
|     [ | ||||
|       16, | ||||
|       '0.8.2', | ||||
|       new Map<string, string>([ | ||||
|         ['github-token', 'abcdefghijklmno0123456789'], | ||||
|         ['context', '{{defaultContext}}:subdir'], | ||||
|         ['load', 'false'], | ||||
|         ['no-cache', 'false'], | ||||
|         ['push', 'false'], | ||||
|         ['pull', 'false'], | ||||
|       ]), | ||||
|       [ | ||||
|         'build', | ||||
|         '--iidfile', '/tmp/.docker-build-push-jest/iidfile', | ||||
|         '--secret', 'id=GIT_AUTH_TOKEN,src=/tmp/.docker-build-push-jest/.tmpname-jest', | ||||
|         '--metadata-file', '/tmp/.docker-build-push-jest/metadata-file', | ||||
|         'https://github.com/docker/build-push-action.git#refs/heads/test-jest:subdir' | ||||
|       ] | ||||
|     ] | ||||
|   ])( | ||||
|     '[%d] given %p with %p as inputs, returns %p', | ||||
|     async (num: number, buildxVersion: string, inputs: Map<string, string>, expected: Array<string>) => { | ||||
|  | ||||
							
								
								
									
										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
											
										
									
								
							| @ -101,15 +101,16 @@ export async function getInputs(defaultContext: string): Promise<Inputs> { | ||||
| } | ||||
| 
 | ||||
| export async function getArgs(inputs: Inputs, defaultContext: string, buildxVersion: string): Promise<Array<string>> { | ||||
|   const context = handlebars.compile(inputs.context)({defaultContext}); | ||||
|   // prettier-ignore
 | ||||
|   return [ | ||||
|     ...await getBuildArgs(inputs, defaultContext, buildxVersion), | ||||
|     ...await getBuildArgs(inputs, defaultContext, context, buildxVersion), | ||||
|     ...await getCommonArgs(inputs, buildxVersion), | ||||
|     handlebars.compile(inputs.context)({defaultContext}) | ||||
|     context | ||||
|   ]; | ||||
| } | ||||
| 
 | ||||
| async function getBuildArgs(inputs: Inputs, defaultContext: string, buildxVersion: string): Promise<Array<string>> { | ||||
| async function getBuildArgs(inputs: Inputs, defaultContext: string, context: string, buildxVersion: string): Promise<Array<string>> { | ||||
|   const args: Array<string> = ['build']; | ||||
|   await asyncForEach(inputs.addHosts, async addHost => { | ||||
|     args.push('--add-host', addHost); | ||||
| @ -166,7 +167,7 @@ async function getBuildArgs(inputs: Inputs, defaultContext: string, buildxVersio | ||||
|       core.warning(err.message); | ||||
|     } | ||||
|   }); | ||||
|   if (inputs.githubToken && !buildx.hasGitAuthToken(inputs.secrets) && inputs.context == defaultContext) { | ||||
|   if (inputs.githubToken && !buildx.hasGitAuthToken(inputs.secrets) && context.startsWith(defaultContext)) { | ||||
|     args.push('--secret', await buildx.getSecretString(`GIT_AUTH_TOKEN=${inputs.githubToken}`)); | ||||
|   } | ||||
|   if (inputs.shmSize) { | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 CrazyMax
						CrazyMax