ci: fix relup test workflow and upgrade builder to 5.0-17

builder 5.0-17 has emqtt-bench and lux included
so we do not need to rebuild the software for each ci job
This commit is contained in:
Zaiming (Stone) Shi 2022-06-24 06:09:48 +02:00
parent 0d6c4e0996
commit d3f8ebd10f
17 changed files with 155 additions and 124 deletions

View File

@ -3,7 +3,7 @@ version: '3.9'
services: services:
erlang24: erlang24:
container_name: erlang24 container_name: erlang24
image: ghcr.io/emqx/emqx-builder/5.0-16:1.13.4-24.2.1-1-ubuntu20.04 image: ghcr.io/emqx/emqx-builder/5.0-17:1.13.4-24.2.1-1-ubuntu20.04
env_file: env_file:
- conf.env - conf.env
environment: environment:

View File

@ -1,14 +1,11 @@
[config var=PROFILE] [config var=PROFILE]
[config var=PACKAGE_PATH] [config var=PACKAGE_PATH]
[config var=BENCH_PATH]
[config var=VSN] [config var=VSN]
[config var=OLD_VSNS] [config var=OLD_VSN]
[config shell_cmd=/bin/bash] [config shell_cmd=/bin/bash]
[config timeout=600000] [config timeout=600000]
[loop old_vsn $OLD_VSNS]
[shell http_server] [shell http_server]
!cd http_server !cd http_server
!rebar3 shell !rebar3 shell
@ -22,10 +19,10 @@
[shell emqx1] [shell emqx1]
!cd $PACKAGE_PATH !cd $PACKAGE_PATH
!mkdir -p emqx1 !mkdir -p emqx1
!tar -C emqx -zxf ${PROFILE}-$(echo $old_vsn | sed -r 's/[v|e]//g')-*-ubuntu20.04-amd64.tar.gz !tar -C emqx1 -zxf ${PROFILE}-$(echo $OLD_VSN | sed -r 's/[v|e]//g')-*-ubuntu20.04-amd64.tar.gz
?SH-PROMPT ?SH-PROMPT
!cd emqx !cd emqx1
!export EMQX_NODE_NAME='emqx1@127.0.0.1' !export EMQX_NODE_NAME='emqx1@127.0.0.1'
!./bin/emqx start !./bin/emqx start
?EMQX .* is started successfully! ?EMQX .* is started successfully!
@ -34,7 +31,7 @@
[shell emqx2] [shell emqx2]
!cd $PACKAGE_PATH !cd $PACKAGE_PATH
!mkdir -p emqx2 !mkdir -p emqx2
!tar -C emqx -zxf ${PROFILE}-$(echo $old_vsn | sed -r 's/[v|e]//g')-*-ubuntu20.04-amd64.tar.gz !tar -C emqx2 -zxf ${PROFILE}-$(echo $OLD_VSN | sed -r 's/[v|e]//g')-*-ubuntu20.04-amd64.tar.gz
?SH-PROMPT ?SH-PROMPT
!cd emqx2 !cd emqx2
@ -58,12 +55,12 @@
?SH-PROMPT ?SH-PROMPT
## create a webhook data bridge with id "my_webhook" ## create a webhook data bridge with id "my_webhook"
!curl --user admin:public --silent --show-error 'http://localhost:18083/api/v5/bridges' -X 'POST' -H 'Content-Type: application/json' --data-binary '{"name":"my_webhook","method":"post","url":"http://127.0.0.1:7077/counter","headers":{"content-type":"application/json"},"pool_size":4,"enable_pipelining":100,"connect_timeout":"5s","request_timeout":"5s","max_retries":3,"type":"webhook","ssl":{"enable":false,"verify":"verify_none"}}' | jq '.status' !curl --user admin:public --silent --show-error 'http://localhost:18082/api/v5/bridges' -X 'POST' -H 'Content-Type: application/json' --data-binary '{"name":"my_webhook","method":"post","url":"http://127.0.0.1:7077/counter","headers":{"content-type":"application/json"},"pool_size":4,"enable_pipelining":100,"connect_timeout":"5s","request_timeout":"5s","max_retries":3,"type":"webhook","ssl":{"enable":false,"verify":"verify_none"}}' | jq '.status'
?connected ?connected
?SH-PROMPT ?SH-PROMPT
## create a rule that uses the webhook as action, the rule id = "rule_edsy" ## create a rule that uses the webhook as action, the rule id = "rule_edsy"
!curl --user admin:public --silent --show-error 'http://localhost:18083/api/v5/rules' -X 'POST' -H 'Content-Type: application/json' --data-binary '{"id":"rule_edsy","sql":"SELECT\n *\nFROM\n \"t/#\"","actions":["webhook:my_webhook"]}' | jq '.id' !curl --user admin:public --silent --show-error 'http://localhost:18082/api/v5/rules' -X 'POST' -H 'Content-Type: application/json' --data-binary '{"id":"rule_edsy","sql":"SELECT\n *\nFROM\n \"t/#\"","actions":["webhook:my_webhook"]}' | jq '.id'
?rule_edsy ?rule_edsy
?SH-PROMPT ?SH-PROMPT
@ -77,9 +74,8 @@
?SH-PROMPT ?SH-PROMPT
[shell bench] [shell bench]
!cd $BENCH_PATH
!./emqtt_bench pub -c 10 -I 1000 -t t/%i -s 64 -L 300 !emqtt_bench pub -c 10 -I 1000 -t t/%i -s 64 -L 300
???sent ???sent
[shell emqx1] [shell emqx1]
@ -98,11 +94,11 @@
?SH-PROMPT ?SH-PROMPT
## 2. downgrade to the old version ## 2. downgrade to the old version
!./bin/emqx install $old_vsn !./bin/emqx install $OLD_VSN
?Made release permanent:.* ?Made release permanent:.*
?SH-PROMPT ?SH-PROMPT
!./bin/emqx versions | grep permanent | grep -qs "$old_vsn" !./bin/emqx versions | grep permanent | grep -qs "$OLD_VSN"
?SH-PROMPT: ?SH-PROMPT:
!echo ==$$?== !echo ==$$?==
?^==0== ?^==0==
@ -137,11 +133,11 @@
?SH-PROMPT ?SH-PROMPT
## 2. downgrade to the old version ## 2. downgrade to the old version
!./bin/emqx install $old_vsn !./bin/emqx install $OLD_VSN
?Made release permanent:.* ?Made release permanent:.*
?SH-PROMPT ?SH-PROMPT
!./bin/emqx versions | grep permanent | grep -qs "$old_vsn" !./bin/emqx versions | grep permanent | grep -qs "$OLD_VSN"
?SH-PROMPT: ?SH-PROMPT:
!echo ==$$?== !echo ==$$?==
?^==0== ?^==0==
@ -168,11 +164,11 @@
!sleep 5 !sleep 5
?SH-PROMPT ?SH-PROMPT
!curl --user admin:public --silent --show-error http://localhost:18083/api/v5/rules | jq --raw-output ".[0].node_metrics[] | select(.node==\"emqx@127.0.0.1\") | .metrics.matched" !curl --user admin:public --silent --show-error http://localhost:18083/api/v5/rules | jq --raw-output ".[0].node_metrics[] | select(.node==\"emqx1@127.0.0.1\") | .metrics.matched"
?300 ?300
?SH-PROMPT ?SH-PROMPT
!curl --user admin:public --silent --show-error http://localhost:18083/api/v5/rules | jq --raw-output ".[0].node_metrics[] | select(.node==\"emqx@127.0.0.1\") | .metrics.\"actions.success\"" !curl --user admin:public --silent --show-error http://localhost:18083/api/v5/rules | jq --raw-output ".[0].node_metrics[] | select(.node==\"emqx1@127.0.0.1\") | .metrics.\"actions.success\""
?\{"data":(29[0-9])|(300),"code":0\} ?\{"data":(29[0-9])|(300),"code":0\}
?SH-PROMPT ?SH-PROMPT
@ -212,8 +208,6 @@
!halt(3). !halt(3).
?SH-PROMPT: ?SH-PROMPT:
[endloop]
[cleanup] [cleanup]
!echo ==$$?== !echo ==$$?==
?==0== ?==0==

