ci: push docker image on my own branch
This commit is contained in:
parent
177d42cad4
commit
5206824743
|
@ -529,14 +529,25 @@ jobs:
|
||||||
org.opencontainers.image.otp.version=${{ matrix.otp }}
|
org.opencontainers.image.otp.version=${{ matrix.otp }}
|
||||||
org.opencontainers.image.elixir.version=${{ matrix.elixir }}
|
org.opencontainers.image.elixir.version=${{ matrix.elixir }}
|
||||||
- uses: docker/login-action@v1
|
- uses: docker/login-action@v1
|
||||||
if: github.event_name == 'release'
|
if: >
|
||||||
|
${{ (github.event_name == 'release' && !github.event.release.prerelease)
|
||||||
|
|| (github.event.repository.owner != 'emqx' && startsWith(github.ref_name, 'ci/')) }}
|
||||||
with:
|
with:
|
||||||
username: ${{ secrets.DOCKER_HUB_USER }}
|
username: ${{ secrets.DOCKER_HUB_USER }}
|
||||||
password: ${{ secrets.DOCKER_HUB_TOKEN }}
|
password: ${{ secrets.DOCKER_HUB_TOKEN }}
|
||||||
|
|
||||||
|
- name: export os image from matrix.os
|
||||||
|
id: os-img
|
||||||
|
run: |
|
||||||
|
img=$(echo ${{ matrix.os }} | sed 's#\([0-9.]\+\)$#:\1#g')
|
||||||
|
echo "::set-output name=img::${img}"
|
||||||
|
|
||||||
- uses: docker/build-push-action@v2
|
- uses: docker/build-push-action@v2
|
||||||
if: ${{ matrix.build_elixir == 'no_elixir' }}
|
if: ${{ matrix.build_elixir == 'no_elixir' }}
|
||||||
with:
|
with:
|
||||||
push: ${{ github.event_name == 'release' && !github.event.release.prerelease }}
|
push: >
|
||||||
|
${{ (github.event_name == 'release' && !github.event.release.prerelease)
|
||||||
|
|| (github.event.repository.owner != 'emqx' && startsWith(github.ref_name, 'ci/')) }}
|
||||||
pull: true
|
pull: true
|
||||||
no-cache: true
|
no-cache: true
|
||||||
platforms: linux/${{ matrix.arch }}
|
platforms: linux/${{ matrix.arch }}
|
||||||
|
@ -544,7 +555,7 @@ jobs:
|
||||||
labels: ${{ steps.meta.outputs.labels }}
|
labels: ${{ steps.meta.outputs.labels }}
|
||||||
build-args: |
|
build-args: |
|
||||||
BUILD_FROM=ghcr.io/emqx/emqx-builder/5.0-5:${{ matrix.elixir }}-${{ matrix.otp }}-${{ matrix.os }}
|
BUILD_FROM=ghcr.io/emqx/emqx-builder/5.0-5:${{ matrix.elixir }}-${{ matrix.otp }}-${{ matrix.os }}
|
||||||
RUN_FROM=alpine:3.14
|
RUN_FROM=${{ steps.os-img.outputs.img }}
|
||||||
EMQX_NAME=${{ matrix.profile }}
|
EMQX_NAME=${{ matrix.profile }}
|
||||||
file: source/deploy/docker/Dockerfile
|
file: source/deploy/docker/Dockerfile
|
||||||
context: source
|
context: source
|
||||||
|
@ -589,8 +600,12 @@ jobs:
|
||||||
|
|
||||||
docker-push-multi-arch-manifest:
|
docker-push-multi-arch-manifest:
|
||||||
# note, we only run on amd64
|
# note, we only run on amd64
|
||||||
if: github.event_name == 'release'
|
if: >
|
||||||
needs: docker
|
(github.event_name == 'release' && !github.event.release.prerelease)
|
||||||
|
|| (github.event.repository.owner != 'emqx' && startsWith(github.ref_name, 'ci/'))
|
||||||
|
needs:
|
||||||
|
- prepare
|
||||||
|
- docker
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
|
@ -650,10 +665,10 @@ jobs:
|
||||||
|
|
||||||
- name: update manifest for multiarch image
|
- name: update manifest for multiarch image
|
||||||
if: matrix.arch == 'amd64'
|
if: matrix.arch == 'amd64'
|
||||||
|
working-directory: source
|
||||||
run: |
|
run: |
|
||||||
IsPushLatest=${{ github.event_name == 'release' && !github.event.release.prerelease }};
|
IsPushLatest=${{ github.event_name == 'release' && !github.event.release.prerelease }};
|
||||||
scripts/docker-create-push-manifest "${{ steps.meta.outputs.tags }}" "$IsPushLatest"
|
scripts/docker-create-push-manifests.sh "${{ steps.meta.outputs.tags }}" "$IsPushLatest"
|
||||||
|
|
||||||
|
|
||||||
delete-artifact:
|
delete-artifact:
|
||||||
runs-on: ubuntu-20.04
|
runs-on: ubuntu-20.04
|
||||||
|
|
Loading…
Reference in New Issue