Skip to content

Commit a68ca21

Browse files
antontroshinyaron2
andauthored
Solace pubsub conformance test fix (#3802)
Signed-off-by: Anton Troshin <[email protected]> Co-authored-by: Yaron Schneider <[email protected]>
1 parent b2c31ce commit a68ca21

File tree

4 files changed

+22
-2
lines changed

4 files changed

+22
-2
lines changed

.github/infrastructure/docker-compose-solace.yml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,13 @@ services:
99
shm_size: 1g
1010
ulimits:
1111
core: -1
12+
# Setting nofile to 4096 and hard to 1048576, as recommended by Solace documentation
13+
# Otherwise, the container will have an error and crash with:
14+
# ERROR POST Violation [022]:Required system resource missing, Hard resource limit nofile 1048576 is required, 6592 detected
15+
# https://docs.solace.com/Software-Broker/System-Resource-Requirements.htm#concurrent-open-files-considerations
1216
nofile:
13-
soft: 2448
14-
hard: 6592
17+
soft: 4096
18+
hard: 1048576
1519
deploy:
1620
restart_policy:
1721
condition: on-failure
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
#!/bin/bash
2+
3+
set -e
4+
5+
FILE="$1"
6+
PROJECT="${2:-$FILE}"
7+
8+
docker compose -f .github/infrastructure/docker-compose-${FILE}.yml -p ${PROJECT} logs

.github/scripts/test-info.mjs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -440,6 +440,7 @@ const components = {
440440
'pubsub.solace': {
441441
conformance: true,
442442
conformanceSetup: 'docker-compose.sh solace',
443+
conformanceLogs: 'docker-compose-logs.sh solace',
443444
},
444445
'secretstores.azure.keyvault': {
445446
certification: true,
@@ -824,6 +825,7 @@ const components = {
824825
* @property {boolean?} requireTerraform If true, requires Terraform
825826
* @property {boolean?} requireKind If true, requires KinD
826827
* @property {string?} conformanceSetup Setup script for conformance tests
828+
* @property {string?} conformanceLogs Logs script for conformance tests
827829
* @property {string?} conformanceDestroy Destroy script for conformance tests
828830
* @property {string?} certificationSetup Setup script for certification tests
829831
* @property {string?} certificationDestroy Destroy script for certification tests
@@ -845,6 +847,7 @@ const components = {
845847
* @property {boolean?} require-kind Requires KinD
846848
* @property {string?} setup-script Setup script
847849
* @property {string?} destroy-script Destroy script
850+
* @property {string?} logs-script Logs script in case of failure
848851
* @property {string?} nodejs-version Install the specified Node.js version if set
849852
* @property {string?} mongodb-version Install the specified MongoDB version if set
850853
* @property {string?} source-pkg Source package
@@ -915,6 +918,7 @@ function GenerateMatrix(testKind, enableCloudTests) {
915918
'require-kind': comp.requireKind ? 'true' : undefined,
916919
'setup-script': comp[testKind + 'Setup'] || undefined,
917920
'destroy-script': comp[testKind + 'Destroy'] || undefined,
921+
'logs-script': comp[testKind + 'Logs'] || undefined,
918922
'nodejs-version': comp.nodeJsVersion || undefined,
919923
'mongodb-version': comp.mongoDbVersion || undefined,
920924
'source-pkg': comp.sourcePkg

.github/workflows/conformance.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -317,6 +317,10 @@ jobs:
317317
exit 1
318318
fi
319319
320+
- name: Retrieve infrastructure failure logs
321+
if: failure() && matrix.logs-script != ''
322+
run: .github/scripts/components-scripts/${{ matrix.logs-script }}
323+
320324
- name: Prepare test result info
321325
if: always()
322326
run: |

0 commit comments

Comments
 (0)