mirror of
				https://gitea.com/docker/build-push-action.git
				synced 2025-10-31 00:58:18 +07:00 
			
		
		
		
	Merge pull request #872 from crazy-max/ci-proxy
display proxy configuration
This commit is contained in:
		
						commit
						be4bf1099e
					
				
							
								
								
									
										71
									
								
								.github/workflows/ci.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										71
									
								
								.github/workflows/ci.yml
									
									
									
									
										vendored
									
									
								
							| @ -1001,3 +1001,74 @@ jobs: | |||||||
|           file: ./test/named-context.Dockerfile |           file: ./test/named-context.Dockerfile | ||||||
|           build-contexts: | |           build-contexts: | | ||||||
|             alpine=docker-image://localhost:5000/my-base-image:latest |             alpine=docker-image://localhost:5000/my-base-image:latest | ||||||
|  | 
 | ||||||
|  |   proxy-docker-config: | ||||||
|  |     runs-on: ubuntu-latest | ||||||
|  |     services: | ||||||
|  |       squid-proxy: | ||||||
|  |         image: ubuntu/squid:latest | ||||||
|  |         ports: | ||||||
|  |           - 3128:3128 | ||||||
|  |     steps: | ||||||
|  |       - | ||||||
|  |         name: Check proxy | ||||||
|  |         run: | | ||||||
|  |           netstat -aptn | ||||||
|  |           curl --retry 5 --retry-all-errors --retry-delay 0 --connect-timeout 5 --proxy http://127.0.0.1:3128 -v --insecure --head https://www.google.com | ||||||
|  |       - | ||||||
|  |         name: Checkout | ||||||
|  |         uses: actions/checkout@v3 | ||||||
|  |       - | ||||||
|  |         name: Set proxy config | ||||||
|  |         run: | | ||||||
|  |           mkdir -p ~/.docker | ||||||
|  |           echo '{"proxies":{"default":{"httpProxy":"http://127.0.0.1:3128","httpsProxy":"http://127.0.0.1:3128"}}}' > ~/.docker/config.json | ||||||
|  |       - | ||||||
|  |         name: Set up Docker Buildx | ||||||
|  |         uses: docker/setup-buildx-action@v2 | ||||||
|  |         with: | ||||||
|  |           version: ${{ inputs.buildx-version || env.BUILDX_VERSION }} | ||||||
|  |           driver-opts: | | ||||||
|  |             image=${{ inputs.buildkit-image || env.BUILDKIT_IMAGE }} | ||||||
|  |             network=host | ||||||
|  |           buildkitd-flags: --debug | ||||||
|  |       - | ||||||
|  |         name: Build | ||||||
|  |         uses: ./ | ||||||
|  |         with: | ||||||
|  |           context: ./test | ||||||
|  |           file: ./test/proxy.Dockerfile | ||||||
|  | 
 | ||||||
|  |   proxy-buildkitd: | ||||||
|  |     runs-on: ubuntu-latest | ||||||
|  |     services: | ||||||
|  |       squid-proxy: | ||||||
|  |         image: ubuntu/squid:latest | ||||||
|  |         ports: | ||||||
|  |           - 3128:3128 | ||||||
|  |     steps: | ||||||
|  |       - | ||||||
|  |         name: Check proxy | ||||||
|  |         run: | | ||||||
|  |           netstat -aptn | ||||||
|  |           curl --retry 5 --retry-all-errors --retry-delay 0 --connect-timeout 5 --proxy http://127.0.0.1:3128 -v --insecure --head https://www.google.com | ||||||
|  |       - | ||||||
|  |         name: Checkout | ||||||
|  |         uses: actions/checkout@v3 | ||||||
|  |       - | ||||||
|  |         name: Set up Docker Buildx | ||||||
|  |         uses: docker/setup-buildx-action@v2 | ||||||
|  |         with: | ||||||
|  |           version: ${{ inputs.buildx-version || env.BUILDX_VERSION }} | ||||||
|  |           driver-opts: | | ||||||
|  |             image=${{ inputs.buildkit-image || env.BUILDKIT_IMAGE }} | ||||||
|  |             network=host | ||||||
|  |             env.http_proxy=http://127.0.0.1:3128 | ||||||
|  |             env.https_proxy=http://127.0.0.1:3128 | ||||||
|  |           buildkitd-flags: --debug | ||||||
|  |       - | ||||||
|  |         name: Build | ||||||
|  |         uses: ./ | ||||||
|  |         with: | ||||||
|  |           context: ./test | ||||||
|  |           file: ./test/Dockerfile | ||||||
|  | |||||||
							
								
								
									
										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
											
										
									
								
							
							
								
								
									
										16
									
								
								src/main.ts
									
									
									
									
									
								
							
							
						
						
									
										16
									
								
								src/main.ts
									
									
									
									
									
								
							| @ -34,6 +34,22 @@ actionsToolkit.run( | |||||||
|       } |       } | ||||||
|     }); |     }); | ||||||
| 
 | 
 | ||||||
|  |     const dockerConfig = await Docker.configFile(); | ||||||
|  |     if (dockerConfig && dockerConfig.proxies) { | ||||||
|  |       await core.group(`Proxy configuration found`, async () => { | ||||||
|  |         for (const host in dockerConfig.proxies) { | ||||||
|  |           let prefix = ''; | ||||||
|  |           if (dockerConfig.proxies.length > 1) { | ||||||
|  |             prefix = '  '; | ||||||
|  |             core.info(host); | ||||||
|  |           } | ||||||
|  |           for (const key in dockerConfig.proxies[host]) { | ||||||
|  |             core.info(`${prefix}${key}: ${dockerConfig.proxies[host][key]}`); | ||||||
|  |           } | ||||||
|  |         } | ||||||
|  |       }); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|     if (!(await toolkit.buildx.isAvailable())) { |     if (!(await toolkit.buildx.isAvailable())) { | ||||||
|       core.setFailed(`Docker buildx is required. See https://github.com/docker/setup-buildx-action to set up buildx.`); |       core.setFailed(`Docker buildx is required. See https://github.com/docker/setup-buildx-action to set up buildx.`); | ||||||
|       return; |       return; | ||||||
|  | |||||||
							
								
								
									
										9
									
								
								test/proxy.Dockerfile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								test/proxy.Dockerfile
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,9 @@ | |||||||
|  | # syntax=docker/dockerfile:1 | ||||||
|  | FROM alpine | ||||||
|  | RUN apk add --no-cache curl net-tools | ||||||
|  | ARG HTTP_PROXY | ||||||
|  | ARG HTTPS_PROXY | ||||||
|  | RUN printenv HTTP_PROXY | ||||||
|  | RUN printenv HTTPS_PROXY | ||||||
|  | RUN netstat -aptn | ||||||
|  | RUN curl --retry 5 --retry-all-errors --retry-delay 0 --connect-timeout 5 --proxy $HTTP_PROXY -v --insecure --head https://www.google.com | ||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user