chore(elixir): change image/package versioning convention

We now go from "most specific" to "most general" versions: Elixir ->
OTP -> OS.
This commit is contained in:
Thales Macedo Garitezi 2022-01-07 17:30:11 -03:00
parent 01092982c1
commit a91880780a
No known key found for this signature in database
GPG Key ID: DD279F8152A9B6DD
8 changed files with 15 additions and 15 deletions

View File

@ -20,7 +20,7 @@ jobs:
runs-on: ubuntu-20.04 runs-on: ubuntu-20.04
# prepare source with any OTP version, no need for a matrix # prepare source with any OTP version, no need for a matrix
# FIXME: use tagged version once merged # FIXME: use tagged version once merged
container: "ghcr.io/emqx/emqx-builder/elixir:24.1.5-3-1.13.1-ubuntu20.04" container: "ghcr.io/emqx/emqx-builder/elixir:1.13.1-24.1.5-3-ubuntu20.04"
outputs: outputs:
ce_old_vsns: ${{ steps.find_old_versons.outputs.ce_old_vsns }} ce_old_vsns: ${{ steps.find_old_versons.outputs.ce_old_vsns }}
@ -351,7 +351,7 @@ jobs:
--otp "${OTP}" \ --otp "${OTP}" \
--elixir "${ELIXIR}" \ --elixir "${ELIXIR}" \
--system "${SYSTEM}" \ --system "${SYSTEM}" \
--builder "ghcr.io/emqx/emqx-builder/elixir:${OTP}-${ELIXIR}-${SYSTEM}" --builder "ghcr.io/emqx/emqx-builder/elixir:${ELIXIR}-${OTP}-${SYSTEM}"
## the pkg build is incremental on the tgz build ## the pkg build is incremental on the tgz build
./scripts/buildx.sh \ ./scripts/buildx.sh \
--profile "${PROFILE}" \ --profile "${PROFILE}" \
@ -360,7 +360,7 @@ jobs:
--otp "${OTP}" \ --otp "${OTP}" \
--elixir "${ELIXIR}" \ --elixir "${ELIXIR}" \
--system "${SYSTEM}" \ --system "${SYSTEM}" \
--builder "ghcr.io/emqx/emqx-builder/elixir:${OTP}-${ELIXIR}-${SYSTEM}" --builder "ghcr.io/emqx/emqx-builder/elixir:${ELIXIR}-${OTP}-${SYSTEM}"
./scripts/buildx.sh \ ./scripts/buildx.sh \
--profile "${PROFILE}" \ --profile "${PROFILE}" \
@ -369,7 +369,7 @@ jobs:
--otp "${OTP}" \ --otp "${OTP}" \
--elixir "${ELIXIR}" \ --elixir "${ELIXIR}" \
--system "${SYSTEM}" \ --system "${SYSTEM}" \
--builder "ghcr.io/emqx/emqx-builder/elixir:${OTP}-${ELIXIR}-${SYSTEM}" --builder "ghcr.io/emqx/emqx-builder/elixir:${ELIXIR}-${OTP}-${SYSTEM}"
- name: create sha256 - name: create sha256
env: env:
@ -450,7 +450,7 @@ jobs:
labels: ${{ steps.meta.outputs.labels }} labels: ${{ steps.meta.outputs.labels }}
build-args: | build-args: |
# FIXME: use tagged version once merged # FIXME: use tagged version once merged
BUILD_FROM=ghcr.io/emqx/emqx-builder/elixir:${{ matrix.otp }}-${{ matrix.elixir }}-alpine3.14 BUILD_FROM=ghcr.io/emqx/emqx-builder/elixir:${{ matrix.elixir }}-${{ matrix.otp }}-alpine3.14
RUN_FROM=alpine:3.14 RUN_FROM=alpine:3.14
EMQX_NAME=${{ matrix.profile }} EMQX_NAME=${{ matrix.profile }}
file: source/deploy/docker/Dockerfile file: source/deploy/docker/Dockerfile

View File

