Merge pull request #273 from crazy-max/fix-workflow
Fix workflow for auto-push impl
This commit is contained in:
		
						commit
						636b4540ec
					
				
							
								
								
									
										20
									
								
								.github/workflows/ci.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										20
									
								
								.github/workflows/ci.yml
									
									
									
									
										vendored
									
									
								
							| @ -244,12 +244,6 @@ jobs: | ||||
| 
 | ||||
|   docker-driver: | ||||
|     runs-on: ubuntu-latest | ||||
|     strategy: | ||||
|       fail-fast: false | ||||
|       matrix: | ||||
|         push: | ||||
|           - true | ||||
|           - false | ||||
|     services: | ||||
|       registry: | ||||
|         image: registry:2 | ||||
| @ -262,24 +256,12 @@ jobs: | ||||
|       - | ||||
|         name: Build | ||||
|         id: docker_build | ||||
|         continue-on-error: ${{ matrix.push }} | ||||
|         uses: ./ | ||||
|         with: | ||||
|           context: ./test | ||||
|           file: ./test/Dockerfile | ||||
|           push: ${{ matrix.push }} | ||||
|           push: true | ||||
|           tags: localhost:5000/name/app:latest | ||||
|       - | ||||
|         name: Check | ||||
|         run: | | ||||
|           echo "${{ toJson(steps.docker_build) }}" | ||||
|           if [ "${{ matrix.push }}" = "false" ]; then | ||||
|             exit 0 | ||||
|           fi | ||||
|           if [ "${{ steps.docker_build.outcome }}" != "failure" ] || [ "${{ steps.docker_build.conclusion }}" != "success" ]; then | ||||
|             echo "::error::Should have failed" | ||||
|             exit 1 | ||||
|           fi | ||||
|       - | ||||
|         name: Dump context | ||||
|         if: always() | ||||
|  | ||||
| @ -1,113 +1,7 @@ | ||||
| # Troubleshooting | ||||
| 
 | ||||
| * [`auto-push is currently not implemented for docker driver`](#auto-push-is-currently-not-implemented-for-docker-driver) | ||||
| * [Cannot push to a registry](#cannot-push-to-a-registry) | ||||
| 
 | ||||
| ## `auto-push is currently not implemented for docker driver` | ||||
| 
 | ||||
| If you're using the default builder (which uses the docker driver) without using our `setup-buildx-action`, you may | ||||
| encounter this error message if you try to push your image: | ||||
| 
 | ||||
| ``` | ||||
| Run docker/build-push-action@v2 | ||||
| 📣 Buildx version: 0.4.2 | ||||
| 🏃 Starting build... | ||||
| /usr/bin/docker buildx build --tag localhost:5000/name/app:latest --iidfile /tmp/docker-build-push-eYl8PB/iidfile --file ./test/Dockerfile --push ./test | ||||
| auto-push is currently not implemented for docker driver | ||||
| Error: buildx call failed with: auto-push is currently not implemented for docker driver | ||||
| ``` | ||||
| 
 | ||||
| While waiting for an implementation to be done on buildx/buildkit, you have the following possibilities | ||||
| to solve this atm: | ||||
| 
 | ||||
| ### With `docker-container` driver and `setup-buildx` | ||||
| 
 | ||||
| > Recommended solution | ||||
| 
 | ||||
| ```yaml | ||||
| jobs: | ||||
|   build: | ||||
|     - | ||||
|       name: Checkout | ||||
|       uses: actions/checkout@v2 | ||||
|     - | ||||
|       name: Set up Docker Buildx | ||||
|       uses: docker/setup-buildx-action@v1 | ||||
|     - | ||||
|       name: Login | ||||
|       uses: docker/login-action@v1 | ||||
|       with: | ||||
|         registry: ${{ env.REGISTRY }} | ||||
|         username: ${{ env.USER }} | ||||
|         password: ${{ secrets.PASSWORD }} | ||||
|     - | ||||
|       name: Build and push | ||||
|       uses: docker/build-push-action@v2 | ||||
|       with: | ||||
|         context: . | ||||
|         tags: ${{ env.REGISTRY }}/myapp:latest | ||||
|         push: true | ||||
| ``` | ||||
| 
 | ||||
| ### With `docker` driver | ||||
| 
 | ||||
| ```yaml | ||||
| jobs: | ||||
|   build: | ||||
|     - | ||||
|       name: Checkout | ||||
|       uses: actions/checkout@v2 | ||||
|     - | ||||
|       name: Login | ||||
|       uses: docker/login-action@v1 | ||||
|       with: | ||||
|         registry: ${{ env.REGISTRY }} | ||||
|         username: ${{ env.USER }} | ||||
|         password: ${{ secrets.PASSWORD }} | ||||
|     - | ||||
|       name: Build | ||||
|       uses: docker/build-push-action@v2 | ||||
|       with: | ||||
|         context: . | ||||
|         tags: ${{ env.REGISTRY }}/myapp:latest | ||||
|         load: true | ||||
|     - | ||||
|       name: Push | ||||
|       run: docker push ${{ env.REGISTRY }}/myapp:latest | ||||
| ``` | ||||
| 
 | ||||
| ### With `docker` driver and `setup-buildx` | ||||
| 
 | ||||
| ```yaml | ||||
| jobs: | ||||
|   build: | ||||
|     - | ||||
|       name: Checkout | ||||
|       uses: actions/checkout@v2 | ||||
|     - | ||||
|       name: Set up Docker Buildx | ||||
|       uses: docker/setup-buildx-action@v1 | ||||
|       with: | ||||
|         driver: docker | ||||
|     - | ||||
|       name: Login | ||||
|       uses: docker/login-action@v1 | ||||
|       with: | ||||
|         registry: ${{ env.REGISTRY }} | ||||
|         username: ${{ env.USER }} | ||||
|         password: ${{ secrets.PASSWORD }} | ||||
|     - | ||||
|       name: Build | ||||
|       uses: docker/build-push-action@v2 | ||||
|       with: | ||||
|         context: . | ||||
|         tags: ${{ env.REGISTRY }}/myapp:latest | ||||
|         load: true | ||||
|     - | ||||
|       name: Push | ||||
|       run: docker push ${{ env.REGISTRY }}/myapp:latest | ||||
| ``` | ||||
| 
 | ||||
| ## Cannot push to a registry | ||||
| 
 | ||||
| While pushing to a registry, you may encounter these kinds of issues: | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Tõnis Tiigi
						Tõnis Tiigi