7
7
description : ' Ref to release'
8
8
required : false
9
9
default : ' '
10
+ ref_name :
11
+ description : ' Tag to (re)release'
12
+ required : false
10
13
push :
11
14
tags :
12
15
- " *"
13
16
branches :
14
17
- ' ci/**'
18
+
15
19
jobs :
16
20
mac :
17
21
strategy :
18
22
fail-fast : false
19
23
matrix :
20
24
otp :
21
- - 26
25
+ - ' 26'
26
+ - ' 27'
27
+ rebar3 :
28
+ - ' 3.23.0'
22
29
openssl :
23
30
- openssl3
24
31
- openssl
25
32
- sys
26
33
os :
27
34
- macos-14
28
- - macos-13
35
+ - macos-15
29
36
runs-on : ${{ matrix.os }}
30
37
steps :
31
38
@@ -47,18 +54,16 @@ jobs:
47
54
ref : ${{ github.event.inputs.ref }}
48
55
49
56
- name : build release
50
- if : startsWith(github.ref, 'refs/tags/')
51
57
env :
52
58
QUICER_TLS_VER : ${{ matrix.openssl }}
53
59
run : |
54
- wget https://s3.amazonaws. com/rebar3/rebar3 && chmod +x rebar3
60
+ wget https://github. com/erlang/ rebar3/releases/download/${{ matrix. rebar3 }}/ rebar3
55
61
sudo mv rebar3 /usr/local/bin/ && sudo chmod +x /usr/local/bin/rebar3
56
62
erl -eval 'erlang:display(erlang:system_info(system_version)),halt()'
57
63
export QUICER_TLS_VER
58
64
BUILD_RELEASE=1 make
59
65
60
66
- uses : actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
61
- if : startsWith(github.ref, 'refs/tags/')
62
67
with :
63
68
name : quicer-${{ matrix.os }}-${{ matrix.otp }}-${{ matrix.openssl }}
64
69
path : |
69
74
strategy :
70
75
fail-fast : false
71
76
matrix :
72
- otp :
73
- - 26.2.5.2-1
77
+ erlang :
78
+ - otp : 26.2.5.2-3
79
+ builder : 5.4-4:1.15.7-26.2.5.2-3
80
+ - otp : 27.2-2
81
+ builder : 5.4-4:1.17.3-27.2-2
74
82
openssl :
75
83
- openssl3
76
84
- openssl
@@ -95,11 +103,7 @@ jobs:
95
103
- uses : actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
96
104
with :
97
105
fetch-depth : 0
98
-
99
- - name : install rebar3
100
- run : |
101
- wget https://s3.amazonaws.com/rebar3/rebar3 && chmod +x rebar3
102
- cp ./rebar3 /usr/local/bin/rebar3
106
+ ref : ${{ github.event.inputs.ref }}
103
107
104
108
- uses : docker/setup-buildx-action@d70bba72b1f3fd22344832f00baa16ece964efeb # v3.3.0
105
109
@@ -108,20 +112,21 @@ jobs:
108
112
platforms : ${{ matrix.arch }}
109
113
110
114
- name : build release
111
- if : startsWith(github.ref, 'refs/tags/')
112
115
run : |
113
- IMAGE=ghcr.io/emqx/emqx-builder/5.3-13:1.15.7-${{ matrix.otp }}-${{ matrix.os }}
114
- docker run -i --rm -v $(pwd):/wd --workdir /wd --platform=linux/${{ matrix.arch }} \
115
- -e BUILD_RELEASE=1 -e QUICER_TLS_VER=${{ matrix.openssl }} \
116
- $IMAGE bash -euc 'git config --global --add safe.directory /wd; \
117
- grep -q "\"Amazon Linux 2\"" /etc/os-release && alternatives --set python /usr/bin/python2; \
118
- which yum && yum install -y perl-IPC-Cmd; \
119
- make'
116
+ docker run -i --rm -v $(pwd):/wd --workdir /wd \
117
+ --platform=linux/${{ matrix.arch }} \
118
+ -e BUILD_RELEASE=1 \
119
+ -e QUICER_TLS_VER=${{ matrix.openssl }} \
120
+ ghcr.io/emqx/emqx-builder/${{ matrix.erlang.builder }}-${{ matrix.os }} \
121
+ bash -euc '\
122
+ git config --global --add safe.directory /wd; \
123
+ grep -q "\"Amazon Linux 2\"" /etc/os-release && alternatives --set python /usr/bin/python2; \
124
+ which yum && yum install -y perl-IPC-Cmd; \
125
+ make'
120
126
121
127
- uses : actions/upload-artifact@v4
122
- if : startsWith(github.ref, 'refs/tags/')
123
128
with :
124
- name : quicer-${{ matrix.os }}-${{ matrix.arch }}-${{ matrix.otp }}-${{ matrix.openssl }}
129
+ name : quicer-${{ matrix.os }}-${{ matrix.arch }}-${{ matrix.erlang. otp }}-${{ matrix.openssl }}
125
130
path : |
126
131
_packages/*.gz
127
132
_packages/*.gz.sha256
@@ -131,7 +136,7 @@ jobs:
131
136
needs :
132
137
- mac
133
138
- emqx-linux
134
- if : startsWith(github.ref, 'refs/tags/')
139
+ if : github.event.inputs.ref_name || (github.event_name == 'push' && startsWith(github.ref, 'refs/tags/') )
135
140
steps :
136
141
- uses : actions/download-artifact@v4
137
142
with :
@@ -141,7 +146,8 @@ jobs:
141
146
- name : Create Release
142
147
uses : softprops/action-gh-release@v2
143
148
with :
144
- name : quicer ${{ github.ref_name }} Released
149
+ name : quicer ${{ github.event.inputs.ref_name || github.ref_name }} Released
150
+ tag_name : ${{ github.event.inputs.ref_name || github.ref_name }}
145
151
files : packages/*
146
152
draft : true
147
153
prerelease : false
0 commit comments