@ -42,7 +42,7 @@ jobs:
- centos7 - centos7
# FIXME: use tagged version once merged # FIXME: use tagged version once merged
container: "ghcr.io/emqx/emqx-builder/elixir:${{ matrix.otp }}-${{ matrix.elixir }}-${{ matrix.os }}" container: "ghcr.io/emqx/emqx-builder/elixir:${{ matrix.elixir }}-${{ matrix.otp }}-${{ matrix.os }}"
steps: steps:
- uses: actions/checkout@v1 - uses: actions/checkout@v1
@ -51,7 +51,7 @@ jobs:
echo "EMQX_NAME=${{ matrix.profile }}" >> $GITHUB_ENV echo "EMQX_NAME=${{ matrix.profile }}" >> $GITHUB_ENV
echo "CODE_PATH=$GITHUB_WORKSPACE" >> $GITHUB_ENV echo "CODE_PATH=$GITHUB_WORKSPACE" >> $GITHUB_ENV
echo "EMQX_PKG_NAME=${{ matrix.profile }}-$(./pkg-vsn.sh ${{ matrix.profile }})-otp${{ matrix.otp }}-${{ matrix.os }}-amd64" >> $GITHUB_ENV echo "EMQX_PKG_NAME=${{ matrix.profile }}-$(./pkg-vsn.sh ${{ matrix.profile }})-otp${{ matrix.otp }}-${{ matrix.os }}-amd64" >> $GITHUB_ENV
echo "EMQX_ELIXIRPKG_NAME=${{ matrix.profile }}-$(./pkg-vsn.sh ${{ matrix.profile }})-otp${{ matrix.otp }}-elixir${{ matrix.elixir }}-${{ matrix.os }}-amd64" >> $GITHUB_ENV echo "EMQX_ELIXIRPKG_NAME=${{ matrix.profile }}-$(./pkg-vsn.sh ${{ matrix.profile }})-elixir${{ matrix.elixir }}-otp${{ matrix.otp }}-${{ matrix.os }}-amd64" >> $GITHUB_ENV
- name: Get deps git refs for cache - name: Get deps git refs for cache
id: deps-refs id: deps-refs
run: | run: |

View File

@ -15,7 +15,7 @@ jobs:
runs-on: ubuntu-20.04 runs-on: ubuntu-20.04
# prepare source with any OTP version, no need for a matrix # prepare source with any OTP version, no need for a matrix
# FIXME: use tagged version once merged # FIXME: use tagged version once merged
container: ghcr.io/emqx/emqx-builder/elixir:24.1.5-3-1.13.1-alpine3.14 container: ghcr.io/emqx/emqx-builder/elixir:1.13.1-24.1.5-3-alpine3.14
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
@ -85,7 +85,7 @@ jobs:
working-directory: source working-directory: source
env: env:
# FIXME: use tagged version once merged # FIXME: use tagged version once merged
EMQX_BUILDER: ghcr.io/emqx/emqx-builder/elixir:${{ matrix.otp }}-1.13.1-${{ matrix.os }} EMQX_BUILDER: ghcr.io/emqx/emqx-builder/elixir:1.13.1-${{ matrix.otp }}-${{ matrix.os }}
run: | run: |
make ${{ matrix.profile }}-docker make ${{ matrix.profile }}-docker
- name: run emqx - name: run emqx
@ -160,7 +160,7 @@ jobs:
working-directory: source working-directory: source
env: env:
# FIXME: use tagged version once merged # FIXME: use tagged version once merged
EMQX_BUILDER: ghcr.io/emqx/emqx-builder/elixir:${{ matrix.otp }}-1.13.1-${{ matrix.os }} EMQX_BUILDER: ghcr.io/emqx/emqx-builder/elixir:1.13.1-${{ matrix.otp }}-${{ matrix.os }}
run: | run: |
make ${{ matrix.profile }}-docker make ${{ matrix.profile }}-docker
echo "TARGET=emqx/${{ matrix.profile }}" >> $GITHUB_ENV echo "TARGET=emqx/${{ matrix.profile }}" >> $GITHUB_ENV

View File

@ -4,7 +4,7 @@ REBAR = $(CURDIR)/rebar3
BUILD = $(CURDIR)/build BUILD = $(CURDIR)/build
SCRIPTS = $(CURDIR)/scripts SCRIPTS = $(CURDIR)/scripts
# FIXME: use tagged version once merged # FIXME: use tagged version once merged
export EMQX_DEFAULT_BUILDER = ghcr.io/emqx/emqx-builder/elixir:24.1.5-3-1.13.1-alpine3.14 export EMQX_DEFAULT_BUILDER = ghcr.io/emqx/emqx-builder/elixir:1.13.1-24.1.5-3-alpine3.14
export EMQX_DEFAULT_RUNNER = alpine:3.14 export EMQX_DEFAULT_RUNNER = alpine:3.14
export OTP_VSN ?= $(shell $(CURDIR)/scripts/get-otp-vsn.sh) export OTP_VSN ?= $(shell $(CURDIR)/scripts/get-otp-vsn.sh)
export ELIXIR_VSN ?= $(shell $(CURDIR)/scripts/get-elixir-vsn.sh) export ELIXIR_VSN ?= $(shell $(CURDIR)/scripts/get-elixir-vsn.sh)

