Skip to content

Pass stress options through to the tool - #2761

Draft
ideaship wants to merge 1 commit into
mainfrom
stress-pass-through
Draft

ideaship wants to merge 1 commit into
mainfrom
stress-pass-through

Conversation

@ideaship

@ideaship ideaship commented Oct 6, 2026

Copy link
Copy Markdown
Contributor

"osism openstack stress" re-declared every option of
openstack-simple-stress with argparse and built the tool's command
line itself. The two drifted apart: --profile, --burnin,
--burnin-duration and --no-network were never available through
osism, and newer options such as --yes would not have been either.

It also always passed every option, including --interval 10. kolla's
haproxy closes idle keep-alive connections after 10 s, and a 10 s poll
reuses pooled connections right at that moment: measured against nova
on an OSISM 10.2.0 cluster, 3-5 of 40 requests failed with
RemoteDisconnected at 9.990-9.998 s idle, none elsewhere. The tool's
default is now 2 s, but the wrapper would keep forcing 10.

The wrapper now only handles --cloud (credential setup from
secrets.yml or secure.yml, as before) and passes every other argument
to the tool unchanged, so the tool's own defaults and options apply.
Exit codes are passed through as before.

Options that the osism CLI consumes itself (--debug, -h/--help, -v,
-q, --version, --log-file) must follow a "--", e.g.
"osism openstack stress -- --help" shows the tool's options. --cloud
after "--" is rejected: the tool would run against a cloud whose
credentials were never set up.

Verified in the osismclient container (Python 3.13) of an OSISM
10.2.0 test cluster: "-- --help" shows the tool's help, "-- --cloud
admin" exits 2, and a run through the wrapper succeeds.

Part of the series described in:

Independent of the openstack-simple-stress PRs: every option the tool has today keeps working through the pass-through. The tool's new 2 s default interval only reaches osism users once this is merged.

🤖 Generated with Claude Code

"osism openstack stress" re-declared every option of
openstack-simple-stress with argparse and built the tool's command
line itself. The two drifted apart: --profile, --burnin,
--burnin-duration and --no-network were never available through
osism, and newer options such as --yes would not have been either.

It also always passed every option, including --interval 10. kolla's
haproxy closes idle keep-alive connections after 10 s, and a 10 s poll
reuses pooled connections right at that moment: measured against nova
on an OSISM 10.2.0 cluster, 3-5 of 40 requests failed with
RemoteDisconnected at 9.990-9.998 s idle, none elsewhere. The tool's
default is now 2 s, but the wrapper would keep forcing 10.

The wrapper now only handles --cloud (credential setup from
secrets.yml or secure.yml, as before) and passes every other argument
to the tool unchanged, so the tool's own defaults and options apply.
Exit codes are passed through as before.

Options that the osism CLI consumes itself (--debug, -h/--help, -v,
-q, --version, --log-file) must follow a "--", e.g.
"osism openstack stress -- --help" shows the tool's options. --cloud
after "--" is rejected: the tool would run against a cloud whose
credentials were never set up.

Verified in the osismclient container (Python 3.13) of an OSISM
10.2.0 test cluster: "-- --help" shows the tool's help, "-- --cloud
admin" exits 2, and a run through the wrapper succeeds.

Assisted-by: Claude:claude-opus-5-5
Signed-off-by: Roger Luethi <luethi@osism.tech>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: New

Development

Successfully merging this pull request may close these issues.

1 participant