View File

@ -20,7 +20,7 @@ jobs:
prepare: prepare:
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
container: "ghcr.io/emqx/emqx-builder/5.0-16:1.13.4-24.2.1-1-ubuntu20.04" container: "ghcr.io/emqx/emqx-builder/5.0-17:1.13.4-24.2.1-1-ubuntu20.04"
outputs: outputs:
BUILD_PROFILE: ${{ steps.get_profile.outputs.BUILD_PROFILE }} BUILD_PROFILE: ${{ steps.get_profile.outputs.BUILD_PROFILE }}
@ -211,7 +211,7 @@ jobs:
tags: ${{ steps.meta.outputs.tags }} tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }} labels: ${{ steps.meta.outputs.labels }}
build-args: | build-args: |
BUILD_FROM=ghcr.io/emqx/emqx-builder/5.0-16:${{ matrix.elixir }}-${{ matrix.otp }}-${{ matrix.os[0] }} BUILD_FROM=ghcr.io/emqx/emqx-builder/5.0-17:${{ matrix.elixir }}-${{ matrix.otp }}-${{ matrix.os[0] }}
RUN_FROM=${{ matrix.os[1] }} RUN_FROM=${{ matrix.os[1] }}
EMQX_NAME=${{ steps.pre-meta.outputs.emqx_name }} EMQX_NAME=${{ steps.pre-meta.outputs.emqx_name }}
file: source/${{ matrix.os[2] }} file: source/${{ matrix.os[2] }}

