* Unify the Sphinx's `conf.py` files
Previously, these files needed pre-processing and be symlinked. But
they all are almost identical. So now, the differing sections in the
config are governed by the tags passed to `sphinx-build`. This allows
to reduce duplication and errors related to forgetting to update some
of the configs but not the others. It removes the need to do
pre-processing, meaning less mandatory disk operations before invoking
the build process.
* versions for stable-2.13
* intersphinx mappings for stable-2.13
---------
Co-authored-by: Sviatoslav Sydorenko <wk@sydorenko.org.ua>
Clarify command, that is a subcommand of ansible-galaxy.
(cherry picked from commit 305c1f50ba)
Co-authored-by: Peter Hoffmann <hoffmann@b1-systems.de>
This tool provides a stable interface for generating RST documentation for ansible-core CLI programs.
It avoids having the docs generation process in this repo depending on ansible-core internals that are subject to change.
Relates: https://github.com/ansible/ansible/pull/81395
(cherry picked from commit 4bbb445c1f)
Co-authored-by: Matt Clay <matt@mystile.com>
This change fixes bugs in the manpage generator that existed since it
was first added.
It exposes CLI `ARGUMENTS` value to manpage templates.
Before this change, the code contained a typo, causing the `for`-loop
iterate over individual characters of the `'ARGUMENTS'` string rather
than iterating over a tuple. A missing comma was at fault.
The updated code gets rid of the `for`-loop and conditionals since it
seems to have been a premature complexity increase and no other things
than `'ARGUMENTS'` were ever added into the broken iterable.
The functional change is that `arguments` is now always present in the
Jinja2 context, unlike being missing sometimes because of the previous
design (not that it was ever present, because of the bug! sigh...)
The Jinja2 templates perform an `{% if arguments %}` check, letting
the template engine silently ignore the missing variable. The clause
was always falsy, meaning that the arguments section was not included
in the manpages for at least the last 6 years. With this fix, it will
be.
This patch also deduplicates calling `opt_doc_list` @ generate_man.
It was called late in the execution, more times than necessary. This
patch makes sure it happens once by putting it at the top of the scope.
It fixes rendering library and inventory in manpages.
The corresponding Jinja2 templates have blocks wrapped with
conditionals like `{% if inventory %}` and `{% if library %}` but said
variables were never injected into the context, nor were they even
deduced on the Python side of the generator. This means that the
conditional clauses were always falsy, never showing the portions of
the manpages.
The Python script has hints for how the `inventory` variable was to be
calculated, which is confirmed through the Git paleontology efforts.
The block of code that references to the `inventory` bit was
incorrectly checking a variable with a list of nested objects for the
presence of a string which was never going to work.
This patch fixes this check by verifying the CLI flag against the
correct variable containing a list of options and exposes it to the
Jinja2 templates.
It also exposes the `library` variable in a similar way.
The block displaying other binaries in Sphinx CLI docs has been
synchronized with the manpage template.
Previously, the current binary was displayed also. This patch gets rid
of the unwanted trailing comma there too.
Finally, the CLI executables list in the manpage template now reuses
the same variable as the RST template that doesn't need any
post-processing in Jinja2.
Before, it was already used in the RST template so this patch aligns
both templates to use the same logic as they got out-of-sync over time.
PR #80450.
(cherry picked from commit a84b3a4e72)
Co-authored-by: Sviatoslav Sydorenko <webknjaz@redhat.com>
Running egrep on modern systems prints
egrep: warning: egrep is obsolescent; using grep -E
(cherry picked from commit 5fe565bb95)
Co-authored-by: Maxwell G <maxwell@gtmx.me>
* [stable-2.13] Remove docs dir dependency from man page build (#81003)
(cherry picked from commit b3f1290bcd)
Co-authored-by: Matt Clay <matt@mystile.com>
* Update path in Makefile
This change allows ansible-test to work with newer versions of git on AZP.
(cherry picked from commit bad8843124)
Co-authored-by: Matt Clay <matt@mystile.com>
* ansible-test - More flexible become support.
(cherry picked from commit 5666c6d6a3)
* ansible-test - Add support for more remotes.
(cherry picked from commit 24d91f552c)
* ansible-test - Enable ACLs on FreeBSD remotes.
This allows integration tests to switch from one unprivileged user
to another, sharing files between the users using ACLs.
(cherry picked from commit b63812bc08)
* ansible-test - Enable ACL support on more remotes. (#78299)
(cherry picked from commit 8bb20fe06b)
* ansible-test - Install `acl` on Alpine remotes. (#78303)
(cherry picked from commit 8565deaae3)
* ansible-test - Use sudo for all remotes. (#78310)
(cherry picked from commit f3f4ad9332)
* ansible-test - Fix Ubuntu 20.04 bootstrapping. (#78551)
(cherry picked from commit d683c5bd21)
* ansible-test - Verify executables are executable. (#78606)
(cherry picked from commit ece85abbc4)
* ansible-test - Use --tmpfs to run containers. (#78605)
(cherry picked from commit 4187707f03)
* ansible-test - Remove Fedora 35 support. (#78720)
(cherry picked from commit 38a82a5cc4)
* ansible-test - Fix container error handling. (#78739)
(cherry picked from commit 79f67ed561)
* ansible-test - Improve container management. (#78550)
See changelogs/fragments/ansible-test-container-management.yml for details.
(cherry picked from commit cda16cc5e9)
* ansible-test - Fix container detection. (#79530)
(cherry picked from commit 80d2f8da02)
* Update test matrix symlinks. (#78737)
* Add remote platform symlinks.
These were already supported by ansible-test.
This change adds the symlinks for use in the CI test matrix.
* Remove obsolete AIX test symlink.
AIX was already removed from ansible-test.
(cherry picked from commit 62221a3be2)
* Use patched containers without VOLUME instruction.
* Make test suite compatible with older ansible.
* Fix compatibility with Python 3.8.
* Supply some descriptions for settings used in ansible.cfg (#78536)
(cherry picked from commit 4604ea38dd)
* Targeting a small typo correction (#78531)
(cherry picked from commit b6f42547f4)
* clarify collection signature not available from Community Galaxy (#78386)
(cherry picked from commit 7ae1eabaa4)
* update FAQ with not about libyaml (#78483)
(cherry picked from commit 33ee5d4c1b)
* add note to use package_facts module (#78484)
(cherry picked from commit 8dc097989b)
* Fix ansible-docs: shipping ansible in wheel format #78485 (#78524)
(cherry picked from commit 7f69629fa7)
* update link for RH customers in docs banner (#78563)
(cherry picked from commit 2fdaee143a)
Co-authored-by: Andrew Latham <lathama@users.noreply.github.com>
Co-authored-by: Ian Wienand <iwienand@redhat.com>
Co-authored-by: Arnold Kamanzi <kamstan6@gmail.com>
* update the documentation for the _collection init_ command (#78404)
(cherry picked from commit 69c7e3f4a3)
* fix configuration name in porting guide 2.12 (#78472)
(cherry picked from commit 82246df5b7)
* docs: misc fixes in The Ansible Development Cycle (#78513)
(cherry picked from commit 0d3523df8f)
Co-authored-by: Alex <aizquier@redhat.com>
Co-authored-by: Akira Yokochi <akira6592@gmail.com>
* fix broken link (#78434)
(cherry picked from commit eb46ab1399)
* Fix escaped asterisk in code block demonstrating wildcards (#78375)
The code block is rendered verbatim. This currently results in `\*` being shown, which is incorrect (i.e., not parsed as a wildcard pattern).
Removing the superfluous `\` fixes the rendering.
This PR fixes all instances of this issue on that page.
(cherry picked from commit 9bf5da8f75)
* add example to import a playbook from collection (#78443)
(cherry picked from commit eb462edb16)
* docs: Fix control node reference links (#78424)
(cherry picked from commit f5cac6bc5d)
* Update galaxy_server_list (#78398)
(cherry picked from commit d92f6da592)
* Improve grammar (#78391)
(cherry picked from commit ddd8b8bfd9)
Co-authored-by: Tom Janson <priv.tom.janson@gmail.com>
Co-authored-by: Sebastian Gumprich <rndmh3ro@users.noreply.github.com>
Co-authored-by: Ian Wienand <iwienand@redhat.com>
Co-authored-by: Tabah Baridule <dulemartins07@gmail.com>
Co-authored-by: Geoffrey van Wyk <geoffrey@vanwyk.biz>
* Add basic docs on how to create a collection docsite with antsibull-docs. (#78387)
(cherry picked from commit 733a767948)
* Fix typo: missing 'install'. (#78448)
(cherry picked from commit 2218b63aef)