@@ -15,19 +15,50 @@ concurrency:
1515 group : ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
1616 cancel-in-progress : true
1717jobs :
18- build-and-xref :
19- name : Build and Xref
20- strategy :
21- fail-fast : false
22- matrix :
23- erlang_version :
24- - ' 26'
25- - ' 27'
26- elixir_version :
27- - ' 1.17'
28- # @todo Add macOS and Windows.
18+ # build-and-xref:
19+ # name: Build and Xref
20+ # strategy:
21+ # fail-fast: false
22+ # matrix:
23+ # erlang_version:
24+ # - '26'
25+ # - '27'
26+ # elixir_version:
27+ # - '1.17'
28+ # # @todo Add macOS and Windows.
29+ # runs-on: ubuntu-latest
30+ # timeout-minutes: 30
31+ # steps:
32+ # - name: CHECKOUT REPOSITORY
33+ # uses: actions/checkout@v4
34+ #
35+ # - name: FETCH TAGS
36+ # run: git fetch --tags
37+ #
38+ # - name: SETUP OTP & ELIXIR
39+ 40+ # with:
41+ # otp-version: ${{ matrix.erlang_version }}
42+ # elixir-version: ${{ matrix.elixir_version }}
43+ # hexpm-mirrors: |
44+ # https://builds.hex.pm
45+ # https://cdn.jsdelivr.net/hex
46+ #
47+ # - name: SANITY CHECK (rabbit)
48+ # run: make -C deps/rabbit parallel-ct-sanity-check
49+ #
50+ # - name: SANITY CHECK (rabbitmq_mqtt)
51+ # run: make -C deps/rabbitmq_mqtt parallel-ct-sanity-check
52+ #
53+ # - name: BUILD
54+ # run: make
55+ #
56+ # - name: XREF
57+ # run: make xref
58+
59+ mixed-test :
60+ name : Mixed version testing
2961 runs-on : ubuntu-latest
30- timeout-minutes : 30
3162 steps :
3263 - name : CHECKOUT REPOSITORY
3364 uses : actions/checkout@v4
@@ -38,53 +69,73 @@ jobs:
3869 - name : SETUP OTP & ELIXIR
39704071 with :
41- otp-version : ${{ matrix .erlang_version }}
42- elixir-version : ${{ matrix .elixir_version }}
72+ otp-version : ${{ inputs .erlang_version }}
73+ elixir-version : ${{ inputs .elixir_version }}
4374 hexpm-mirrors : |
4475 https://builds.hex.pm
4576 https://cdn.jsdelivr.net/hex
77+ # This currently only applies to Elixir; and can be safely
78+ # restricted to the build jobs to avoid duplication in output.
79+ disable_problem_matchers : true
4680
47- - name : SANITY CHECK (rabbit)
48- run : make -C deps/rabbit parallel-ct-sanity-check
81+ - name : Download release signing keys
82+ uses : dsaltares/fetch-gh-release-asset@master
83+ with :
84+ repo : rabbitmq/signing-keys
85+ file : rabbitmq-release-signing-key.asc
4986
50- - name : SANITY CHECK (rabbitmq_mqtt)
51- run : make -C deps/rabbitmq_mqtt parallel-ct-sanity-check
87+ - name : Import release signing keys
88+ run : gpg --import rabbitmq-release-signing-key.asc
5289
53- - name : BUILD
54- run : make
90+ - name : Download package generic unix
91+ uses : dsaltares/fetch-gh-release-asset@master
92+ with :
93+ regex : true
94+ file : " rabbitmq-server-generic-unix-[\\ d.]*\\ .tar.xz"
95+ target : ./
5596
56- - name : XREF
57- run : make xref
97+ - name : Verify package
98+ run : gpg --verify rabbitmq-server-generic-unix-*.asc rabbitmq-server-generic-unix-*.tar.xz
5899
59- test :
60- name : Test
61- strategy :
62- fail-fast : false
63- matrix :
64- erlang_version :
65- - ' 26'
66- # - '27'
67- elixir_version :
68- - ' 1.17'
69- metadata_store :
70- - mnesia
71- - khepri
72- uses : ./.github/workflows/test-make-tests.yaml
73- with :
74- erlang_version : ${{ matrix.erlang_version }}
75- elixir_version : ${{ matrix.elixir_version }}
76- metadata_store : ${{ matrix.metadata_store }}
100+ - name : Extract package generic unix
101+ run : tar xf rabbitmq-server-generic-unix-*.tar.xz
77102
78- type-check :
79- name : Type check
80- strategy :
81- fail-fast : false
82- matrix :
83- erlang_version : # Latest OTP
84- - ' 27'
85- elixir_version : # Latest Elixir
86- - ' 1.17'
87- uses : ./.github/workflows/test-make-type-check.yaml
88- with :
89- erlang_version : ${{ matrix.erlang_version }}
90- elixir_version : ${{ matrix.elixir_version }}
103+ - run : ls -la
104+
105+ - name : RUN TESTS
106+ run : |
107+ make -C deps/rabbit ct-cluster_upgrade SECONDARY_UMBRELLA=rabbitmq-server-generic-unix-*/
108+
109+
110+ # test:
111+ # name: Test
112+ # strategy:
113+ # fail-fast: false
114+ # matrix:
115+ # erlang_version:
116+ # - '26'
117+ # # - '27'
118+ # elixir_version:
119+ # - '1.17'
120+ # metadata_store:
121+ # - mnesia
122+ # - khepri
123+ # uses: ./.github/workflows/test-make-tests.yaml
124+ # with:
125+ # erlang_version: ${{ matrix.erlang_version }}
126+ # elixir_version: ${{ matrix.elixir_version }}
127+ # metadata_store: ${{ matrix.metadata_store }}
128+ #
129+ # type-check:
130+ # name: Type check
131+ # strategy:
132+ # fail-fast: false
133+ # matrix:
134+ # erlang_version: # Latest OTP
135+ # - '27'
136+ # elixir_version: # Latest Elixir
137+ # - '1.17'
138+ # uses: ./.github/workflows/test-make-type-check.yaml
139+ # with:
140+ # erlang_version: ${{ matrix.erlang_version }}
141+ # elixir_version: ${{ matrix.elixir_version }}
0 commit comments