View File

@ -213,7 +213,7 @@ jobs:
needs: prepare needs: prepare
runs-on: ${{ matrix.build_machine }} runs-on: ${{ matrix.build_machine }}
container: container:
image: "ghcr.io/emqx/emqx-builder/5.0-16:${{ matrix.elixir }}-${{ matrix.otp }}-${{ matrix.os }}" image: "ghcr.io/emqx/emqx-builder/5.0-17:${{ matrix.elixir }}-${{ matrix.otp }}-${{ matrix.os }}"
strategy: strategy:
fail-fast: false fail-fast: false
@ -328,7 +328,7 @@ jobs:
--pkgtype "${PKGTYPE}" \ --pkgtype "${PKGTYPE}" \
--arch "${ARCH}" \ --arch "${ARCH}" \
--elixir "${IsElixir}" \ --elixir "${IsElixir}" \
--builder "ghcr.io/emqx/emqx-builder/5.0-16:${ELIXIR}-${OTP}-${SYSTEM}" --builder "ghcr.io/emqx/emqx-builder/5.0-17:${ELIXIR}-${OTP}-${SYSTEM}"
done done
- uses: actions/upload-artifact@v1 - uses: actions/upload-artifact@v1
with: with:

View File

@ -39,7 +39,7 @@ jobs:
- ubuntu20.04 - ubuntu20.04
- el8 - el8
container: "ghcr.io/emqx/emqx-builder/5.0-16:${{ matrix.elixir }}-${{ matrix.otp }}-${{ matrix.os }}" container: "ghcr.io/emqx/emqx-builder/5.0-17:${{ matrix.elixir }}-${{ matrix.otp }}-${{ matrix.os }}"
steps: steps:
- uses: AutoModality/action-clean@v1 - uses: AutoModality/action-clean@v1

View File

@ -5,7 +5,7 @@ on: [pull_request, push]
jobs: jobs:
check_deps_integrity: check_deps_integrity:
runs-on: ubuntu-20.04 runs-on: ubuntu-20.04
container: ghcr.io/emqx/emqx-builder/5.0-16:1.13.4-24.2.1-1-ubuntu20.04 container: ghcr.io/emqx/emqx-builder/5.0-17:1.13.4-24.2.1-1-ubuntu20.04
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v2

View File

@ -5,7 +5,7 @@ on: [pull_request]
jobs: jobs:
code_style_check: code_style_check:
runs-on: ubuntu-20.04 runs-on: ubuntu-20.04
container: "ghcr.io/emqx/emqx-builder/5.0-16:1.13.4-24.2.1-1-ubuntu20.04" container: "ghcr.io/emqx/emqx-builder/5.0-17:1.13.4-24.2.1-1-ubuntu20.04"
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
with: with:

