Bug 2179084
| Summary: | `pcs resource create` fails with a traceback if empty interval is specified for an operation | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 9 | Reporter: | Tomas Jelinek <tojeline> |
| Component: | pcs | Assignee: | Tomas Jelinek <tojeline> |
| Status: | NEW --- | QA Contact: | cluster-qe <cluster-qe> |
| Severity: | low | Docs Contact: | |
| Priority: | medium | ||
| Version: | 9.2 | CC: | cluster-maint, idevat, mlisik, mpospisi, omular, tojeline |
| Target Milestone: | rc | Keywords: | Triaged |
| Target Release: | --- | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | If docs needed, set a value | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | Type: | Bug | |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
Description of problem: `pcs resource create` fails with a traceback if empty interval is specified for an operation Version-Release number of selected component (if applicable): pcs-0.11.4-6 How reproducible: always, easily Steps to Reproduce: 1. pcs resource create test ocf:pacemaker:Dummy op monitor interval= Actual results: Traceback (most recent call last): File "/usr/sbin/pcs", line 33, in <module> sys.exit(load_entry_point('pcs==0.11.4', 'console_scripts', 'pcs')()) File "/usr/lib/python3.9/site-packages/pcs/app.py", line 273, in main routing.create_router(cmd_map, [])( File "/usr/lib/python3.9/site-packages/pcs/cli/common/routing.py", line 33, in _router return cmd_map[sub_cmd](lib, argv_next, modifiers) File "/usr/lib/python3.9/site-packages/pcs/cli/common/routing.py", line 33, in _router return cmd_map[sub_cmd](lib, argv_next, modifiers) File "/usr/lib/python3.9/site-packages/pcs/resource.py", line 745, in resource_create lib.resource.create( File "/usr/lib/python3.9/site-packages/pcs/cli/common/lib_wrapper.py", line 95, in decorated_run return run_with_middleware(run, cli_env, *args, **kwargs) File "/usr/lib/python3.9/site-packages/pcs/cli/common/middleware.py", line 14, in run return next_in_line(env, *args, **kwargs) File "/usr/lib/python3.9/site-packages/pcs/cli/common/middleware.py", line 42, in apply result_of_next = next_in_line(env, *args, **kwargs) File "/usr/lib/python3.9/site-packages/pcs/cli/common/middleware.py", line 80, in apply result_of_next = next_in_line(env, *args, **kwargs) File "/usr/lib/python3.9/site-packages/pcs/cli/common/lib_wrapper.py", line 86, in run lib_call_result = run_library_command(lib_env, *args, **kwargs) File "/usr/lib/python3.9/site-packages/pcs/lib/commands/resource.py", line 433, in create primitive_element = resource.primitive.create( File "/usr/lib/python3.9/site-packages/pcs/lib/cib/resource/primitive.py", line 232, in create return append_new( File "/usr/lib/python3.9/site-packages/pcs/lib/cib/resource/primitive.py", line 290, in append_new create_operations( File "/usr/lib/python3.9/site-packages/pcs/lib/cib/resource/operations.py", line 398, in create_operations append_new_operation(operations_element, id_provider, operation) File "/usr/lib/python3.9/site-packages/pcs/lib/cib/resource/operations.py", line 428, in append_new_operation options["interval"], KeyError: 'interval' Expected results: No traceback, print a nice error message. Additional info: It works with an empty timeout: # pcs resource create test ocf:pacemaker:Dummy op monitor timeout= # pcs resource config test Resource: test (class=ocf provider=pacemaker type=Dummy) Operations: migrate_from: test-migrate_from-interval-0s interval=0s timeout=20s migrate_to: test-migrate_to-interval-0s interval=0s timeout=20s monitor: test-monitor-interval-60s interval=60s reload: test-reload-interval-0s interval=0s timeout=20s reload-agent: test-reload-agent-interval-0s interval=0s timeout=20s start: test-start-interval-0s interval=0s timeout=20s stop: test-stop-interval-0s interval=0s timeout=20s