Commit graph

50566 commits

Author SHA1 Message Date
Sandra McCann
0a6004d9ca
add base 2.10 to docs version switcher (#73770) (#73773)
(cherry picked from commit 6514027957)
2021-03-03 14:23:06 -06:00
Alicia Cozine
c86a498a67
Backport of Split Ansible docs from core docs (#73616) (#73637)
* Split Ansible docs from core docs (#73616)

* excludes scenario guides from core docs, splits porting guides and roadmaps, symlinks indices to create index.html pages, and adds .gitignore entries for conf.py and the toplevel index.rst files generated by the docs build

This solution builds three types of docs:
* ansible-2.10 and earlier: all the docs.  Handle this via `make webdocs
  ANSIBLE_VERSION=2.10`
* ansible-3 and later: a subset of the docs for the ansible package.
  Handle this via `make webdocs ANSIBLE_VERSION=3` (change the
  ANSIBLE_VERSION to match the version being built for.
* ansible-core: a subset of the docs for the ansible-core package.
  Handle this via `make coredocs`.

* `make webdocs` now always builds all the collection docs
*  Use `make coredocs` to limit it to core plugins only
*  The user specifies the desired version. If no ANSIBLE_VERSION is specified, build plugins for the latest release of ansible

Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
Co-authored-by: Matt Clay <matt@mystile.com>
(cherry picked from commit ccbfdec334)

* fix CI failures, correct version switcher and makefile logic, set args in all cases, allow 2.10 build

Co-authored-by: Sandra McCann <samccann@redhat.com>
Co-authored-by: Alicia Cozine <acozine@users.noreply.github.com>
2021-03-03 09:42:00 -06:00
Matt Clay
b998f7050b
[stable-2.10] Fix ansible-test handling of egg-info. (#73595)
* Add test to verify pkg_resources imports work.

(cherry picked from commit 133a29acb4)

* [stable-2.10] Fix ansible-test handling of egg-info.

Resolves https://github.com/ansible/ansible/issues/67990.
(cherry picked from commit d092356fc5)

Co-authored-by: Matt Clay <matt@mystile.com>
2021-03-02 11:12:44 -08:00
Sam Doran
a5f0bc0165 Update signing key used in incidental_setup_flatpak_remote tests
The original key was created using the default expiration time of two years.
Signed the repo again using a key that expires in twenty years.
2021-02-22 12:30:16 -08:00
Rick Elrod
894df504b7 Update Ansible release version to v2.10.6.post0. 2021-02-18 18:31:43 -06:00
Rick Elrod
9ea56ff292 New release v2.10.6 2021-02-17 16:10:38 -06:00
Rick Elrod
510ef832ae Update Ansible release version to v2.10.6rc1.post0. 2021-02-08 23:06:02 -06:00
Rick Elrod
244fdf324c New release v2.10.6rc1 2021-02-08 19:01:35 -06:00
Matt Clay
aedc7301f6
[stable-2.10] Temporary fix for cryptography issues. (#73530). (#73533)
(cherry picked from commit 1a2da990a4)

Co-authored-by: Matt Clay <mclay@redhat.com>
2021-02-08 17:21:15 -06:00
Felix Fontein
5411090f51 Bump antsibull-changelog version for changelog sanity test.
(cherry picked from commit 82cdd7e735)
2021-02-08 09:04:07 -08:00
Sam Doran
f9572a377d
[stable-2.10] pause - adjust warning when run in background (#73182) (#73231)
When the pause module is run in the background and seconds parameter is provided,
do not warn.

* Add tests
* Fix existing tests
  The test wasn't failing when it should have.
(cherry picked from commit 0e6c334115)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2021-02-07 17:57:31 -06:00
Jordan Borean
bca57ec65a
bugfix: use to_text(stdout) in psrp.Connection.put_file method (#73491) - 2.10 (#73496)
(cherry picked from commit f271d02a9f)

Co-authored-by: jakegatsby <39974194+jakegatsby@users.noreply.github.com>
2021-02-07 17:56:59 -06:00
Sam Doran
e75570ba83
[stable-2.10] Fix YAML error message when error is at the end of the file (#73241) (#73296)
If a YAML file fails to load due to a syntax error in a file, or there is an error in the last line of a
file, PyYAML reports the last line number of the file as the index where the error occurred.

When reading the file lines, we use that index to the get the relevant line.  If the index value is out
of range, the relevant line is lost for error reporting.

Subtract one from the index value to avoid the IndexError in this specific scenario. It is possible
to still get an IndexError, which will be handled as it is currently.

* Update existing tests and add new tests
(cherry picked from commit e8d4b62b41)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2021-02-07 17:56:17 -06:00
Brian Coca
3ef061bdc4
Use a pty for local connections (#73023) (#73281)
Fixes #38696

Co-authored-by: James Cammarata <jimi@sngx.net>
(cherry picked from commit 30d93995dd)
2021-02-07 17:53:10 -06:00
Felix Fontein
63ead90ab9
Always mention the name of the deprecated plugin in routing deprecation messages (#73059) (#73237)
(cherry picked from commit df9cf368c0)
2021-02-07 17:52:29 -06:00
Sam Doran
70fb5ae36a
[stable-2.10] facts - properly report virtualization facts for Linux guests on bhyve (#73204). (#73233)
(cherry picked from commit df451636e7)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2021-02-07 17:50:49 -06:00
Brian Coca
9478b59da5
fix inventory source parse error handling (#73160) (#73276)
fixes #51025

added test cases

(cherry picked from commit 1e27d4052a)
2021-02-07 17:29:07 -06:00
Martin Krizek
2c8c02c816
Local vars should have highest precedence in AnsibleJ2Vars (#72830) (#73370)
Ability to add local variables into AnsibleJ2Vars was added in
18a9eff11f to fix #6653. Local variables
are added using ``AnsibleJ2Vars.add_locals()`` method when creating a
new context - typically when including/importing a template with
context. For that use case local template variables created using
``set`` should override variables from higher contexts - either from the
play or any parent template, or both; Jinja behaves the same way.

Also removes AnsibleJ2Vars.extras instance variable which is not used.

Also adds missing test for #6653.

Fixes #72262
Fixes #72615

ci_complete

(cherry picked from commit a2af8432f3)
2021-02-07 01:30:47 -06:00
Jordan Borean
e41d1f0a3f
no_log mask suboption fallback values and defaults CVE-2021-20228 (#73487) (#73494)
(cherry picked from commit 0cdc410dce)
2021-02-07 01:11:27 -06:00
Akira Yokochi
67a018b815
fix typo (#73479)
(cherry picked from commit f72dec16ea)
2021-02-07 01:09:28 -06:00
Rick Elrod
015ec3eda8
git: verify, only use --raw when we need it (#70900) (#73473)
Change:
- Allow older git to verify tags again
- Enable verification tests everywhere, even if most of them only work
  on newer git. Some of them work on older git and they test the --raw
  parameter.

Test Plan:
- Re-enabled subset of git tests

Tickets:
- Fixes #64469

Signed-off-by: Rick Elrod <rick@elrod.me>
2021-02-07 01:08:04 -06:00
Sloane Hertel
6df8a9ec53
Fix warning for nonexistent inventory cache (#72840) (#73443)
* Fix inventory cache warning by checking if the key exists before loading it

(cherry picked from commit 840bdc1e10)
2021-02-07 01:05:20 -06:00
Brian Coca
148240099a
ensure unsafe writes fallback (#70722) (#73144)
* Ensure we actually fallback to unsafe_writes when set to true

 add integration test
 add fix for get_url not passing the parameter from args

(cherry picked from commit 932ba36160)

* Added clog missing for issue 70722 (#73175)

(cherry picked from commit d6670da1d7)
2021-02-07 01:03:43 -06:00
Sam Doran
e9c6b382ea
[stable-2.10] import_playbook - change additional params to deprecation (#72987) (#73015)
I incorrectly recommended this be set as a warning when it should have been a deprecation.

* Fix deprecation sanity test to not required a collection name when not inside a collection
(cherry picked from commit 8e022ef00a)

Co-authored-by: Sam Doooran <sdoran@redhat.com>
2021-02-07 00:52:15 -06:00
Rick Elrod
3eafe0f255
[setup_rpm_repo test] Ensure rpm-build is present (#73516) (#73518)
Change:
- Other targets might remove rpm-build as they clean up after
  themselves. Ensure that it's present in setup_rpm_repo because
  rpmfluff needs it.

Test Plan:
- Local experimentation with yum_repository and mysql_db (the latter of
  which depends on a handler which was removing rpm-build) on
  stable-2.9.

Signed-off-by: Rick Elrod <rick@elrod.me>
(cherry picked from commit aca5b0e43b)
2021-02-05 15:37:46 -06:00
Sam Doran
457dcf1313 [stable-2.10] Make yum_repository test more reliable (#73467)
* Improve setup_rpm_repo

- add handlers to remove repos
- add variable to control whethere or not repos are created

* Use local repo for all distros
* Change repo creation script to module.
(cherry picked from commit 997b2d2a19)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2021-02-03 23:01:07 -08:00
Gonéri Le Bouder
985a395cd9 validate_modules: fails with .id attribute not found (#73322)
* validate_modules: fails with .id attribute not found

This patch addresses a problem in the `found_try_except_import` test.

This module tries to identify lines like:

`HAS_FOO = True`

In this case, the target (`HAS_FOO`) is of type `ast.Name` and has a
`id` attribute which provide the name.

In my case, I've a line that set a module attribute`. In this case, the
target (`module.var`) has the type `ast.Attribute` and no `id`
attribute. The code trigger an `AttributeError` exception.

This patch ensures we compare a `ast.Name`.

* Update test/lib/ansible_test/_data/sanity/validate-modules/validate_modules/main.py

(cherry picked from commit 7cf80f50d1)
2021-02-03 09:07:14 -08:00
Andrew Klychkov
6cde1cdf35
Documentation: fix formatting (#73186) 2021-02-03 10:18:41 -06:00
Felix Fontein
dcec0ec806
Make sure to mention collection version for version_added as well. (#73270) (#73280)
(cherry picked from commit 73aa571305)
2021-02-03 09:20:30 -06:00
David Moreau Simard
d7b562b393
add new glossary terms for 2.10 (#71813) (#73293)
* add new terms for 2.10
Co-authored-by: Alicia Cozine <879121+acozine@users.noreply.github.com>

(cherry picked from commit 4aedd1b987)

Co-authored-by: Sandra McCann <samccann@redhat.com>
2021-02-03 09:19:46 -06:00
Felix Fontein
d5acbfd6e3
Remove 'type: complex' from the example, and mention that it should be avoided. (#73171) (#73222)
(cherry picked from commit 270385f949)
2021-02-03 09:18:06 -06:00
Sviatoslav Sydorenko
4488b91699
Fix versionadded syntax @ galaxy user guide (#73350)
(cherry picked from commit 6abeabaff1)
2021-02-02 11:17:13 -06:00
Felix Fontein
25962888ac
Mention that C(...) should be used for inline code. (#73312) (#73374)
(cherry picked from commit 76604397cb)
2021-02-02 11:16:03 -06:00
Rick Elrod
a3175e9979
Revert "[ansible-test] Bump CentOS 6 image (yum repos) (#73446) (#73447)" (#73450)
This reverts commit e4f8d528b9.
2021-02-01 22:02:55 -06:00
Rick Elrod
e4f8d528b9
[ansible-test] Bump CentOS 6 image (yum repos) (#73446) (#73447)
Change:
- Bump centos6 image version to one which includes multiple fallbacks
  for vault.centos.org content.

Signed-off-by: Rick Elrod <rick@elrod.me>
2021-02-01 18:37:24 -06:00
Rick Elrod
356aae0e23
[2.10] Add Ubuntu 20.04 to CI and ansible-test (#69161) (#73365)
Change:
- Add Ubuntu 20.04 to CI now that venv is default instead of virtualenv in ansible-test.

Test Plan:
- CI

Tickets:
- Fixes #69203

Signed-off-by: Rick Elrod <rick@elrod.me>
2021-01-26 13:01:31 -06:00
Matt Clay
c47ec375fa
[stable-2.10] Use a versioned pip bootstrapper in ansible-test. (#73359)
(cherry picked from commit fc590aeb21)

Co-authored-by: Matt Clay <matt@mystile.com>
2021-01-25 15:37:30 -06:00
Matt Clay
1f90c11782 [stable-2.10] Handle get-pip.py breaking change on Python 2.7.
(cherry picked from commit 484e4af4d0)

Co-authored-by: Matt Clay <matt@mystile.com>
2021-01-23 12:36:28 -08:00
Rick Elrod
e5b6d2aaae Update Ansible release version to v2.10.5.post0. 2021-01-18 18:19:05 -06:00
Rick Elrod
890601dcef New release v2.10.5 2021-01-18 14:34:40 -06:00
Sandra McCann
a8ebe99c98 Revert "update the docs requirements versions (#73108) (#73251)"
This reverts commit ee46fe2910.
2021-01-15 14:38:05 -08:00
Sandra McCann
0803063424 Revert "update rstcheck and sphinx versions in contraints (#73176) (#73249)"
This reverts commit 2a91ba71b2.
2021-01-15 14:34:58 -08:00
Sandra McCann
ee46fe2910
update the docs requirements versions (#73108) (#73251)
(cherry picked from commit 0936623901)
2021-01-15 12:45:17 -06:00
Sandra McCann
2a91ba71b2
update rstcheck and sphinx versions in contraints (#73176) (#73249)
* and fix test error

(cherry picked from commit 88763c7347)
2021-01-15 12:44:36 -06:00
Rick Elrod
0b77ffb980 Update Ansible release version to v2.10.5rc1.post0. 2021-01-11 21:28:30 -06:00
Rick Elrod
422b9c09ee New release v2.10.5rc1 2021-01-11 17:33:09 -06:00
Sloane Hertel
08ba838a8e
[2.10] Pass the top level dictionaries to combine_vars (#72979) (#73146)
combine_vars uses dict.update() to replace keys

(cherry picked from commit 5e03e322de)

* Add tests for merging and replacing vars from inventory sources (#73181)

(cherry picked from commit 9de2da8a7e)
2021-01-11 17:20:48 -06:00
Sam Doran
abc6658ac2
[stable-2.10] Add macOS 11 to CI (#72622) (#73180)
* [stable-2.10] Add macOS 11 to CI (#72622)

* Fix connection_paramiko_ssh test for macOS 11
* Update Azure Pipelines config
* Add changelog
(cherry picked from commit a7e834071c)

Co-authored-by: Sam Doran <sdoran@redhat.com>

* Prefer venv for tests

* Update pip integration test to use venv on py3.

(cherry picked from commit 456e9b7a33)

Co-authored-by: Matt Clay <matt@mystile.com>
2021-01-11 16:45:58 -06:00
Sam Doran
b4b1bf9932
[stable-2.10] user - properly handle password and password lock when used together (#73016) (#73177)
Do the right thing on Linux when password lock and a password hash are provided by writing
out the password hash prepended by the appropriate lock string rather than using -U and -L.
This is the correct way to set and lock the account in one command.

On BSD, run separate commands as appropriate since locking and setting the password cannot
be done in a single action.

FreeBSD requires running several commands to get the account in the desired state. As a result,
the rc, output, and error from all commands need to be combined and evaluated so an accurate
and complete summary can be given at the end of module execution.

* Improve integration tests to cover this scenario.
* Break up user integration tests into smaller files
* Properly lock account when creating a new account and password is supplied

* Simplify rc collection in FreeBSD class
  Since the _handle_lock() method was added, the rc would be set to None, which could make
  task change reporting incorrect. My first attempt to solve this used a set and was a bit too
  complicated. Simplify it my comparing the rc from _handle_lock() and the current value of rc.

* Improve the Linux password hash and locking behavior
  If password lock and hash are provided, set the hash and lock the account by using a password
  hash since -L cannot be used with -p.

* Ensure -U and -L are not combined with -p since they are mutually exclusive to usermod.

* Clarify password_lock behavior..
(cherry picked from commit 264e08f21a)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2021-01-11 13:11:26 -06:00
Matt Martz
6ba066fc9e
[stable-2.10] Fix async interpreter parsing (#72636) (#72923)
Fixes #70690
(cherry picked from commit 83764ad)
2021-01-11 01:02:33 -06:00