osism 0.20251004.0__tar.gz → 0.20251012.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- osism-0.20251012.0/ChangeLog +7 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/Containerfile +1 -1
- {osism-0.20251004.0 → osism-0.20251012.0}/Dockerfile +1 -1
- {osism-0.20251004.0/osism.egg-info → osism-0.20251012.0}/PKG-INFO +2 -2
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/apply.py +65 -34
- osism-0.20251012.0/osism/commands/manage.py +1238 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/server.py +97 -2
- osism-0.20251012.0/osism/commands/stress.py +213 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/data/__init__.py +34 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/data/enums.py +54 -4
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/tasks/openstack.py +80 -0
- {osism-0.20251004.0 → osism-0.20251012.0/osism.egg-info}/PKG-INFO +2 -2
- {osism-0.20251004.0 → osism-0.20251012.0}/osism.egg-info/SOURCES.txt +1 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism.egg-info/entry_points.txt +4 -0
- osism-0.20251012.0/osism.egg-info/pbr.json +1 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism.egg-info/requires.txt +1 -1
- {osism-0.20251004.0 → osism-0.20251012.0}/requirements.ansible.txt +1 -1
- {osism-0.20251004.0 → osism-0.20251012.0}/requirements.yml +1 -1
- {osism-0.20251004.0 → osism-0.20251012.0}/setup.cfg +4 -0
- osism-0.20251004.0/ChangeLog +0 -7
- osism-0.20251004.0/osism/commands/manage.py +0 -514
- osism-0.20251004.0/osism.egg-info/pbr.json +0 -1
- {osism-0.20251004.0 → osism-0.20251012.0}/.flake8 +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/.github/renovate.json +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/.github/workflows/publish.yml +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/.hadolint.yaml +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/.zuul.yaml +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/AUTHORS +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/LICENSE +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/Pipfile +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/Pipfile.lock +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/README.md +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/files/change.sh +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/files/cleanup-ansible-collections.sh +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/files/clustershell/clush.conf +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/files/clustershell/groups.conf +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/files/data/SCS-Spec.MandatoryFlavors.verbose.yaml +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/files/data/flavors.yaml +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/files/netbox-manager/settings.toml +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/files/redfishMockupCreate.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/files/run-ansible-console.sh +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/files/sonic/config_db.json +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/files/sonic/port_config/Accton-AS4625-54T.ini +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/files/sonic/port_config/Accton-AS5835-54T.ini +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/files/sonic/port_config/Accton-AS5835-54X.ini +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/files/sonic/port_config/Accton-AS7326-56X.ini +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/files/sonic/port_config/Accton-AS7726-32X.ini +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/files/sonic/port_config/Accton-AS9716-32D.ini +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/files/sonic/port_config/Accton-AS9726-32D.ini +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/.dockerignore +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/.gitignore +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/Containerfile +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/Dockerfile +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/app/api/config/route.ts +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/app/api/health/route.ts +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/app/components/ConnectionStatus.tsx +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/app/components/EventsFilters.tsx +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/app/components/EventsList.tsx +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/app/events/page.tsx +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/app/favicon.ico +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/app/globals.css +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/app/layout.tsx +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/app/nodes/page.tsx +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/app/page.tsx +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/app/services/page.tsx +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/components.json +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/eslint.config.mjs +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/lib/api.ts +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/lib/hooks/useWebSocket.ts +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/lib/types.ts +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/lib/utils.ts +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/next.config.ts +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/package-lock.json +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/package.json +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/postcss.config.mjs +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/public/file.svg +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/public/globe.svg +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/public/next.svg +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/public/vercel.svg +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/public/window.svg +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/tailwind.config.ts +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/frontend/tsconfig.json +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/__init__.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/__main__.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/api.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/__init__.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/baremetal.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/compose.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/compute.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/configuration.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/console.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/container.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/get.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/lock.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/log.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/netbox.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/noset.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/reconciler.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/redfish.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/service.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/set.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/sonic.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/status.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/sync.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/task.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/validate.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/vault.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/volume.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/wait.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/commands/worker.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/data/playbooks.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/main.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/services/__init__.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/services/event_bridge.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/services/listener.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/services/websocket_manager.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/settings.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/tasks/__init__.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/tasks/ansible.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/tasks/ceph.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/tasks/conductor/__init__.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/tasks/conductor/config.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/tasks/conductor/ironic.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/tasks/conductor/netbox.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/tasks/conductor/redfish.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/tasks/conductor/sonic/__init__.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/tasks/conductor/sonic/bgp.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/tasks/conductor/sonic/cache.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/tasks/conductor/sonic/config_generator.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/tasks/conductor/sonic/connections.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/tasks/conductor/sonic/constants.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/tasks/conductor/sonic/device.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/tasks/conductor/sonic/exporter.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/tasks/conductor/sonic/interface.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/tasks/conductor/sonic/sync.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/tasks/conductor/utils.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/tasks/conductor.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/tasks/kolla.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/tasks/kubernetes.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/tasks/netbox.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/tasks/reconciler.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/utils/__init__.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism/utils/ssh.py +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism.egg-info/dependency_links.txt +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism.egg-info/not-zip-safe +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/osism.egg-info/top_level.txt +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/playbooks/build.yml +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/playbooks/pre.yml +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/playbooks/test-setup.yml +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/requirements.netbox-manager.txt +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/requirements.openstack-flavor-manager.txt +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/requirements.openstack-image-manager.txt +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/requirements.txt +0 -0
- {osism-0.20251004.0 → osism-0.20251012.0}/setup.py +0 -0
@@ -7,7 +7,7 @@ FROM ${IMAGE}:${PYTHON_VERSION}-alpine${ALPINE_VERSION}
|
|
7
7
|
ENV PYTHONWARNINGS="ignore::UserWarning"
|
8
8
|
|
9
9
|
COPY . /src
|
10
|
-
COPY --from=ghcr.io/astral-sh/uv:0.8.
|
10
|
+
COPY --from=ghcr.io/astral-sh/uv:0.8.23 /uv /usr/local/bin/uv
|
11
11
|
|
12
12
|
COPY files/data /data
|
13
13
|
COPY files/change.sh /change.sh
|
@@ -7,7 +7,7 @@ FROM ${IMAGE}:${PYTHON_VERSION}-alpine${ALPINE_VERSION}
|
|
7
7
|
ENV PYTHONWARNINGS="ignore::UserWarning"
|
8
8
|
|
9
9
|
COPY . /src
|
10
|
-
COPY --from=ghcr.io/astral-sh/uv:0.8.
|
10
|
+
COPY --from=ghcr.io/astral-sh/uv:0.8.23 /uv /usr/local/bin/uv
|
11
11
|
|
12
12
|
COPY files/data /data
|
13
13
|
COPY files/change.sh /change.sh
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: osism
|
3
|
-
Version: 0.
|
3
|
+
Version: 0.20251012.0
|
4
4
|
Summary: OSISM manager interface
|
5
5
|
Home-page: https://github.com/osism/python-osism
|
6
6
|
Author: OSISM GmbH
|
@@ -58,7 +58,7 @@ Requires-Dist: watchdog==6.0.0
|
|
58
58
|
Requires-Dist: websockets==15.0.1
|
59
59
|
Provides-Extra: ansible
|
60
60
|
Requires-Dist: ansible-runner==2.4.1; extra == "ansible"
|
61
|
-
Requires-Dist: ansible-core==2.19.
|
61
|
+
Requires-Dist: ansible-core==2.19.3; extra == "ansible"
|
62
62
|
Provides-Extra: openstack-image-manager
|
63
63
|
Requires-Dist: openstack-image-manager==0.20250912.0; extra == "openstack-image-manager"
|
64
64
|
Dynamic: author
|
@@ -92,6 +92,13 @@ class Run(Command):
|
|
92
92
|
help="Dry run, do not initiate tasks (for collections only)",
|
93
93
|
action="store_true",
|
94
94
|
)
|
95
|
+
parser.add_argument(
|
96
|
+
"--show-tree",
|
97
|
+
dest="show_tree",
|
98
|
+
default=False,
|
99
|
+
help="Show only the execution tree for collections without additional output",
|
100
|
+
action="store_true",
|
101
|
+
)
|
95
102
|
parser.add_argument("role", nargs="?", type=str, help="Role to be applied")
|
96
103
|
parser.add_argument(
|
97
104
|
"arguments", nargs=argparse.REMAINDER, help="Other arguments for Ansible"
|
@@ -141,6 +148,7 @@ class Run(Command):
|
|
141
148
|
task_timeout,
|
142
149
|
retry,
|
143
150
|
dry_run,
|
151
|
+
show_tree,
|
144
152
|
):
|
145
153
|
g = []
|
146
154
|
for item in data:
|
@@ -149,7 +157,10 @@ class Run(Command):
|
|
149
157
|
# e.g. "loadbalancer"
|
150
158
|
logger.info(f"A [{counter}] {'-' * (counter + 1)} {item[0]}")
|
151
159
|
|
152
|
-
if
|
160
|
+
if show_tree:
|
161
|
+
# Only show the tree, don't create tasks
|
162
|
+
pt = None
|
163
|
+
elif dry_run:
|
153
164
|
pt = ansible.noop.si()
|
154
165
|
else:
|
155
166
|
pt = self._prepare_task(
|
@@ -182,17 +193,23 @@ class Run(Command):
|
|
182
193
|
task_timeout,
|
183
194
|
retry,
|
184
195
|
dry_run,
|
196
|
+
show_tree,
|
185
197
|
)
|
186
|
-
|
198
|
+
if not show_tree:
|
199
|
+
g.append(chain(pt, st))
|
187
200
|
else:
|
188
|
-
|
201
|
+
if not show_tree:
|
202
|
+
g.append(pt)
|
189
203
|
for inner_item in item[1:]:
|
190
204
|
if type(inner_item) == list:
|
191
205
|
logger.info(
|
192
206
|
f"B [{counter}] {'-' * (counter + 1)} {inner_item[0]}"
|
193
207
|
)
|
194
208
|
|
195
|
-
if
|
209
|
+
if show_tree:
|
210
|
+
# Only show the tree, don't create tasks
|
211
|
+
pt = None
|
212
|
+
elif dry_run:
|
196
213
|
pt = ansible.noop.si()
|
197
214
|
else:
|
198
215
|
pt = self._prepare_task(
|
@@ -225,45 +242,50 @@ class Run(Command):
|
|
225
242
|
task_timeout,
|
226
243
|
retry,
|
227
244
|
dry_run,
|
245
|
+
show_tree,
|
228
246
|
)
|
229
|
-
|
247
|
+
if not show_tree:
|
248
|
+
g.append(chain(pt, st))
|
230
249
|
else:
|
231
|
-
|
250
|
+
if not show_tree:
|
251
|
+
g.append(pt)
|
232
252
|
else:
|
233
253
|
logger.info(
|
234
254
|
f"C [{counter}] {'-' * (counter + 1)} {inner_item}"
|
235
255
|
)
|
236
|
-
|
237
|
-
|
238
|
-
|
239
|
-
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
|
247
|
-
|
256
|
+
if not show_tree:
|
257
|
+
g.append(
|
258
|
+
self._prepare_task(
|
259
|
+
arguments,
|
260
|
+
environment,
|
261
|
+
overwrite,
|
262
|
+
sub,
|
263
|
+
inner_item,
|
264
|
+
action,
|
265
|
+
wait,
|
266
|
+
format,
|
267
|
+
timeout,
|
268
|
+
task_timeout,
|
269
|
+
)
|
248
270
|
)
|
249
|
-
)
|
250
271
|
# e.g. "common"
|
251
272
|
else:
|
252
273
|
logger.info(f"D [{counter}] {'-' * (counter + 1)} {item}")
|
253
|
-
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
274
|
+
if not show_tree:
|
275
|
+
g.append(
|
276
|
+
self._prepare_task(
|
277
|
+
arguments,
|
278
|
+
environment,
|
279
|
+
overwrite,
|
280
|
+
sub,
|
281
|
+
item,
|
282
|
+
action,
|
283
|
+
wait,
|
284
|
+
format,
|
285
|
+
timeout,
|
286
|
+
task_timeout,
|
287
|
+
)
|
265
288
|
)
|
266
|
-
)
|
267
289
|
|
268
290
|
if g:
|
269
291
|
return group(g)
|
@@ -282,9 +304,12 @@ class Run(Command):
|
|
282
304
|
task_timeout,
|
283
305
|
retry,
|
284
306
|
dry_run,
|
307
|
+
show_tree,
|
285
308
|
):
|
286
309
|
if dry_run:
|
287
310
|
logger.info(f"Dry run for collection {collection}. No tasks are scheduled.")
|
311
|
+
elif show_tree:
|
312
|
+
logger.info(f"Showing execution tree for collection {collection}")
|
288
313
|
else:
|
289
314
|
logger.info(f"Collection {collection} is prepared for execution")
|
290
315
|
|
@@ -303,10 +328,14 @@ class Run(Command):
|
|
303
328
|
task_timeout,
|
304
329
|
retry,
|
305
330
|
dry_run,
|
331
|
+
show_tree,
|
306
332
|
)
|
307
|
-
|
333
|
+
|
334
|
+
# Only apply tasks if not in show_tree mode
|
335
|
+
if t and not show_tree:
|
308
336
|
t.apply_async()
|
309
|
-
|
337
|
+
|
338
|
+
if not dry_run and not show_tree:
|
310
339
|
logger.info(
|
311
340
|
f"All tasks of the collection {collection} are prepared for execution"
|
312
341
|
)
|
@@ -467,6 +496,7 @@ class Run(Command):
|
|
467
496
|
task_timeout = parsed_args.task_timeout
|
468
497
|
wait = not parsed_args.no_wait
|
469
498
|
dry_run = parsed_args.dry_run
|
499
|
+
show_tree = parsed_args.show_tree
|
470
500
|
|
471
501
|
rc = 0
|
472
502
|
|
@@ -496,6 +526,7 @@ class Run(Command):
|
|
496
526
|
task_timeout,
|
497
527
|
retry,
|
498
528
|
dry_run,
|
529
|
+
show_tree,
|
499
530
|
)
|
500
531
|
if rc != 0:
|
501
532
|
outer_break = True
|