View File

@ -1,5 +1,5 @@
# FIXME: use tagged version once merged # FIXME: use tagged version once merged
ARG BUILD_FROM=ghcr.io/emqx/emqx-builder/elixir:24.1.5-3-1.13.1-alpine3.14 ARG BUILD_FROM=ghcr.io/emqx/emqx-builder/elixir:1.13.1-24.1.5-3-alpine3.14
ARG RUN_FROM=alpine:3.14 ARG RUN_FROM=alpine:3.14
FROM ${BUILD_FROM} AS builder FROM ${BUILD_FROM} AS builder

View File

@ -15,7 +15,7 @@ endif
TAR_PKG_DIR ?= _build/$(EMQX_BUILD)/rel/emqx TAR_PKG_DIR ?= _build/$(EMQX_BUILD)/rel/emqx
TAR_PKG := $(EMQX_REL)/$(TAR_PKG_DIR)/emqx-$(PKG_VSN).tar.gz TAR_PKG := $(EMQX_REL)/$(TAR_PKG_DIR)/emqx-$(PKG_VSN).tar.gz
SOURCE_PKG := $(EMQX_NAME)_$(PKG_VSN)_$(shell dpkg --print-architecture) SOURCE_PKG := $(EMQX_NAME)_$(PKG_VSN)_$(shell dpkg --print-architecture)
TARGET_PKG := $(EMQX_NAME)-$(PKG_VSN)-otp$(OTP_VSN)$(ELIXIR_PKG_VSN)-$(SYSTEM)-$(ARCH) TARGET_PKG := $(EMQX_NAME)-$(PKG_VSN)$(ELIXIR_PKG_VSN)-otp$(OTP_VSN)-$(SYSTEM)-$(ARCH)
.PHONY: all .PHONY: all
all: | $(BUILT) all: | $(BUILT)

View File

@ -25,7 +25,7 @@ endif
TAR_PKG_DIR ?= _build/$(EMQX_BUILD)/rel/emqx TAR_PKG_DIR ?= _build/$(EMQX_BUILD)/rel/emqx
TAR_PKG := $(EMQX_REL)/$(TAR_PKG_DIR)/emqx-$(PKG_VSN).tar.gz TAR_PKG := $(EMQX_REL)/$(TAR_PKG_DIR)/emqx-$(PKG_VSN).tar.gz
SOURCE_PKG := emqx-$(RPM_VSN)-$(RPM_REL).$(shell uname -m) SOURCE_PKG := emqx-$(RPM_VSN)-$(RPM_REL).$(shell uname -m)
TARGET_PKG := $(EMQX_NAME)-$(PKG_VSN)-otp$(OTP_VSN)$(ELIXIR_PKG_VSN)-$(SYSTEM)-$(ARCH) TARGET_PKG := $(EMQX_NAME)-$(PKG_VSN)$(ELIXIR_PKG_VSN)-otp$(OTP_VSN)-$(SYSTEM)-$(ARCH)
SYSTEMD := $(shell if command -v systemctl >/dev/null 2>&1; then echo yes; fi) SYSTEMD := $(shell if command -v systemctl >/dev/null 2>&1; then echo yes; fi)
# Not $(PWD) as it does not work for make -C # Not $(PWD) as it does not work for make -C

View File

@ -101,7 +101,7 @@ PKG_VSN="${PKG_VSN:-$(./pkg-vsn.sh "$PROFILE")}"
if [ "$PKGTYPE" = "elixirpkg" ] if [ "$PKGTYPE" = "elixirpkg" ]
then then
PKG_NAME="${PROFILE}-${PKG_VSN}-otp${OTP_VSN}-elixir${ELIXIR_VSN}-${SYSTEM}-${ARCH}" PKG_NAME="${PROFILE}-${PKG_VSN}-elixir${ELIXIR_VSN}-otp${OTP_VSN}-${SYSTEM}-${ARCH}"
else else
PKG_NAME="${PROFILE}-${PKG_VSN}-otp${OTP_VSN}-${SYSTEM}-${ARCH}" PKG_NAME="${PROFILE}-${PKG_VSN}-otp${OTP_VSN}-${SYSTEM}-${ARCH}"
fi fi