[DOCS] Salt Cloud documentation overhaul#69558
Draft
dwoz wants to merge 7 commits into
Draft
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Comprehensive refresh of the Salt Cloud documentation, addressing 9 docs / docs-with-code issues across the cloud driver suite.
doc/topics/cloud/events.rst) listing every event tag emitted by Salt Cloud (lifecycle, power-state, reactor-hook, and per-resource events). The Salt Master Events page and the reactor tutorial cross-link to it. ([DOCS] Inconsistent documentation of cloud events #64629, partial [DOCS] Inconsistent documentation of cloud options #65063)script()is required" language (salt.utils.cloud.bootstrap()does the work) and replace the stale Linode-as-libcloud-example with CloudStack / Dimension Data. ([DOCS] salt-cloud script() function should not be listed as required #65323, [DOCS] Extending Salt Cloud - outdated example of module that is using libcloud #58719)create()docstring: drop the misleadingsalt-cloud -p ... memory=... cpu=... vcpu=...example (those positional args get treated as additional VM names) and document the workaround. ([DOCS] OpenNebula Function Reference - Suggests wrong CLI syntax #64520)register_image: full kwarg reference plus a multi-volumeblock_device_mappingCLI example that survives the shell parser. ([DOCS] salt-cloud and register_image function #60679)customization_spec(was completely absent from the docs) and added a Known Issues section pointing at the Ubuntu hostname-not-set bug ([DOCS] customization_spec is missing from the VMware cloud docs #57933, [salt-cloud] [vmware] issue setting hostname on ubuntu #55889).bootstrap_interfaceand the fact that the genericssh_interface/win_interfaceoptions are not consulted by this driver; added notes referencing the make-master traceback ([BUG] Creating a salt-master vm on azurearm fails #58096) and thelist index out of rangequery error ([BUG][SALT][CLOUD][OPTIONS] There was a query error: list index out of range #65064). ([DOCS] Inconsistent documentation of cloud options #65063).. deprecated:: 3006.0banners on bothsoftlayerandsoftlayer_hw(driver source + Getting Started page). (Softlayer cloud module scheduled deprecation and deletion #56546)Tests
tests/pytests/unit/cloud/test_cloud_events_documented.py— scanssalt/cloud/clouds/,salt/cloud/__init__.py, andsalt/utils/cloud.pyforcloud.fire_eventtag literals, normalises them, and asserts each appears on the new reference page. Future drivers that introduce a new tag will fail this test until the doc is updated.tests/pytests/unit/cloud/clouds/test_opennebula_options.py,test_ec2_options.py,test_vmware_options.py,test_azurearm_options.py,test_softlayer_options.py— docstring / doc-page tracking tests that hold each driver's user-facing documentation accountable for the runtime behaviour described in the code.All 516 cloud unit tests pass;
sphinx-build -W -b htmlproduces no warnings.Issues fixed
Branch strategy
3006.x first. Cloud drivers no longer exist on 3008.x / master (the directory was emptied in 3008.0 except for
saltify), so the merge-forward bot will carry the changes that still apply forward to 3007.x and stop there. The reactor / events reference pages live indoc/topics/cloud/which still exists on 3008.x and master; those will follow naturally during merge-forward.Test plan
pytest tests/pytests/unit/cloud/— 516 passed, 4 skippedsphinx-build -W -b html— cleanpre-commit run --files <touched>— clean (auto-format applied)