View File

@ -8,7 +8,7 @@ jobs:
elixir_apps_check: elixir_apps_check:
runs-on: ubuntu-latest runs-on: ubuntu-latest
# just use the latest builder # just use the latest builder
container: "ghcr.io/emqx/emqx-builder/5.0-16:1.13.4-24.2.1-1-ubuntu20.04" container: "ghcr.io/emqx/emqx-builder/5.0-17:1.13.4-24.2.1-1-ubuntu20.04"
strategy: strategy:
fail-fast: false fail-fast: false

View File

@ -7,7 +7,7 @@ on: [pull_request, push]
jobs: jobs:
elixir_deps_check: elixir_deps_check:
runs-on: ubuntu-20.04 runs-on: ubuntu-20.04
container: ghcr.io/emqx/emqx-builder/5.0-16:1.13.4-24.2.1-1-ubuntu20.04 container: ghcr.io/emqx/emqx-builder/5.0-17:1.13.4-24.2.1-1-ubuntu20.04
steps: steps:
- name: Checkout - name: Checkout

View File

@ -12,7 +12,7 @@ on:
jobs: jobs:
elixir_release_build: elixir_release_build:
runs-on: ubuntu-latest runs-on: ubuntu-latest
container: ghcr.io/emqx/emqx-builder/5.0-16:1.13.4-24.2.1-1-ubuntu20.04 container: ghcr.io/emqx/emqx-builder/5.0-17:1.13.4-24.2.1-1-ubuntu20.04
steps: steps:
- name: Checkout - name: Checkout

View File

@ -24,7 +24,7 @@ jobs:
- amd64 - amd64
runs-on: aws-amd64 runs-on: aws-amd64
container: "ghcr.io/emqx/emqx-builder/5.0-16:${{ matrix.elixir}}-${{ matrix.otp }}-${{ matrix.os }}" container: "ghcr.io/emqx/emqx-builder/5.0-17:${{ matrix.elixir}}-${{ matrix.otp }}-${{ matrix.os }}"
defaults: defaults:
run: run:

View File

@ -16,7 +16,7 @@ jobs:
prepare: prepare:
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
container: ghcr.io/emqx/emqx-builder/5.0-16:1.13.4-24.2.1-1-alpine3.15.1 container: ghcr.io/emqx/emqx-builder/5.0-17:1.13.4-24.2.1-1-alpine3.15.1
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
@ -68,7 +68,7 @@ jobs:
- name: make docker image - name: make docker image
working-directory: source working-directory: source
env: env:
EMQX_BUILDER: ghcr.io/emqx/emqx-builder/5.0-16:${{ matrix.elixir }}-${{ matrix.otp }}-${{ matrix.os[0] }} EMQX_BUILDER: ghcr.io/emqx/emqx-builder/5.0-17:${{ matrix.elixir }}-${{ matrix.otp }}-${{ matrix.os[0] }}
EMQX_RUNNER: ${{ matrix.os[1] }} EMQX_RUNNER: ${{ matrix.os[1] }}
run: | run: |
make ${{ matrix.profile }}-docker make ${{ matrix.profile }}-docker
@ -140,7 +140,7 @@ jobs:
- name: make docker image - name: make docker image
working-directory: source working-directory: source
env: env:
EMQX_BUILDER: ghcr.io/emqx/emqx-builder/5.0-16:${{ matrix.elixir }}-${{ matrix.otp }}-${{ matrix.os[0] }} EMQX_BUILDER: ghcr.io/emqx/emqx-builder/5.0-17:${{ matrix.elixir }}-${{ matrix.otp }}-${{ matrix.os[0] }}
EMQX_RUNNER: ${{ matrix.os[1] }} EMQX_RUNNER: ${{ matrix.os[1] }}
run: | run: |
make ${{ matrix.profile }}-docker make ${{ matrix.profile }}-docker

View File

