Merge pull request #6044 from zmstone/use-profile-name-as-default-docker-image-tag

Use profile name as default docker image tag
This commit is contained in:
Zaiming (Stone) Shi 2021-11-03 06:21:34 +01:00 committed by GitHub
commit 818bde1820
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 43 additions and 25 deletions

View File

@ -12,18 +12,30 @@ jobs:
build: build:
runs-on: ubuntu-latest runs-on: ubuntu-latest
outputs: outputs:
imgname: ${{ steps.build_docker.outputs.imgname}}
version: ${{ steps.build_docker.outputs.version}} version: ${{ steps.build_docker.outputs.version}}
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
- name: build docker - name: build docker
id: build_docker id: build_docker
run: | run: |
if [ -f EMQX_ENTERPRISE ]; then
echo "https://ci%40emqx.io:${{ secrets.CI_GIT_TOKEN }}@github.com" > $HOME/.git-credentials
git config --global credential.helper store
echo "${{ secrets.CI_GIT_TOKEN }}" >> scripts/git-token
make deps-emqx-ee
fi
make docker make docker
echo "::set-output name=version::$(./pkg-vsn.sh)" echo "::set-output name=version::$(./pkg-vsn.sh)"
if [ -f EMQX_ENTERPRISE ]; then
echo "::set-output name=imgname::emqx-ee"
else
echo "::set-output name=imgname::emqx"
fi
- uses: actions/upload-artifact@v2 - uses: actions/upload-artifact@v2
with: with:
name: emqx-docker-image-zip name: emqx-docker-image-zip
path: _packages/emqx/emqx-docker-${{ steps.build_docker.outputs.version }}.zip path: _packages/${{ steps.build_docker.outputs.imgname }}/${{ steps.build_docker.outputs.imgname }}-docker-${{ steps.build_docker.outputs.version }}.zip
webhook: webhook:
runs-on: ubuntu-latest runs-on: ubuntu-latest
@ -43,14 +55,15 @@ jobs:
path: /tmp path: /tmp
- name: load docker image - name: load docker image
env: env:
imgname: ${{ needs.build.outputs.imgname}}
version: ${{ needs.build.outputs.version }} version: ${{ needs.build.outputs.version }}
run: | run: |
unzip -q /tmp/emqx-docker-${version}.zip -d /tmp unzip -q /tmp/${imgname}-docker-${version}.zip -d /tmp
docker load < /tmp/emqx-docker-${version} docker load < /tmp/${imgname}-docker-${version}
- name: docker compose up - name: docker compose up
timeout-minutes: 5 timeout-minutes: 5
env: env:
TARGET: emqx/emqx TARGET: emqx/${{ needs.build.outputs.imgname }}
EMQX_TAG: ${{ needs.build.outputs.version }} EMQX_TAG: ${{ needs.build.outputs.version }}
run: | run: |
docker-compose \ docker-compose \
@ -142,14 +155,15 @@ jobs:
path: /tmp path: /tmp
- name: load docker image - name: load docker image
env: env:
imgname: ${{ needs.build.outputs.imgname }}
version: ${{ needs.build.outputs.version }} version: ${{ needs.build.outputs.version }}
run: | run: |
unzip -q /tmp/emqx-docker-${version}.zip -d /tmp unzip -q /tmp/${imgname}-docker-${version}.zip -d /tmp
docker load < /tmp/emqx-docker-${version} docker load < /tmp/${imgname}-docker-${version}
- name: docker compose up - name: docker compose up
timeout-minutes: 5 timeout-minutes: 5
env: env:
TARGET: emqx/emqx TARGET: emqx/${{ needs.build.outputs.imgname }}
EMQX_TAG: ${{ needs.build.outputs.version }} EMQX_TAG: ${{ needs.build.outputs.version }}
MYSQL_TAG: ${{ matrix.mysql_tag }} MYSQL_TAG: ${{ matrix.mysql_tag }}
run: | run: |
@ -248,14 +262,15 @@ jobs:
path: /tmp path: /tmp
- name: load docker image - name: load docker image
env: env:
imgname: ${{ needs.build.outputs.imgname }}
version: ${{ needs.build.outputs.version }} version: ${{ needs.build.outputs.version }}
run: | run: |
unzip -q /tmp/emqx-docker-${version}.zip -d /tmp unzip -q /tmp/${imgname}-docker-${version}.zip -d /tmp
docker load < /tmp/emqx-docker-${version} docker load < /tmp/${imgname}-docker-${version}
- name: docker compose up - name: docker compose up
timeout-minutes: 5 timeout-minutes: 5
env: env:
TARGET: emqx/emqx TARGET: emqx/${{ needs.build.outputs.imgname }}
EMQX_TAG: ${{ needs.build.outputs.version }} EMQX_TAG: ${{ needs.build.outputs.version }}
PGSQL_TAG: ${{ matrix.pgsql_tag }} PGSQL_TAG: ${{ matrix.pgsql_tag }}
run: | run: |
@ -343,14 +358,15 @@ jobs:
path: /tmp path: /tmp
- name: load docker image - name: load docker image
env: env:
imgname: ${{ needs.build.outputs.imgname }}
version: ${{ needs.build.outputs.version }} version: ${{ needs.build.outputs.version }}
run: | run: |
unzip -q /tmp/emqx-docker-${version}.zip -d /tmp unzip -q /tmp/${imgname}-docker-${version}.zip -d /tmp
docker load < /tmp/emqx-docker-${version} docker load < /tmp/${imgname}-docker-${version}
- name: docker compose up - name: docker compose up
timeout-minutes: 5 timeout-minutes: 5
env: env:
TARGET: emqx/emqx TARGET: emqx/${{ needs.build.outputs.imgname }}
EMQX_TAG: ${{ needs.build.outputs.version }} EMQX_TAG: ${{ needs.build.outputs.version }}
MYSQL_TAG: 8 MYSQL_TAG: 8
run: | run: |

View File

@ -41,7 +41,7 @@ LABEL org.label-schema.docker.dockerfile="Dockerfile" \
org.label-schema.url="https://emqx.io" \ org.label-schema.url="https://emqx.io" \
org.label-schema.vcs-type="Git" \ org.label-schema.vcs-type="Git" \
org.label-schema.vcs-url="https://github.com/emqx/emqx" \ org.label-schema.vcs-url="https://github.com/emqx/emqx" \
maintainer="Raymond M Mouthaan <raymondmmouthaan@gmail.com>, Huang Rui <vowstar@gmail.com>, EMQ X Team <support@emqx.io>" maintainer="EMQ X Team <support@emqx.io>"
ARG QEMU_ARCH=x86_64 ARG QEMU_ARCH=x86_64
ARG EMQX_NAME=emqx ARG EMQX_NAME=emqx

View File

@ -1,8 +1,10 @@
#!/usr/bin/make -f #!/usr/bin/make -f
# -*- makefile -*- # -*- makefile -*-
## default globals ## default globals.
TARGET ?= emqx/emqx ## when built with `make docker` command the default profile is either emqx or emqx-ee (for enterprise)
## or the TARGET varialbe can be set beforehand to force a different name
TARGET ?= emqx/$(PROFILE)
QEMU_ARCH ?= x86_64 QEMU_ARCH ?= x86_64
ARCH ?= amd64 ARCH ?= amd64
QEMU_VERSION ?= v5.0.0-2 QEMU_VERSION ?= v5.0.0-2