Commit Graph

53742 Commits (bade98dc8f2cc7c5e41f44f75d70a88187932bc7)
 

Author SHA1 Message Date
Matt Clay e96da33c08
[stable-2.15] Remove obsolete text from release.py PR template (#81526) (#81527)
(cherry picked from commit 9afaf2216b)
1 year ago
Matt Clay 618aa954af
[stable-2.15] Fix f-string whitespace in release script (#81477) (#81478)
(cherry picked from commit 85d3305889)
1 year ago
Matt Clay bdd9e8f1aa
[stable-2.15] Clean up release script (#81488) (#81489)
* Enable mypy for the entire packaging directory

* Return CompletedProcess only when capturing output

This allows stdout/stderr on CompletedProcess to be `str` instead of `str | None`.
The unused args on CompletedProcess have been removed.
Overload type hints have been added to reflect these changes.

* Relax return type on ensure_venv

This improves consistency with its usage, since `run` accepts `env` of `dict[str, t.Any]`.
Also removed unnecssary `str()` usage when updating `env`.

* Fix type hint on suppress_when

* Fix callable annotation

* Add type hint for command_parser

PyCharm complains about using a protected member, and also that it can't find the type in the type stubs.
However, mypy properly recognizes the type.

* Avoid unnecessary TypeVar usage
(cherry picked from commit 47ab59753c)
1 year ago
Matt Clay db2ed518ec
Update Ansible release version to v2.15.3.post0. (#81509) 1 year ago
Matt Clay 4362220ee7
New release v2.15.3 (#81506) 1 year ago
Matt Martz 82ff8b5a7b
Update Ansible release version to v2.15.3rc1.post0. (#81462) 1 year ago
Matt Martz b54e3f91d6
New release v2.15.3rc1 (#81459) 1 year ago
Sloane Hertel 20cd618bc8
password_hash - fix bcrypt algorithm when passlib is not installed (#81385) (#81425)
(cherry picked from commit f5431321a2)
1 year ago
Brian Coca 68709ecda2
fix networking path (#81295) (#81353)
* now uses class property instead of only relying on network_os variable

---------

Co-authored-by: Martin Krizek <martin.krizek@gmail.com>
(cherry picked from commit 6db006a5fa)
1 year ago
Sloane Hertel 85a3eb272a
[2.15] Consider all configured collection paths when installing collections (#81324)
* Consider all configured collection paths when installing collections (#81243)

* Only install collections which can't be satisfied by a collection in any of the configured paths.

* Improve warning for unexpected collection install path

Fix warning when path is configured, but is a pip-managed path

Normalize the path before validating to fix warning consistency

(cherry picked from commit efbc00b6e4)

* Update warning patch for version 2.15 due to non-existence of the config GALAXY_COLLECTIONS_PATH_WARNING
1 year ago
Jordan Borean 8a4a1279df
urls - remove deprecated client key calls (#80751) (#81257)
(cherry picked from commit 0df794e5a4)
1 year ago
Matt Clay 7d561e6e4e
[stable-2.15] Overhaul package-data sanity test (#81427) (#81439)
The sanity test now only inspects the sdist and wheel instead of trying to install the sdist using setup.py.
(cherry picked from commit f894ce89b4)
1 year ago
Matt Clay 4f16d2d9a7
[stable-2.15] ansible-test - Update source layout detection (#81418) (#81434)
(cherry picked from commit c525514994)
1 year ago
Brian Coca b3a4b4a9b1
fixed become page link in PE error message (#81391) (#81393)
(cherry picked from commit 0b9d83ccdb)
1 year ago
Felix Fontein c5c8909b85
The split filter was added in ansible-core 2.11. (#81275) (#81291)
(cherry picked from commit b771e59793)
1 year ago
Felix Fontein 2c847af5a5
Module docs fixes. (#81213) (#81236)
(cherry picked from commit dce51f4ff4)
1 year ago
Matt Clay f64067c62b
[stable-2.15] Update update-sanity-requirements.py script (#81424) (#81431)
Frozen requirements can now preserve any explicitly installed package that would normally be omitted, not just setuptools.
(cherry picked from commit dbb3feddaf)
1 year ago
Matt Clay af59d80a8a
[stable-2.15] Revert "define code owners to support branch-protection rules on docs (#81041)" (#81228) (#81428)
This reverts commit 9117762358.
(cherry picked from commit 7c6564ad0e)
1 year ago
Matt Clay 5265794b32
[stable-2.15] Clean up MANIFEST.in (#81414)
* Clean up MANIFEST.in (#80688)

* Remove unnecessary MANIFEST.in commands

This eliminates more setuptools warnings during build.

* Sort MANIFEST.in

Now that only include commands are used, the order of the commands no longer effects the build output.

(cherry picked from commit 6e325d9e4d)

* Omit hacking directory from MANIFEST.in (#81245)

* Omit `hacking` directory from `MANIFEST.in`

* Update package-data sanity test

(cherry picked from commit b93a628aed)
1 year ago
Matt Clay 3038fee209
[stable-2.15] Add changelog fragment for docs/examples removal (#81410) (#81411)
(cherry picked from commit 0c03a6bcf6)
1 year ago
Martin Krizek 7e63a85dd6
Remove BOTMETA.yml and sanity tests for it (#81198) (#81263)
(cherry picked from commit 39ef570e16)
1 year ago
Matt Clay 21243c5d05
[stable-2.15] Fix os.walk issues in package-data sanity test (#80703). (#81403)
(cherry picked from commit eea7137449)
1 year ago
Matt Clay 5d57a8e363
[stable-2.15] Omit pre-built man pages from sdist (#81395) (#81397)
Since man pages aren't accessible to users after a `pip install`, there's no need to include them in the sdist.
This change makes it trivial to build man pages from source, which makes them much easier to iterate on.
It also simplifies creation and testing of the sdist, since it no longer requires building man pages.

The new `packaging/cli-doc/build.py` script can generate both man pages and RST documentation.
This supports inclusion on the docs site without a dependency on `ansible-core` internals.
Having a single implementation for both simplifies keeping the two formats in sync..
(cherry picked from commit 691c8e8603)
1 year ago
Matt Clay b63bf6f840
[stable-2.15] Include subcommands in generated man pages (#81378) (#81382)
Sub commands of `ansible-galaxy role` and `ansible-galaxy collection` are now documented.
(cherry picked from commit 081c60b9d3)
1 year ago
Matt Clay bf09a9e2e0
[stable-2.15] Fix misrendered sections in manpage generation (#81379)
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>
1 year ago
Matt Clay 89ec76033c
[stable-2.15] Fix missing command descriptions in manpages/docs (#81366). (#81370)
(cherry picked from commit 32b388b4ca)
1 year ago
Matt Clay 559f0f9a4e
[stable-2.15] Fix command doc lookup in man page generation (#81365) (#81369)
(cherry picked from commit f9d674fcfd)
1 year ago
Matt Clay 1388880149
[stable-2.15] Exclude internal options from man pages and docs (#81360) (#81361)
(cherry picked from commit fead654671)
1 year ago
Matt Clay 63b6dd2454
[stable-2.15] ansible-test: cloudstack: bump test container version (#81319) (#81322)
(cherry picked from commit 99eeaf7da8)

Co-authored-by: René Moser <mail@renemoser.net>
1 year ago
Matt Clay af1fd68cc0
[stable-2.15] ansible-test - update module_utils/urls.py unit test to support cryptography >= 41.0.0 (#81296) (#81316)
(cherry picked from commit d20a0c02cc)

Co-authored-by: Sloane Hertel <19572925+s-hertel@users.noreply.github.com>
1 year ago
Matt Clay 5421a1304c
[stable-2.15] Remove `docs` and `examples` directories (#81011) (#81232)
* Remove docs dir

* Updates to reflect docs removal

* Fix integration test

* Remove examples dir

* Updates to reflect examples removal

* Remove build_library and build-ansible.py

* Remove refs to build_library and build-ansible.py

* Remove obsolete template

* Remove obsolete template reference

* Remove the now obsolete rstcheck sanity test.
(cherry picked from commit 72e038e823)
1 year ago
Matt Clay 4684debab5
[stable-2.15] Add missing skip entries for selinux module_util (#81305) (#81307)
(cherry picked from commit 18cbfc688b)
1 year ago
Matt Clay 70dc6d6866
[stable-2.15] Convert non-docs *.rst files to *.md (#81217) (#81222)
* [stable-2.15] Convert non-docs *.rst files to *.md (#81217)

* Rename README.rst to README.md

* Change README format from reStructuredText to Markdown

* Fix whitespace in README.md

* Update setup.cfg to use README.md

* Replace changelog placeholder with README.md

* Update package-data sanity test
(cherry picked from commit 38e50c9f81)

Co-authored-by: Matt Clay <matt@mystile.com>

* Remove README.rst from MANIFEST.in
1 year ago
Matt Clay 04e4280437
[stable-2.15] ansible-test - Fix sanity traceback with `-e` opt (#81271) (#81272)
Also remove redundant warning about missing programs.

Includes integration tests to verify `-e` does not traceback.
(cherry picked from commit 3f7bf0bcd4)
1 year ago
Matt Clay add8a968e8
[stable-2.15] ansible-test - Pre-build PyYAML wheels (#81300) (#81306)
This works around Cython failures when attempting to install PyYAML >= 5.4 <= 6.0..
(cherry picked from commit e964078a83)
1 year ago
Matt Clay c779af621e
[stable-2.15] Disable cron integration test on Alpine (#81301) (#81302)
The tests are now failing due to the lack of `libfaketime` in the Alpine repos.
(cherry picked from commit 261a12b8a9)
1 year ago
Matt Clay bf38eb57a3
Update Ansible release version to v2.15.2.post0. (#81286) 1 year ago
Matt Clay 3c8a3fa0af
New release v2.15.2 (#81283) 1 year ago
Sviatoslav Sydorenko a9c656f8f3
Replace `reboot_command` integration test with unit tests (#78956) (#81266)
Co-authored-by: Matt Clay <matt@mystile.com>

(cherry picked from commit b6ebb9d41a)
1 year ago
Matt Clay 2b2510b653
[stable-2.15] Use *.md instead of *.rst for test READMEs (#81009) (#81229)
(cherry picked from commit 6ac0ea3567)
1 year ago
Matt Clay 3cf87a9702
[stable-2.15] Reorganize CI sanity test matrix (#81004) (#81225)
(cherry picked from commit ff359fa8e1)
1 year ago
Matt Davis 9c348b71ac
Update Ansible release version to v2.15.2rc1.post0. (#81209) 1 year ago
Matt Davis a87aefeda4
New release v2.15.2rc1 (#81204) 1 year ago
Martin Krizek 0cd0788eac
Properly disable modularity tests for dnf5 only (#81195) (#81196)
(cherry picked from commit eb19692f48)
1 year ago
Martin Krizek 7b97a0232a
Re-introduce RHEL 9 modularity testing in CI (#81160) (#81192)
(cherry picked from commit 7b2647f3b2)
1 year ago
Martin Krizek 83c9bd8d25
dnf5: utilize automatic gpg check via transaction.run() (#81144) (#81200)
https://github.com/rpm-software-management/dnf5/pull/607
(cherry picked from commit c3af71a2c8)
1 year ago
Martin Krizek 94a6f6e0de
Register handlers immediately if currently iterating handlers (#80898) (#81059)
This fixes the issue where handlers notifying other handlers are
not properly run because the notification is not registered unless
another flush_handlers occurs. Instead, if the current host state
is iterating handlers we immediately register the handler to be
run so the notification is not lost.

Fixes #80880

(cherry picked from commit 660f1726c8)

Co-authored-by: James Cammarata <jimi@sngx.net>
1 year ago
Matt Martz 130fdcd50e
[stable-2.15] Don't mutate templar.environment, only overlay on local myenv (#81005). (#81054)
(cherry picked from commit 73e04ef2d6)
1 year ago
Martin Krizek 7a61d9fb11
dnf5 - enable env groups testing in CI (#81032) (#81056)
Implemented in https://github.com/rpm-software-management/dnf5/pull/585

(cherry picked from commit f13e35cbf9)
1 year ago
Felix Fontein 9f2b37ad39
Make sure that values that should be strings are actually strings. (#81029) (#81057)
(cherry picked from commit 440b5fd040)
1 year ago