Cloud Provisioning does not set CLI exit code on met passfail criteria
When I run my tests with passfail criteria set with provisioning: cloud or -cloud, bzt exits with code 0 even if some of the criteria are met.
I have narrowed the issue down to the URL used for querying thresholds in the post_process sequence. Currently the URL is:
/api/v4/masters/%s/reports/thresholds?external=false&source=default
For me, calling this URL does not seem to return the expected data. Every entry has success: true and no other information save for session IDs:
{
"success": true,
"stop": false,
"assertions": [],
"sessionId": "<REDACTED>"
}
Calling /api/v4/masters/%s/reports/thresholds (without the query parameters) on the other hand, provide a much more useful view, with all my thresholds and, critically, with success: false on the failed criteria.
{
"id": "<REDACTED>",
"field": "errors.percent",
"ignoreRampupTime": 0,
"labelId": "<REDACTED>",
"op": "gt",
"range": -1,
"stopTestOnViolation": true,
"success": false,
"threshold": 0.10000000000000001,
"value": 99.900895301765402,
"created": 1761854549,
"updated": 1761854848,
"masterId": <REDACTED>,
"testId": <REDACTED>,
"violations": []
}
However, save for correctly providing success, this still doesn't match the structure expected by CloudProvisioning.post_process:
{
"success": false,
"assertions": [
{
"success": false,
"field": "",
"label": ""
}
]
}
Is this a configuration issue on my end, or a bug in Taurus?