mirror of
https://github.com/docker/build-push-action.git
synced 2024-11-23 10:35:39 +01:00
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:
|
docker-driver:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
strategy:
|
|
||||||
fail-fast: false
|
|
||||||
matrix:
|
|
||||||
push:
|
|
||||||
- true
|
|
||||||
- false
|
|
||||||
services:
|
services:
|
||||||
registry:
|
registry:
|
||||||
image: registry:2
|
image: registry:2
|
||||||
@ -262,24 +256,12 @@ jobs:
|
|||||||
-
|
-
|
||||||
name: Build
|
name: Build
|
||||||
id: docker_build
|
id: docker_build
|
||||||
continue-on-error: ${{ matrix.push }}
|
|
||||||
uses: ./
|
uses: ./
|
||||||
with:
|
with:
|
||||||
context: ./test
|
context: ./test
|
||||||
file: ./test/Dockerfile
|
file: ./test/Dockerfile
|
||||||
push: ${{ matrix.push }}
|
push: true
|
||||||
tags: localhost:5000/name/app:latest
|
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
|
name: Dump context
|
||||||
if: always()
|
if: always()
|
||||||
|
@ -1,113 +1,7 @@
|
|||||||
# Troubleshooting
|
# 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)
|
* [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
|
## Cannot push to a registry
|
||||||
|
|
||||||
While pushing to a registry, you may encounter these kinds of issues:
|
While pushing to a registry, you may encounter these kinds of issues:
|
||||||
|
Loading…
Reference in New Issue
Block a user