@@ -21,12 +21,18 @@ jobs:
2121 services :
2222 rabbitmq :
2323 image : rabbitmq:3.13-rc-management
24- options : --hostname test-node
24+ options : --hostname test-node --name test-node
2525 env :
2626 RABBITMQ_DEFAULT_USER : " test-user"
2727 RABBITMQ_DEFAULT_PASS : " test-password"
28+ volumes :
29+ # these directories will be empty until checkout, but they will be
30+ # populated by the time we restart the service
31+ - ${{ github.workspace }}/conf:/etc/rabbitmq
32+ - ${{ github.workspace }}/certs:/certs
2833 ports :
2934 - 5552:5552
35+ - 5551:5551
3036 - 5672:5672
3137 - 15672:15672
3238 - 1883:1883
@@ -41,17 +47,32 @@ jobs:
4147 with :
4248 node-version : ${{ matrix.node-version }}
4349 cache : " npm"
44- - name : Enable RabbitMQ Plugins
45- run : docker exec $(docker ps --filter ancestor=rabbitmq:3.13-rc-management -q) rabbitmq-plugins enable rabbitmq_stream rabbitmq_stream_management
50+ - name : Generate certificates
51+ env :
52+ CN : test-node
53+ run : |
54+ git clone https://github.com/rabbitmq/tls-gen tls-gen
55+ cd tls-gen/basic
56+ make
57+ cd ../..
58+ cp -a tls-gen/basic/result certs/
59+ sudo chown -R 999:999 certs
60+ sudo mv certs/server_test-node_certificate.pem certs/server_rabbitmq_certificate.pem
61+ sudo mv certs/server_test-node_key.pem certs/server_rabbitmq_key.pem
4662 - name : Restart RabbitMQ
47- run : docker restart $(docker ps --filter ancestor=rabbitmq:3.13-rc-management -q)
48- - name : Wait for rabbit instance restart
49- run : sleep 10
63+ run : |
64+ docker restart test-node
65+ sleep 2
66+ docker exec test-node rabbitmqctl await_startup
5067 - name : Create SuperStream
51- run : docker exec $(docker ps --filter ancestor=rabbitmq:3.13-rc-management -q) rabbitmq-streams add_super_stream super-stream-test --partitions 2
68+ run : docker exec test-node rabbitmq-streams add_super_stream super-stream-test --partitions 2
5269 - run : npm ci
5370 - run : npm run check
5471 - run : npm run build --if-present
72+ - run : |
73+ docker exec test-node rabbitmqctl add_user 'O=client,CN=test-node' ''
74+ docker exec test-node rabbitmqctl clear_password 'O=client,CN=test-node'
75+ docker exec test-node rabbitmqctl set_permissions 'O=client,CN=test-node' '.*' '.*' '.*'
5576 - run : npm test
5677 env :
5778 RABBITMQ_USER : " test-user"
0 commit comments