@ -14,104 +14,141 @@ on:
pull_request: pull_request:
jobs: jobs:
relup_test: relup_test_plan:
runs-on: aws-amd64 runs-on: ubuntu-20.04
container: ghcr.io/emqx/emqx-builder/4.4-12:24.1.5-3-ubuntu20.04
strategy: outputs:
matrix: ce_vsn: ${{ steps.find-versions.outputs.CUR_CE_VSN }}
profile: ee_vsn: ${{ steps.find-versions.outputs.CUR_EE_VSN }}
- emqx old_vsns: ${{ steps.generate-matrix.outputs.OLD_VERSIONS }}
- emqx-enterprise
otp:
- 24.2.1-1
# no need to use more than 1 version of Elixir, since tests
# run using only Erlang code. This is needed just to specify
# the base image.
elixir:
- 1.13.4
os:
- ubuntu20.04
arch:
- amd64
container: "ghcr.io/emqx/emqx-builder/5.0-16:${{ matrix.elixir }}-${{ matrix.otp }}-${{ matrix.os }}"
defaults: defaults:
run: run:
shell: bash shell: bash
steps: steps:
- uses: AutoModality/action-clean@v1
- uses: actions/setup-python@v2
with:
python-version: '3.8'
architecture: 'x64'
- uses: actions/checkout@v2 - uses: actions/checkout@v2
name: Checkout
with: with:
repository: emqx/paho.mqtt.testing
ref: develop-4.0
path: paho.mqtt.testing
- uses: actions/checkout@v2
with:
repository: emqx/emqtt-bench
ref: 0.3.4
path: emqtt-bench
- uses: actions/checkout@v2
with:
repository: hawk/lux
ref: lux-2.6
path: lux
- uses: actions/checkout@v2
with:
repository: ${{ github.repository }}
path: emqx path: emqx
fetch-depth: 0 fetch-depth: 0
- name: Find versions
- name: Get old vsn id: find-versions
run: | run: |
set -x set -x
echo "OLD_VSNS=$(emqx/scripts/relup-base-vsns.sh ${{ matrix.profile }} | xargs echo -n)" >> $GITHUB_ENV cd emqx
echo "NOW_VSN=$(emqx/pkg-vsn.sh ${{ matrix.profile }})" >> $GITHUB_ENV ce_vsn="$(./pkg-vsn.sh opensource)"
ee_vsn="$(./pkg-vsn.sh enterprise)"
old_ce_vsns="$(./scripts/relup-base-vsns.sh opensource | xargs)"
old_ee_vsns="$(./scripts/relup-base-vsns.sh enterprise | xargs)"
echo "OLD_CE_VERSIONS=$old_ce_vsns" >> $GITHUB_ENV
echo "OLD_EE_VERSIONS=$old_ee_vsns" >> $GITHUB_ENV
echo "::set-output name=CUR_CE_VSN::$ce_vsn"
echo "::set-output name=CUR_EE_VSN::$ee_vsn"
- name: Generate matrix
id: generate-matrix
run: |
set -x
old_vsns=$(echo -n "${OLD_CE_VSNS} ${OLD_EE_VSNS}" | sed 's/ $//g' | jq -R -s -c 'split(" ")')
echo "::set-output name=OLD_VERSIONS::$old_vsns"
relup_test_build:
needs: relup_test_plan
runs-on: ubuntu-20.04
strategy:
matrix:
profile:
- emqx
- emqx-enterprise
container: "ghcr.io/emqx/emqx-builder/5.0-17:1.13.4-24.2.1-1-ubuntu20.04"
defaults:
run:
shell: bash
steps:
- name: build emqx - name: build emqx
env: env:
PROFILE: ${{ matrix.profile }} PROFILE: ${{ matrix.profile }}
run: make -C emqx ${PROFILE}-tgz run: make -C emqx ${PROFILE}-tgz
- name: build emqtt-bench - uses: actions/upload-artifact@v2
run: make -C emqtt-bench name: Upload built emqx and test scenario
- name: build lux with:
run: | name: emqx_built
set -e -u -x path: |
cd lux emqx/_packages/*/*.tar.gz
autoconf emqx/.ci/fvt_tests
./configure
make relup_test_run:
make install needs:
- name: run relup test - relup_test_plan
env: - relup_test_build
PROFILE: ${{ matrix.profile }} runs-on: ubuntu-20.04
timeout-minutes: 20 container: "ghcr.io/emqx/emqx-builder/5.0-17:1.13.4-24.2.1-1-ubuntu20.04"
strategy:
fail-fast: false
matrix:
old_vsn: ${{ fromJson(needs.relup_test_plan.outputs.OLD_VERSIONS) }}
env:
OLD_VSN: "${{ matrix.old_vsn }}"
CUR_CE_VSN: "${{ needs.relup_test_plan.outputs.CUR_CE_VSN }}"
CUR_EE_VSN: "${{ needs.relup_test_plan.outputs.CUR_EE_VSN }}"
defaults:
run:
shell: bash
steps:
- uses: actions/download-artifact@v2
name: Download built emqx and test scenario
with:
name: emqx_built
path: emqx_built
- name: Prepare packages
run: | run: |
set -e -x -u set -e -x -u
if [ -n "$OLD_VSNS" ]; then mkdir -p packages
mkdir -p packages cp emqx_built/_packages/*/*.tar.gz packages
cp emqx/_packages/${PROFILE}/*.tar.gz packages/ cd packages
cp emqx/_upgrade_base/*.tar.gz packages/ case "$OLD_VSN" in
lux \ e*)
--case_timeout infinity \ profile='emqx-enterprise'
--var PROFILE=$PROFILE \ s3dir='emqx-ee'
--var PACKAGE_PATH=$(pwd)/packages \ ;;
--var BENCH_PATH=$(pwd)/emqtt-bench \ v*)
--var VSN="$NOW_VSN" \ profile='emqx'
--var OLD_VSNS="$OLD_VSNS" \ s3dir='emqx-ce'
emqx/.ci/fvt_tests/relup.lux ;;
fi *)
- uses: actions/upload-artifact@v1 echo "unknown old version $OLD_VSN"
exit 1
;;
esac
wget --no-verbose https://s3-us-west-2.amazonaws.com/packages.emqx/${s3dir}/$OLD_VSN/${profile}-${OLD_VSN#[e|v]}-24.2.1-1-ubuntu20.04-amd64.tar.gz
- name: Run relup test scenario
timeout-minutes: 5
run: |
set -x
case "$OLD_VSN" in
e*)
cur_vsn=$CUR_EE_VSN
profile='emqx-enterprise'
;;
v*)
cur_vsn=$CUR_CE_VSN
profile='emqx'
;;
esac
lux \
--progress verbose \
--case_timeout infinity \
--var PROFILE="$profile" \
--var PACKAGE_PATH=$(pwd)/packages \
--var VSN="$cur_vsn" \
--var OLD_VSN="$OLD_VSN" \
emqx_built/.ci/fvt_tests/relup.lux
- uses: actions/upload-artifact@v2
name: Save debug data
if: failure() if: failure()
with: with:
name: lux_logs name: debug_data
path: lux_logs path: |
- uses: actions/upload-artifact@v1 packages/emqx1/log/emqx.log.1
if: failure() packages/emqx2/log/emqx.log.1
with: packages/*.zip
name: packages lux_logs
path: packages

View File

@ -17,7 +17,7 @@ jobs:
prepare: prepare:
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
container: "ghcr.io/emqx/emqx-builder/5.0-16:1.13.4-24.2.1-1-ubuntu20.04" container: "ghcr.io/emqx/emqx-builder/5.0-17:1.13.4-24.2.1-1-ubuntu20.04"
outputs: outputs:
fast_ct_apps: ${{ steps.run_find_apps.outputs.fast_ct_apps }} fast_ct_apps: ${{ steps.run_find_apps.outputs.fast_ct_apps }}
docker_ct_apps: ${{ steps.run_find_apps.outputs.docker_ct_apps }} docker_ct_apps: ${{ steps.run_find_apps.outputs.docker_ct_apps }}
@ -54,7 +54,7 @@ jobs:
defaults: defaults:
run: run:
shell: bash shell: bash
container: "ghcr.io/emqx/emqx-builder/5.0-16:1.13.4-24.2.1-1-ubuntu20.04" container: "ghcr.io/emqx/emqx-builder/5.0-17:1.13.4-24.2.1-1-ubuntu20.04"
steps: steps:
- uses: AutoModality/action-clean@v1 - uses: AutoModality/action-clean@v1
@ -144,7 +144,7 @@ jobs:
matrix: matrix:
app_name: ${{ fromJson(needs.prepare.outputs.fast_ct_apps) }} app_name: ${{ fromJson(needs.prepare.outputs.fast_ct_apps) }}
runs-on: aws-amd64 runs-on: aws-amd64
container: "ghcr.io/emqx/emqx-builder/5.0-16:1.13.4-24.2.1-1-ubuntu20.04" container: "ghcr.io/emqx/emqx-builder/5.0-17:1.13.4-24.2.1-1-ubuntu20.04"
defaults: defaults:
run: run:
shell: bash shell: bash
@ -179,7 +179,7 @@ jobs:
- ct - ct
- ct_docker - ct_docker
runs-on: ubuntu-20.04 runs-on: ubuntu-20.04
container: "ghcr.io/emqx/emqx-builder/5.0-16:1.13.4-24.2.1-1-ubuntu20.04" container: "ghcr.io/emqx/emqx-builder/5.0-17:1.13.4-24.2.1-1-ubuntu20.04"
steps: steps:
- uses: AutoModality/action-clean@v1 - uses: AutoModality/action-clean@v1
- uses: actions/download-artifact@v2 - uses: actions/download-artifact@v2

View File

@ -3,7 +3,7 @@ REBAR = $(CURDIR)/rebar3
BUILD = $(CURDIR)/build BUILD = $(CURDIR)/build
SCRIPTS = $(CURDIR)/scripts SCRIPTS = $(CURDIR)/scripts
export EMQX_RELUP ?= true export EMQX_RELUP ?= true
export EMQX_DEFAULT_BUILDER = ghcr.io/emqx/emqx-builder/5.0-16:1.13.4-24.2.1-1-debian11 export EMQX_DEFAULT_BUILDER = ghcr.io/emqx/emqx-builder/5.0-17:1.13.4-24.2.1-1-debian11
export EMQX_DEFAULT_RUNNER = debian:11-slim export EMQX_DEFAULT_RUNNER = debian:11-slim
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,4 +1,4 @@
ARG BUILD_FROM=ghcr.io/emqx/emqx-builder/5.0-16:1.13.4-24.2.1-1-debian11 ARG BUILD_FROM=ghcr.io/emqx/emqx-builder/5.0-17:1.13.4-24.2.1-1-debian11
ARG RUN_FROM=debian:11-slim ARG RUN_FROM=debian:11-slim
FROM ${BUILD_FROM} AS builder FROM ${BUILD_FROM} AS builder

View File

@ -9,7 +9,7 @@
## example: ## example:
## ./scripts/buildx.sh --profile emqx --pkgtype tgz --arch arm64 \ ## ./scripts/buildx.sh --profile emqx --pkgtype tgz --arch arm64 \
## --builder ghcr.io/emqx/emqx-builder/5.0-16:1.13.4-24.2.1-1-debian10 ## --builder ghcr.io/emqx/emqx-builder/5.0-17:1.13.4-24.2.1-1-debian10
set -euo pipefail set -euo pipefail
@ -24,7 +24,7 @@ help() {
echo "--arch amd64|arm64: Target arch to build the EMQX package for" echo "--arch amd64|arm64: Target arch to build the EMQX package for"
echo "--src_dir <SRC_DIR>: EMQX source ode in this dir, default to PWD" echo "--src_dir <SRC_DIR>: EMQX source ode in this dir, default to PWD"
echo "--builder <BUILDER>: Builder image to pull" echo "--builder <BUILDER>: Builder image to pull"
echo " E.g. ghcr.io/emqx/emqx-builder/5.0-16:1.13.4-24.2.1-1-debian10" echo " E.g. ghcr.io/emqx/emqx-builder/5.0-17:1.13.4-24.2.1-1-debian10"
} }
while [ "$#" -gt 0 ]; do while [ "$#" -gt 0 ]; do