Change:
- Add missing no_log on fields and subfields which should have it.
- Update several changelogs with CVE id.
Signed-off-by: Rick Elrod <rick@elrod.me>
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)
**SECURITY** - CVE-2021-20178
Hide user sensitive information like `privkey` and `authkey`
while logging in console.
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
**SECURITY** - CVE-2021-20180
Hide user sensitive information which is marked as ``secured``
while logging in console.
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
* [stable-2.8] Fix yum_repository tests for CentOS 8 (#64863)
Refactor tests to run the same tasks with CentOS and Fedora using different variables..
(cherry picked from commit 05a7ce798d)
Co-authored-by: Sam Doran <sdoran@redhat.com>
* 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)
* Disable GPG check on install
The recent update of ptyprocess to 0.7.0 is incompatible with Python 2.6 and
is causing test failures.
* Add setup_pexpect role to expect test
(cherry picked from commit 003a9e890d)
Co-authored-by: Sam Doooran <sdoran@redhat.com>
* Increase fetch depth to reduce the frequency of full test runs for out-of-date PRs.
* Update scripts to match those which will be used in collections.
(cherry picked from commit 3274e02fd8)
Co-authored-by: Matt Clay <mclay@redhat.com>
Change:
- `udev` is provided by `systemd-udev`, which our `state=present` check
doesn't match. For now, work around this so we don't end up trying to
upgrade all of systemd.
- In the future, we should discuss if the `yum` module does the right
thing here.
Test Plan:
- Locally in docker
- CI
Signed-off-by: Rick Elrod <rick@elrod.me>
(cherry picked from commit 8eaa7423d4)
* Pull image from Quay to avoid Dockerhub limits
CI tests are failing in certain situations due to the new Docker Hub limits on anonymous pulls. Switch
to pulling an equivalent image from Quay.io.
* Use images in Quay that we control for CI
* Use images from a single test repo on Quay with tags
* Use correct hello-world image
* More image cleanup
* Fix bad replacement
* A few more alpine images
* Adjust expected output to match what the playbook sets it to
Change:
- The repo we were testing with no longer seems to exist. Point to one
that does.
Test Plan:
- local test in docker
- CI
Signed-off-by: Rick Elrod <rick@elrod.me>
The recently released version of cffi fails to install on systems with an older version of gcc. In
our case, this in the CentOS 6 test image. There is a fix but it has not yet been released.
https://foss.heptapod.net/pypy/cffi/-/issues/480
* Fix super annoying Python 2.6 multiprocessing.Queue stack trace in CI
A bug exists in Python 2.6 that sometimes raises an exception during interpreter shutdown. We
encounter this frequently in our CI since we run tests on CentOS 6 as the control node, which
has Python 2.6.6 with this bug.
This PR adds a very minor sleep only on Python 2.6 which gets around this issue. I did lot of testing
using a standalon script I found that easily duplicated the issue to find the minimum sleep value
needed to avoid this issue.
CPython issue: https://bugs.python.org/issue4106
Fix in CPython: https://hg.python.org/cpython/rev/d316315a8781
* Use correct attribute
(cherry picked from commit bbef250c2b)
Co-authored-by: Sam Doran <sdoran@redhat.com>
* GitHub is removing the underlying API used to implement the `login` command. Since the general consensus seems to be that relatively nobody currently uses this command (in favor of explicit token passing), support was simply removed for interactive login. If a future need arises, this command should be reimplemented via OAuth Device Auth Grants.
* login or role login commands now produce a fatal error with a descriptive message
(cherry picked from commit 83909bfa22)
* Fix ansible-test docker container detection.
* Attach test containers to the correct network.
* Do not assume `localhost` for accesing Docker.
* Look for containers on current network.
* Always map /var/run/docker.sock into containers.
This fixes issues when using a remote Docker host.
* Support container IP lookup from networks list.
* Fix container network attachment.
* Remove redundant container detection messages.
* Limit DOCKER_HOST parsing to TCP.
* Restore docker socket existence check.
The check is skipped if the docker hostname is not localhost.
* Correct changelog entry..
(cherry picked from commit 3c2e8b99be)
Co-authored-by: Matt Clay <mclay@redhat.com>.
(cherry picked from commit 6362232c30)
Co-authored-by: Matt Clay <mclay@redhat.com>.
(cherry picked from commit 7c83f1f045)
Co-authored-by: Matt Clay <mclay@redhat.com>
Change:
- This enables the inventory_kubevirt_conformance test to pass again on
freebsd.
- This was due to a google-auth version bump. The dep chain looks like
this: openshift -> kubernetes -> google-auth -> aiohttp -> multidict
Test Plan:
- ansible-test integration inventory_kubevirt_conformance --remote
freebsd/12.0
Signed-off-by: Rick Elrod <rick@elrod.me>
* Make Azure Pipelines resource_prefix lowercase.
* Make classification of CI files consistent.
* Update package-data sanity test for AZP..
(cherry picked from commit 92b66e3e31)
Co-authored-by: Matt Clay <mclay@redhat.com>
Change:
- This isn't a direct backport of #71949 because in stable-2.8,
setup_docker doesn't use handlers like more modern branches to clean
up after itself.
- Instead, here we just make sure the docker packages are gone before
the podman test runs.
Test Plan:
- CI
- ci_complete
Signed-off-by: Rick Elrod <rick@elrod.me>
Change:
- The docker-ce.repo file for centos does not work on RHEL since it uses
$releasever and on RHEL that is, e.g., "7Server".
- Instead, set up the repo manually.
- Additionally, the docker centos8 repo no longer has old versions, so
we use the (only) version in the repo instead.
Test Plan:
- CI
Signed-off-by: Rick Elrod <rick@elrod.me>
(cherry picked from commit 31ddca4c0d)
(cherry picked from commit 651c0a2d03)
The file test will no longer attempt to test attributes if `lsattr -vd` does not work on the system under test.
(cherry picked from commit 17765cd4e8)
Co-authored-by: Matt Clay <mclay@redhat.com>
The stat time granularity on macOS is one second. We recently upgraded
to faster macOS hosts, so some tests that run closely together to see if
something changed will have the same timestamp intermittently.
A recent update to cffi that was yanked is still being installed on our
Mac OS X 10.11 test image since the version of pip there is very old and
does not ignore yanked packages.
Pin the version of pyOpenSSL and its dependencies to fix this and avoid
future spontaneous failures..
(cherry picked from commit 65cdb86c8a)
Co-authored-by: Sam Doran <sdoran@redhat.com>
* Add types.py from devel to support backport.
* [stable-2.9] Backport ansible-test CI provider support. (#71614)
* Add encoding.py from devel to support backports.
* Add io.py from devel to support backports.
* Update ansible-test support for CI providers. (#69522)
Refactored CI provider code to simplify multiple provider support and addition of new providers.
(cherry picked from commit d8e0aadc0d)
* Add Shippable request signing to ansible-test. (#69526)
(cherry picked from commit e7c2eb519b)
* ansible-test local change detection: use --base-branch if specified (#69508)
(cherry picked from commit 43acd61901)
* Add Azure Pipelines support to ansible-test.
(cherry picked from commit 8ffaed00f8)
* Update ansible-test remote endpoint handling. (#71413)
* Request ansible-core-ci resources by provider.
* Remove obsolete us-east-2 CI endpoint.
* Add new --remote-endpoint option.
* Add warning for --remote-aws-region option.
* Update service endpoints.
* Allow non-standard remote stages.
* Add changelog fragment.
(cherry picked from commit d099591964)
* Fix ansible-test coverage traceback. (#71446)
* Add integration test for ansible-test coverage.
* Fix ansible-test coverage traceback.
* Fix coverage reporting on Python 2.6.
(cherry picked from commit f5b6df14ab)
* Use new endpoint for Parallels based instances.
(cherry picked from commit 98febab975)
* Add pause to avoid same mtime in test.
(cherry picked from commit 3d769f3a76)
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 417e408f59)
Change:
- By default the dnf API does not gpg-verify packages. This is a feature
that is executed in its CLI code. It never made it into Ansible's
usage of the API, so packages were previously not verified.
- This fixes CVE-2020-14365.
Test Plan:
- New integration tests
Signed-off-by: Rick Elrod <rick@elrod.me>
Change:
- Uses `hg serve` instead of a bitbucket repo for hg tests
- bitbucket no longer serves hg
Backport of #71398
Test Plan:
- CI, fixed integration tests
Signed-off-by: Rick Elrod <rick@elrod.me>
* [stable-2.8] Change default file permissions so they are not world readable (#70221)
* Change default file permissions so they are not world readable
CVE-2020-1736
Set the default permissions for files we create with atomic_move() to 0o0660. Track
which files we create that did not exist and warn if the module supports 'mode'
and it was not specified and the module did not call set_mode_if_different(). This allows the user to take action and specify a mode rather than using the defaults.
A code audit is needed to find all instances of modules that call atomic_move()
but do not call set_mode_if_different(). The findings need to be documented in
a changelog since we are not warning. Warning in those instances would be frustrating
to the user since they have no way to change the module code.
- use a set for storing list of created files
- just check the argument spac and params rather than using another property
- improve the warning message to include the default permissions.
(cherry picked from commit 5260527c4a)
Co-authored-by: Sam Doran <sdoran@redhat.com>
* Fix service test
* Fix lamdba_policy test
* Fix aws_lamdba test
* Fix warning for new default permissions when mode is not specified (#70976)
Follow up to #70221
Related to #67794
CVE-2020-1736
When set_mode_if_different() is called with mode of 'None', ensure we issue
a warning about the change in default permissions.
Add integration tests to ensure the warning works properly.
* Fix tests
- actually use custom module 🤦♂️
- verify file permission on created files
- use remote_tmp_dir so we're ready for split controller
- improve test module so we can skip the call to set_fs_attributes_if_different()
- fix tests for CentOS 6
(cherry picked from commit dc79528cc6)
* Use new category in changelog fragments
The repository names seem to have changed and no longer have the "rhui-" prefix.
(cherry picked from commit 6ac4439a6a)
Co-authored-by: Sam Doran <sdoran@redhat.com>
debconf module exposes sensitive information to logs, console.
Add a note to user about using no_log=True to hide such
information from console.
Fixes: #32386
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 84b4387702)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 9b9bc112d5)
A recent updated to psutil, which is a dependency of ansible-runner, fails
to install on older versions of pip.
Commit with the breaking change:
135628639b
(cherry picked from commit 9d27d7c8b1)
Co-authored-by: Sam Doran <sdoran@redhat.com>
pipe lookup plugin uses Popen with shell=True intentionally.
This is considered a security issue if user input is not validated.
Updated docs to reflect this information for the user. Also, added
Bandit B602 documentation link for further reading.
Fixes: #70159
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit e5649ca3e8)
Previously windows instances on Shippable would be automatically directed to us-east-2.
(cherry picked from commit 1cf26896c5)
Co-authored-by: Matt Clay <matt@mystile.com>
* [stable-2.8] Pin Docker version at 19.03.1
(cherry picked from commit fe941a4045)
Co-authored-by: Sam Doran <sdoran@redhat.com>
* [stable-2.8] Pin docker-ce-cli version in tests (#69620)
Installing docker-ce has a dependency of docker-ce-cli. If the version of docker-ci-cli is not specified, it installs the latest version.
(cherry picked from commit 889da811d7)
Backport of ansible-collections/community.general#189 to stable-2.8
Currently the redfish_config module will convert boolean bios_attribute_value
settings to strings (type str). This will cause BMCs expecting booleans to
error out.
This PR will change the default type of bios_attribute_value to 'raw' in order
to support strings and booleans.
Fixes#68251
With collections migration, inventory scripts are moved from devel (2.10).
Point docs for inventory script to their respective version.
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
Change:
We were only testing dnf on RHEL previously.
Test on CentOS 8 as well.
Test Plan:
Ran locally in docker.
Signed-off-by: Rick Elrod <rick@elrod.me>
Change:
Extend the logic for custom error handling in the dnf module, so that on
newer DNF (such as DNF that ships with modern Fedora 31 container
images, and ships with RHEL 8.2) we report errors consistently with
older DNF.
Test Plan:
Ran dnf integration tests against an old Fedora 31 container image and a
brand new Fedora 32 container image; tess passed on both.
Signed-off-by: Rick Elrod <rick@elrod.me>
Change:
This corrects an incorrect CVE identifier in the changelog entry for
CVE-2020-1735.
Test Plan:
N/A
Tickets:
Refs #67793, #68720
Signed-off-by: Rick Elrod <rick@elrod.me>
* fixed fetch traversal from slurp
* ignore slurp result for dest
* fixed naming when source is relative
* added tests with fake slurp
* moved existing role tests into runme.sh
* normalized on action excepts
* moved dest transform down to when needed
* added is_subpath check
fixes#67793
CVE-2019-3828
(cherry picked from commit ba87c225cd)
* when possible, use filedescriptors from mkstemp to avoid race
* when using path strings, ensure we are always creating the file
CVE-2020-1740
Fixes#67798
Co-authored-by: samdoran
(cherry picked from commit 28f9fbdb5e)
* Remove the params module option from ldap_attr and ldap_entry
Module options that circumvent Ansible's option handling were disallowed
in:
https://meetbot.fedoraproject.org/ansible-meeting/2017-09-28/ansible_dev_meeting.2017-09-28-15.00.log.html
Additionally, this particular usage can be insecure if bind_pw is set
this way as the password could end up in a logfile or displayed on
stdout.
Fixes CVE-2020-1746
(cherry picked from commit 0ff609f1bc)
* Fix formatting for option names
Co-Authored-By: Felix Fontein <felix@fontein.de>
* Fix fail_json
* update sanity
* fix indentation error
Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
* prevent ansible_facts injection (#68431)
- also only replace when needed
- switched from replace to index
- added test to verify bogus_facts are not accepted
CVE-2020-10684
(cherry picked from commit a9d2ceafe4)
* added to ignore
* fix vault tmpe file handling
* use local temp dir instead of system temp
* ensure each worker clears dataloader temp files
* added test for dangling temp files
* added notes to data loader
CVE-2020-10685
(cherry picked from commit 6452a82452)
* subversion module - provide password securely with svn command line option --password-from-stdin when possible, and provide a warning otherwise.
* Update lib/ansible/modules/source_control/subversion.py.
* Add a test.
Co-authored-by: Sam Doran <sdoran@redhat.com>
(cherry picked from commit d91658ec0c)
* acl: fix module failure if there're spaces in a path (#63280)
* Make acl module to work with whitespaces in path
* Added a changelog fragment
* Add quotes to changelog fragment
(cherry picked from commit 504d76e956)
* Fix tests
* Always set the discovered interpreter on the delegated host. Fixes#63180
* Make code a little more generic
* Move code into a function
* Implement some changes based on reviews
* Add changelog fragment
(cherry picked from commit 123c624)
Co-authored-by: Matt Martz <matt@sivel.net>
* avoid mkdir -p (#68921)
* also consolidated temp dir name generation, added pid for more 'uniqness'
* generalize error message
* added notes about remote expansion
CVE-2020-1733
fixes#67791
(cherry picked from commit 8077d8e401)
* C
* Actually inspect the paths and prevent escape
* Add integration tests
* Generate zip files for use in integration test
* Adjust error message
(cherry picked from commit d30c57ab22)
* Update tests to use RHEL 7.8.
Keeping support for RHEL 7.6 since collections are still using it.
* Fix tests for RHEL 7.7+ due to extras repo name change..
(cherry picked from commit 04edd77c42)
Co-authored-by: Matt Clay <mclay@redhat.com>
* add changelog fragment
Signed-off-by: Rick Elrod <rick@elrod.me>
* Update changelogs/fragments/ansible-test-opensuse-15.1.yml
Co-Authored-By: Matt Clay <matt@mystile.com>
* handle installing mysql on suse
Signed-off-by: Rick Elrod <rick@elrod.me>
* attempt to get tests passing again
Signed-off-by: Rick Elrod <rick@elrod.me>
* Update docker.txt to use the OpenSUSE 15.1 container image
Signed-off-by: Rick Elrod <rick@elrod.me>
Co-authored-by: Matt Clay <matt@mystile.com>
https://github.com/ansible/ansible/pull/67577/files broke OpenStack
modules in Ansible 2.8.9. The problem is that min_version should be a
string, since it is passed to StrictVersion(). However, after that
change min_version ends up as a StrictVersion. This causes a TypeError
when later used to instantiate another StrictVersion:
TypeError: expected string or buffer
This change fixes the issue by ensuring min_version is a string. This
change is not required on other branches since the relevant code was
applied only in the 2.8 backport.
Fixes: #68042
* openssl_* modules: prevent crash on fingerprint determination in FIPS mode.
* Add changelog.
(cherry picked from commit ca57871954)
Co-authored-by: Felix Fontein <felix@fontein.de>
To make use of the port_security_enabled [a] parameter, [b] needs
to be present in the openstacksdk or the os_network module will
return an error like:
TypeError: create_network() got an unexpected keyword argument 'port_security_enabled'
To handle this, we fail the module if one of the arguments are used
and the minimum openstacksdk version for that argument is not met.
[a] eaf238b033
[b] 8eb788af07
Backport-of: https://review.opendev.org/708119Fixes: #62062
Up until now, nios_txt_record assumed that the name and view
parameters uniquely described a TXT record. What this meant is that it
was impossible to have more than one TXT record with a certain name.
Changes in this commit expands the set of parameters that uniquely
identify the TXT record with a text field.
* [stable-2.8] Remove Tower module tests from CI. (#67368)
* Remove Tower module tests from CI.
The required AMIs are no longer available.
* Mark Tower tests as unsupported..
(cherry picked from commit b041d96762)
Co-authored-by: Matt Clay <mclay@redhat.com>
* Mark tower_common unsupported.
* ansible-test - add constraint for virtualenv
* Limit virtualenv only on macOS.
Co-authored-by: Matt Clay <matt@mystile.com>
(cherry picked from commit 8f296a6533)
Co-authored-by: Sam Doran <sdoran@redhat.com>
* Add constraint for Jinja2 on Python 2.6.
* Fix constraint in inventory_aws_conformance test.
* Add constrraints for template_jinja2_latest test.
(cherry picked from commit 965854fbd2)
Co-authored-by: Matt Clay <matt@mystile.com>
* Add test constraint for setuptools.
* Update pip test to work on centos6 container.
(cherry picked from commit 51e5b714e0)
Co-authored-by: Matt Clay <matt@mystile.com>
* yum - only instantiate YumBase once (#63713)
* yum - only instantiate YumBase once
Previously, this code was re-instantiating the `YumBase` object
many times which is unnecessary and slow. However, we must do it
twice in the `state: absent` case because the `yumSack` and
`rpmSack` data of the previously instantiated object becomes
invalid and is no longer useful post transaction when we verify
that the package removal did in fact take place. Also, this patch
removes the repetitive re-processing of enable/disable of repos in
various places.
Here's a display of the speed increase against a RHEL7 host:
```yaml
- hosts: rhel7
remote_user: root
tasks:
- name: Install generic packages
yum:
state: present
name:
- iptraf-ng
- screen
- erlang
- name: Remove generic packages
yum:
state: absent
name:
- iptraf-ng
- screen
- erlang
```
Before this patch:
```
real 0m52.728s
user 0m5.645s
sys 0m0.482s
```
After this patch:
```
real 0m17.139s
user 0m3.238s
sys 0m0.277s
```
Fixes#63588Fixes#63551
Signed-off-by: Adam Miller <admiller@redhat.com>
* add changelog
Signed-off-by: Adam Miller <admiller@redhat.com>
* YUM - handle enable of non-existent repo (#53286)
* Ensure `allow_duplicates: true` enables to run single role multiple times(#64902)
* Changed return value in `_load_roles` . Fixes#64902
* Add changelog fragment
* Add an integration test for the issue
* Fix changelog generation error and integration test.
* Fix yaml syntax error in changelog fragment
* Fix typo in a changelog fragment of #64902
(cherry picked from commit daecbb9bf0)
(cherry picked from commit 33094e6c8e)
* Fix multiple subnet (of same IP version) idempotence for docker_network.
* Add changelog.
* Unit tests no longer make sense, since the part of the code they test has been removed.
* Re-add CIDR validation. Move it to better position (module setup instead of idempotence check).
* Update changelog.
* Only run new tests on VM test images.
* Actually do what is documented. Especially since an empty object is a valid value for aux_addresses.
(cherry picked from commit 17ef253ad1)
* #65993 - update restart policy (restart policy & restart retries) without restarting the container
* - proper indentation on the continuation-line
- set restart_policy to the correct value independent from the api version
* - move restart_policy definitions into the if block
- add a new variable for the restart_policy configuration value
* add changelog fragment
* typo; minus -> underscore
* rename changelog fragment to contain the correct module name
* rename restart_policy_config_value to just restart_policy and refer to the correct dict values
(cherry picked from commit 02c126f5ee)
* docker_container: wait for removal if removal is in process (#65854)
* Allow to inspect containers directly.
* Wait for containers to be removed before recreating them.
* Also wait for containers to be removed before creating them.
* Add changelog.
(cherry picked from commit 4df5bdb11e)
* Don't wait for removal during check mode. (#66145)
(cherry picked from commit 14e32c85b4)
Although it's not enforced that fail_json['msg'] should be a string
[1], I think it is pretty strongly implied.
In this case the failure_response['msg'] is sent through as the
fail_json['msg'], and the trailing commas here turn it into a tuple.
It's not clear if this is a typo or intended, but it does cause
problems for callbacks that expect this as a string (e.g. [2]).
Since there seems no point to having these values as a tuple, remove
the trailing commas so they return a string as per everywhere else.
[1] 4c589661c2/lib/ansible/module_utils/basic.py (L2078)
[2] https://review.opendev.org/#/c/696081
(cherry picked from commit fc54ae9227)
Since older versions of paramiko do not require cryptography,
we cannot catch the exact exception from cryptography.
Remove other exceptions since we're catching everything now
(cherry picked from commit d35c1a435b)
Co-authored-by: Sam Doran <sdoran@redhat.com>
The check for this parameter was missing from BusyBox.modify_user(), resulting in unexpected password changes to existing user accounts.
(cherry picked from commit 18130e1419)
Co-authored-by: Sam Doran <sdoran@redhat.com>
* Parse Healthcheck.StartPeriod properly
* Add changelog fragment
* Use proper markup in changelog
Co-Authored-By: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit f31b8e08b2)
* Fix nxos_file_copy option value path validation (#65423)
* Fix nxos_file_copy option value path validation
* Modify `local_file`, `local_file_directory` and
`remote_file` option type from `str` to `path`
so that the option value is validated in Ansible
for a legitimate path value
* Fix review comments
(cherry picked from commit 88008badb1)
* Fix trailing whitespace in docs.
Co-authored-by: Matt Clay <matt@mystile.com>
CVE-2019-14904 - solaris_zone module accepts zone name and performs actions related to that.
However, there is no user input validation done while performing actions.
A malicious user could provide a crafted zone name which allows executing commands
into the server manipulating the module behaviour.
Adding user input validation as per Solaris Zone documentation fixes this issue.
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 7d2ae7e322)
This avoids installing dnf-plugins-core, which breaks the yum and dnf modules
when uninstalling packages using a wildcard after they have already been removed.
This should resolve issues with the yum integration tests failing after docker tests run.
(cherry picked from commit a5c36eedd8)
Co-authored-by: Matt Clay <matt@mystile.com>
This option corresponds to the '--limit-memory' option. Also
fix other mentions memory reservation instead of limit.
(cherry picked from commit 30cfa92e90)
Co-authored-by: Pedro Alvarez Piedehierro <palvarez89@gmail.com>
* Set name_version when version is not specified, fix#55097
This will default to installing the latest version available
* Add changelog fragment
* update changelog
(cherry picked from commit 136dc27572)
* win_acl no longer needs SeSecurityPrivilege
Set-ACL raises missing SeSecurityPrivilege error when the inheritance
from the parent directory is disabled.
* fixes test sanity
* registry rights can only be modified with Set-ACL
* add changelog
(cherry picked from commit 95d613f3ab)
* Corrected Get-adcomputer
Corrected Get-adcomputer on "Remove-ConstructedState" and "Set-ConstructedState" functions.
resolved error: Unable to contact the server. This may be because this server does not exist, it is currently down, or it does not have the Active Directory Web Services running.
* Update lib/ansible/modules/windows/win_domain_computer.ps1
Co-Authored-By: Daniel-Sanchez-Fabregas <33929811+Daniel-Sanchez-Fabregas@users.noreply.github.com>
* Update win_domain_computer.ps1
changed
"-credential $credential" to "@extra_args" (Line 115 and 150)
corrected exception message (Line 122)
* Added changelog fragment, minor code tweak
(cherry picked from commit e77426dad3)
wait_for_connection creates AnsiballZ_ping.py in temp directory,
which remains on remote machine even after playbook run.
Fixes: #62407
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 68428efc39)
* openssl_csr and openssl_certificate: fix support for Ed25519 and Ed448 private keys (#63984)
* Move X25519, X448, Ed25519 and Ed448 feature tests to module_utils.
* Correctly sign with Ed25519 and Ed448 keys.
* Fix public key comparison. Ed25519 and Ed448 do not have public_numbers().
* Add tests.
* Add changelog.
* Give better errors for cryptography 2.6.x and 2.7.x.
* Test for new errors.
* Forgot one.
* Used wrong private key.
* Use private key password for CA key. Add more stuff to its certificate.
(cherry picked from commit fed267df03)
* Pass select_crypto_backend also to test implementation. This exists in devel but not yet in stable-2.8.
- xenserver module_util: XenAPI lib import error message handling is now
ported to missing_required_lib(). Updated unit tests.
- xenserver_guest, xenserver_guest_info, xenserver_guest_powerstate modules:
docs are updated to reflect recent changes in availability of XenAPI lib
on PyPI.
- xenserver_guest, xenserver_guest_info, xenserver_guest_powerstate modules:
docs are updated to reflect recent Citrix rebranding of XenServer. Broken
URLs to external resources are fixed.
- xenserver_guest, xenserver_guest_info, xenserver_guest_powerstate modules:
more tested platforms are mentioned in docs.
(cherry picked from commit 7afba9420a)
* docker_login: Use with statement for accessing files (#64382)
* Update changelogs/fragments/64382-docker_login-fix-invalid-json.yml
Co-Authored-By: Felix Fontein <felix@fontein.de>
(cherry picked from commit 52c4c1b00d)
The error is not always an invalid username/password. It could be a connection timeout or refusal.
(cherry picked from commit d5fbe6573b)
Co-authored-by: Sam Doran <sdoran@redhat.com>
Add integration test for copy: deep recursive with remote_src=True
(cherry picked from commit b7e38dfa52)
Co-authored-by: Alexander Korsunsky <A.Korsunsky@gmail.com>
* check status code value lower boundary
Any HTTP code below 200 cannot be considered a success, should be
handled like a failure instead.
This is particularly true for below zero status codes.
Fixes#63139
* provide changelog fragment
* ensure connection errors are handled in Acme module
* add fetch_url check to ACME.send_signed_request
* remove module.fail_json
* move _assert_fetch_url_success out of ACMEAccount
* fix ansible-lint errors
* use simplified syntax status checking
(cherry picked from commit 0d905a0496)
Use a separate variable for the boolean test rather than having the same variable sometimes be a boolean and sometimes be a regular expression match object
Add integration tests to cover this scenario
(cherry picked from commit 29d4d318a5)
Co-authored-by: Sam Doran <sdoran@redhat.com>
* clear configuration candidate when return to user-view.
* add a changelog fragment for the pr.
* Update 63513-ce_action_wait_prompt_trigger_time_out.yaml
* Update 63513-ce_action_wait_prompt_trigger_time_out.yaml
(cherry picked from commit 47c31c201b)
* Remove lists from contains:, fix types, some more details.
* Adjust types.
* Add new type.
* Re-add meraki_mx_l7_firewall docs at right indentation level.
(cherry picked from commit a129499cf4)
* Fix issue when setting an empty pass to no_log param (#62804)
* Fix issue when setting an empty pass to no_log param
* Fix typo
(cherry picked from commit 322e225830)
* Fix up actual get for older versions
* docs: update version-checker to latest 3 versions (#64109)
(cherry picked from commit 409545825f)
* [Doc-Release-2.9] update release and maintenance page for 2.9 (#64166)
* update release and maintenance page for 2.9
* only 2.4 and earlier used the old changelog system
(cherry picked from commit 3f808d9ed6)
Initialize variables in case the shadow file is not found.
Handle IndexErrors if something goes wrong with file parsing.
(cherry picked from commit e9d10f94b7)
Co-authored-by: Sam Doran <sdoran@redhat.com>
* Get no_log parameters from subspec
* Add changelog and unit tests
* Handle list of dicts in suboptions
Add fancy error message (this will probably haunt me)
* Update unit tests to test for list of dicts in suboptions
* Add integration tests
* Validate parameters in dict and list
In case it comes in as a string
* Make changes based on feedback, fix tests
* Simplify validators since we only need to validate dicts
Add test for suboptions passed in as strings to ensure they get validated properly and turned into a dictionary.
ci_complete
* Add a few more integration tests
(cherry picked from commit e9d29b1fe4)
Co-authored-by: Sam Doran <sdoran@redhat.com>
* ce_netstream_global: bugs fix(list index out of range) (#63332)
* update to fix bugs:index out of range
* list index out of range
* list index out of range
* update for bad-whitespace
* Update ce_netstream_aging.py
* Update ce_netstream_aging.py
* Update ce_netstream_global.py
* Update ce_netstream_global.py
* Update ce_netstream_global.py
* Update ce_netstream_template.py
* Update ce_netstream_global.py
* Update ce_netstream_global.py
* Update ce_netstream_template.py
* Update ce_netstream_aging.py
(cherry picked from commit b7f12f9ff3)
* add a changelog fragment.
* Update 63388_ce_netsream_list_index_out_of_range.yml
changelogs/fragments/63388_ce_netsream_list_index_out_of_range.yml:5:1: empty-lines too many blank lines (1 > 0)
* ce_file_copy: update to Compatible with multiple version of NETCONF API. (#59450)
* update to Compatible with multiple version of NETCONF API.
* update for shippable.
* Update ce_file_copy.py
* Update ce_file_copy.py
* Update ce_file_copy.py
* Update ce_file_copy.py
* Update ce_file_copy.py
(cherry picked from commit 86937e06e3)
* add a changelog fragment.
* clean "changed" after it has been processed
without this change, a loop of `debug` tasks with `changed_when`
causes the "changed" status to get lost before output
* runme.sh tests for debug loop status
(cherry picked from commit bfd32c9b00)
* Improve docker_container docs.
* Fix usage of C(...) and I(...).
* Fix abuses of I(...).
* tls_verify has been made an alias of validate_certs some time ago.
* Fix YAML problems.
* Update lib/ansible/modules/cloud/docker/docker_container.py
Co-Authored-By: Andrey Klychkov <aaklychkov@mail.ru>
* Update lib/ansible/modules/cloud/docker/docker_container.py
Co-Authored-By: Andrey Klychkov <aaklychkov@mail.ru>
* Fix order.
* Split long description.
* Improve formatting.
* Rewrite state docs.
* Make proper sentences.
(cherry picked from commit 5349b3ae4c)
* isa string should rewrap as unsafe in get_validated_value
* _is_unsafe shouldn't be concerned with underlying types
* Start with passwords as text, instead of bytes
* Remove unused imports
* Add changelog fragment
* Update changelog with CVE
(cherry picked from commit baeff74)
Co-authored-by: Matt Martz <matt@sivel.net>
The payload was using the incorrect keyword to push the True or False
statement to the device and was getting dropped. This would also result
in erroring out if layer2_unknown_unicase was set to Flood instread of
Proxy.
* docker_container: fix idempotency for network IP addresses (#62928)
* Specifying IP addresses needs API version 1.22 or newer.
* Simplify code.
* Use IPAMConfig.IPv*Address instead of IPAddress and GlobalIPv6Address.
* Add changelog.
* Fix syntax errors.
* Add integration test.
* Don't rely on netaddr.
* Normalize IPv6 addresses before comparison.
* Install netaddr, and use it.
(cherry picked from commit 62c0cae29a)
* Remove IPv6 tests, use intermediate state of tests from PR which don't need ipaddr filter.
On python 3, if there is no explicit "return True", the
function call will be seen as "False", thus failling the module
(cherry picked from commit 75c4e9ec05)
Newer versions of ssh-keygen create PEM keys that are not recognized by Paramiko.
Now ansible-test compensates for this by updating they keys it generates so Paramiko will recognize them..
(cherry picked from commit 022335669c)
Co-authored-by: Matt Clay <matt@mystile.com>
This new script does not depend on ansible-test and provides much more robust job matrix testing.
It is also run on every job in the matrix now, to detect issues with jobs being re-run after matrix changes are made.
(cherry picked from commit d3da8e4a5b)
* [stable-2.8] cron - Use the default crontab executable in cron and cronvar modules (#59765)
In some remote environments, the `crontab` executable is
overloaded with a custom executable, which typically does
some pre/post processing before forwarding to crontab.
Instead of using the hardcoded `/usr/bin/crontab`, this uses
the `get_bin_path` utility to locate the default crontab executable..
(cherry picked from commit 951a80c8b0)
Co-authored-by: Jean-Frédéric <JeanFred@users.noreply.github.com>
* [stable-2.8] cron - Only run get_bin_path() once (#62554)
(cherry picked from commit b7897e3a8d)
* cherrypick #58832
* fix width (#61619)
(cherry picked from commit 1d40d2b572)
* Minify theme (#61734)
* moved most ansible edits out of theme.css
* remove unnecessary edit to theme.css
* replace with upstream minified theme.css for 0.4.3
(cherry picked from commit de826b437d)
* Minify ansible (#61792)
* make all comments special to survive minify
* minified css
(cherry picked from commit 7efaad711e)
Temporarily disable `hcloud_floating_ip_info`, this until #62414 is
resolved..
(cherry picked from commit edf15b346f)
Co-authored-by: Gonéri Le Bouder <goneri@lebouder.net>
Fixes#61978
* moar tests for get_url fetch behavior with existing file
* add changelog fragment
(cherry picked from commit 7d51cac)
Co-authored-by: Matt Martz <matt@sivel.net>
* Pika v1.0.0 and above were causing issues for publish_message. Updated
to ensure publish_message works with pika 0.13.1 and 1.0.0 and above.
* Adding changelog fragment for rabbitmq_publish fix.
* Updating return value.
(cherry picked from commit 1b2fd2cb5f)
* In pika v1.0.0 BlockingChannel.is_closing was removed. Updating
plugin accordingly.
Ref: https://github.com/pika/pika/pull/1034
* Adding change fragment for is_closing bug.
* Updated change fragment description.
(cherry picked from commit 9b149917a6)
* [stable-2.8] Fix ansible-test coverage path handling. (#61528)
* Fix ansible-test coverage path handling.
* Split CI unit tests into two groups..
(cherry picked from commit e4e5005640)
Co-authored-by: Matt Clay <matt@mystile.com>
* Increase unit test timeout to account for long image download times (#61717)
(cherry picked from commit c9e7a2122d)
This avoids displaying the credentials in CI when retrying tests at maximum verbosity.
(cherry picked from commit b73e772)
Co-authored-by: Matt Clay <matt@mystile.com>
Add information and examples on how to use additional properties from a doc fragment
Add info about layering properties
(cherry picked from commit 9b348e690c)
(cherry picked from commit 5deb01c84d)
(cherry picked from commit 041c52d629)
* win_template - use shared doc fragment for shared options (#59701)
* win_template - use shared doc fragment for shared options
* Change smart quote to em dash and fix whitespace issue
(cherry picked from commit 652bfc7e19)
* template - move backup to its own doc (#59893)
* template - move backup to its own doc
* Use the backup doc fragment for template
(cherry picked from commit 737a500a30)
Python < 2.7.9 does not have the ssl.SSLContext attribute.
ssl.SSLContext is only required when we want to validate the SSL
connection. If `validate_certs` is false, we don't initialize the
`ssl_context` variable.
Add unit-test coverage and a little refactoring:
- avoid the use of `mocker`, when we can push `monkeypatch` which is
`pytest`'s default.
- use `mock.Mocker()` when possible
closes: #57072
(cherry picked from commit 3ea8e0a144)
* fix erroneous failures in docker_compose due to deprecation warnings from docker (#60961)
* Update error handling to work with new method of capturing output
Co-Authored-By: Felix Fontein <felix@fontein.de>
* update error handling
* fix syntax error
* fix indentation
* fix indentation (again)
* remove erroneous line
(cherry picked from commit 0c73e47a42)
* apt_facts - Fix cache related performance regression
* Another minor performance improvement
(cherry picked from commit 0f35e4b7b9)
Co-authored-by: Sam Doran <sdoran@redhat.com>
* Wait for the bucket to become available if possible before setting ACLs
(cherry picked from commit 91ccb03552)
Co-authored-by: Sloane Hertel <shertel@redhat.com>
On OpenBSD, 13 asterisk characters as a password hash, marks the
account as disabled. Otherwise daily(8) script which executes
security(8) will email operator about not properly locked accounts.
Before the diff, we see following warning:
> [WARNING]: The input password appears not to have been hashed. The 'password' argument must be encrypted for this module to work properly.
After the diff, warning is gone..
(cherry picked from commit 1dea661ce8)
Co-authored-by: kucharskim <mikolaj@kucharski.name>
* systemd module will now wait on deactivating state (#59471)
If a service is in the 'deactivating' state running systemctl stop foo,
would wait for the foo service to actually stop before it exits. The
module didn't behave like that and it considered the deactivating state
as if the service wasn't running. This change will align the module with
the systemctl behaviour.
(cherry picked from commit 54d9d7805d)
* Fix systemd start state with deactivating service state
(cherry picked from commit ee4b3b8854)
* Make sure postgresql tests are run for all postgres_* modules (#61647)
(cherry picked from commit 4d057e0331)
* Make sure postgresql tests are run for all postgres_* modules (#61647), remove non-existent
This should be ansible_connection, not connection_type. We can also
update local testing logic.
Remove nxos_install_os/tasks/network_local.yaml as it is nolonger used.
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
(cherry picked from commit 9e1b19e364)
Since there might be several projects with the same name in different
domains, it's required to define domain_id during project search.
Otherwise openstacksdk will raise "Multiple matches found" error
(cherry picked from commit 33ab7ca162)
* Mark logout as changed when docker logout does not return 'Not logged in to '.
* Add changelog.
* Improve logout detection.
* Also return output of 'docker logout'.
(cherry picked from commit 99fb0fcb2f)
* Backport to stable-2.8: Fix#56640: Map k8s ansible keys to api keys (#57418)
* Fix#56643: Map ansible keys to api keys
* Remove errant print line
* Fix pep8 issue
* Fix doc line
* Added test for validate_certs -> verify_ssl translation for k8s module
(cherry picked from commit 6e94b472e8)
* Removed proxy from AUTH_ARG_MAP and added fragment for backport
* Rename backport-57418.yaml to 60683-backport-57418.yaml
* Update 60683-backport-57418.yaml
* fix: docker_swarm_service does not publish both tcp and udp ports for same published port
* fix the linting problems and add the changelog fragment.
* add test
* modify test to ensure result rather than return value
(cherry picked from commit 064cd63f3d)
* win_domain reboot required exception incorrectly reported (#60496)
* Set reboot required dependent on exception message.
* Use exception id instead of it's message
* Add changelog fragment
* Warn when transforming constructed groups
The `keyed_groups` field has used sanitization since 2.6, but `groups` only started doing so in 2.8.
This adds a warning for the change in behavior.
* changelog
(cherry picked from commit 3247626ac7)
* Improve return value documentation and example, fix typo in lib/ansible/modules/cloud/docker/docker_image_info.py
(cherry picked from commit 7a9e865a23)
* [stable-2.8] Fix sanity tests based on newer version of shellcheck (#60423)
- change egrep to grep -E
- store exit codes and check them directly
- ignore SC1091.
(cherry picked from commit c485a1b91e)
Co-authored-by: Sam Doran <sdoran@redhat.com>
* Fix sanity test
- Split the key validation to separate private and public.
- In case public key does not exist, recreate it.
- Validate comment of the key.
- In case comment changed, update the private and public keys.
(cherry picked from commit 27e414200f)
* Improve docker_compose module documentation
* Mentions of files (docker-compose.yml) are now rendered correctly.
* Compose files are now called just that.
* Further clarify options "services", "stopped" and "restarted"
* Update lib/ansible/modules/cloud/docker/docker_compose.py
Co-Authored-By: Felix Fontein <felix@fontein.de>
(cherry picked from commit e9fc095123)
This adds an early return to the __new__ method of the UnsafeProxy object
which avoids creating the unsafe object if the incoming object is already
unsafe.
(cherry picked from commit c1e23c22a9)
On POWER systems, /proc/cpuinfo provides a 'processor' entry as a
counter, and a 'cpu' entry with a description (similar to 'model name'
on x86). Support for POWER in get_cpu_facts was added via the 'cpu'
entry in commit 8746e692c1. Subsequent
support for ARM64 in commit ce4ada93f9
used the 'processor' entry, resulting in double-counting of cores on
POWER systems.
When unit tests were later written for this code in
commit 55306906cf, the erroneous values
were just accepted in the test instead of being diagnosed.
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
(cherry picked from commit 93d9d64038)
* Removed extraneous type check from nagios module, in order to allow python 3.x
* Removed now useless import types
* Added changelog fragment
* Update changelog.
* Rebased and removed check due to module adding earlier guardrails
* Updated changelog to mention earlier fix adding now completely removed guardrails
* Remove superfluous type checks. Fix docs type.
* Update ignore.txt.
(cherry picked from commit 5d8302120b)
* Better cidr_ipv6 validation in ec2_group.py
* Improve warning/error handling, add changelog
* Update unit test for ipv6 validation
* Fix logic that was causing non /128 cidrs with host bits to not be handled
(cherry picked from commit 4308b87d72)
The final version of the fix makes the addition in two places instead of
moving the single addition from one place to another
(cherry picked from commit 84e3c0ef1d)
* Move plugin loader playbook dir additions back to Playbook instead of PlaybookCLI. Fixes#59548
* Restore cli additions
(cherry picked from commit 923e218)
Co-authored-by: Matt Martz <matt@sivel.net>
* Bugfix 60043: turn off the default db warning where it doesn't make sense (#60105)
(cherry picked from commit d2cc9f5f06)
* Backport of 60105: turn off the default db warning where it doesn't make sense
Using docker_image to tag an image as "latest" only updates an existing
tag when used with "force_tag: yes" option. As "latest" is present in
most cases, the option is added to the example to prevent unexpected
behaviour.
(cherry picked from commit 5a6003d0ed)
When targeting 'foo*' in tests, it pulled in packages other than the dummy packages in our testing repo that have many dependencies, some of which were causing tests to fail.
Also change 'bar' package name to avoid the same issue in the future.
(cherry picked from commit 47796af64f)
Co-authored-by: Sam Doran <sdoran@redhat.com>
Only error out if the gid exists with a different group name as
otherwise it will error out if the group with this gid already
exists, like on a rerun of the playbook. This fixes a regression
introduced by 4898b0a4a298448677c2aee2a03157ba5b662759.(cherry picked from commit f94772f807)
* cosmetic: Remove useless call to ec2_argument_spec()
* aws_s3: Improve ETag handling
* Extract ETag calculation into a utility function for reuse by
aws_s3_sync.
* Reduce code duplication in put/get by restructuring the logic
* Only calculate ETag when overwrite == different
* Fail gracefully when overwrite == different and MD5 isn't available
(e.g. due to FIPS-140-2).
* aws_s3: clean up integration tests
Clean up tests, add tests for overwrite settings in both directions.
(cherry picked from commit c513c1e2d3)
This fixes the unit tests hanging when run with Python 3.8 with coverage enabled
(cherry picked from commit ed4a729fd6)
Co-authored-by: Sam Doran <sdoran@redhat.com>
Update ovirt_vnic_profile.py (#56518)
qos is not defined when port_mirroring is enabled, a NoneType is returned for entity.qos in this case
getattr is safer to use than using a direct call to entity.qos.name
If the 'local' parameter of the 'user' Ansible module is enabled, and
the user has been found in the local user database, don't emit
a warning, because this is an expected outcome.
Add changelog and integration tests
Co-authored-by: drybed <drybjed@gmail.com>
(cherry picked from commit 75be309242)
Co-authored-by: Maciej Delmanowski <drybjed@drybjed.net>
* Update pbrun.py
Require ternary operator for if get_option('user') returns NoneType object.
* Update pbrun.py
Added default value to become_user in documentation.
* Update pbrun.py
Changed default for become_user to be '' instead of root.
(cherry picked from commit 1d560e5ce9)
A recent update to lxml for Python >= 3.6 now preserves key order. Change the test input so the input is sorted, making tests pass on previous versions of lxml as well as the latest version.
(cherry picked from commit 19299f3310)
Co-authored-by: Sam Doran <sdoran@redhat.com>
* ce_netstream_global: update to fix a bug. (#59689)
* update to fix a bug.
* Update ce_netstream_global.py
(cherry picked from commit 3c7e8f7905)
* add a changelog fragment.
* consul_session: Python 2.6 is always required on managed node
* consul_session: document all types
* consul_session: add doc for 'id' parameter
* consul_session: improve parameter descriptions
- use formatting functions in descriptions
- 'name' parameter is required when state=node
* consul_session: use required_if
* consul_session: add integration tests
* consul_session: use 'retry' with network dependent tasks
* Use ansible-ci-files bucket for consul binaries
Co-Authored-By: Matt Clay <matt@mystile.com>
(cherry picked from commit 5f8080aaa0)
* add a changelog fragment
* ce_stp: update to fix a bug. (#59347)
* update to fix a bug.
* update for shippable.
* Update ce_stp.py
(cherry picked from commit c3d1f9b085)
* add a changelog fragment.
* Update 59685-ce_stp-to-fix-bugs.yml
* Force int when volume_size is specified
* changelog
* both volume_size and iops must be int
* updated changelog fragment
(cherry picked from commit 5a6f888036)
Previously if `sysctl_set=no` (which is the default) this module only
checked for changes in the sysctl.conf file to decide whether it should
reload it or not. This means that if the values in the conf file are the
same as they are set with the module, but the current values on the
system are different, that this module wouldn't apply the changes on the
system and thus the value set with the module wouldn't be applied on the
OS. This isn't obvious and it doesn't make sense that the module works
like that by default, especially because there is a separate option
`reload`. Now sysctl will also check if the current value differs on the
system and if it does, it will reload the file again.
(cherry picked from commit 5fc769f6b1)
* Clear 'connection related' plugin vars for next loop iteration (#59024)
Fixes#58876
(cherry picked from commit a752e2a467)
* Preserve original variables when using a loop (#59426)
Fixes#59414
(cherry picked from commit 1010363c0b)
pytest.raises has two parameters, message and match. message is meant
to be the error message that pytest gives when the tested code does not
raise the expected exception. match is the string that pytest expects
to be a match for the repr of the exception. Unfortunately, it seems
that message is often mistakenly used where match is meant. Fix those
cases.
message is also deprecated so removed our usage of it. Perhaps we
should write a sanity test later that prevents the use of
pytest.raises(message) to avoid this mistake.
seealso: https://docs.pytest.org/en/4.6-maintenance/deprecations.html#message-parameter-of-pytest-raises
Also update the exception message tested for as we're now properly
detecting that the messages have changed.
(cherry picked from commit 87601969a3)
Fix root filter test
On python-2.6 the error message is different
(cherry picked from commit 67fb3a8215)
Fix the pytest match test for python-2.6
(cherry picked from commit 8a880d6032)
* update to "state is present but all of the following are missing: password" bug
(cherry picked from commit 661b009f36)
* add a changelog fragment.
* update changelog fragment: section "bugfixes" list items must be type str not dict.
* update
* ncclient uses same timeout value at the time
of connection initialisation and waiting response
* Ansible has connect_timeout to control the waiting
time during initial connection and `command_timeout`
to control the wait time for resposne. Hence set the
ncclient timeout seperately to Ansible command_timeout
after the connection object is created sucessfully.
(cherry picked from commit db0fe4b188)
Correct variable name for skipping of the gitlab test when gitlab python
client is not installed.
(cherry picked from commit 0c992d5ae4)
Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
The docs now have multi-level breadcrumbs so including "Sanity Tests »" in the title on a sanity test page is redundant.
(cherry picked from commit b4494fa547)
* Update find.py (#59456)
Return values for `matched` and `examined` in the find module are integers and not strings.
(cherry picked from commit 7b4ce9e4ae)
The nightly rpm builds were using a timestamp from the last git commit
in their Release field. Unfortunately, that was using author timestamp
which is nonsequential. Change to using commit timestamp which is
sequential.
note that this still has a cornercase if the branch's history is ever
rewritten.
(cherry picked from commit 97edfcc)
Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
* Mark Docker tests unstable
- docker_swarm is unstable on RHEL 8
- docker_container is unstable on RHEL 7
* Disable docker_container test.
(cherry picked from commit 67c69f3)
Co-authored-by: Sam Doran <sdoran@redhat.com>
(cherry picked from commit 4ef2545eb5)
also fix all cases of none remote/become users (#59397)
some cases failed, when defaults were None on the plugins
(cherry picked from commit 74ac229fa8)
* parameter ensure replaced by state (#59342)
corrected a typo at the absent-example.
(cherry picked from commit 883cc665e3)
* Backport 59342, postgresql_schema: parameter ensure replaced by state
Commit b7724fdf85
appears to have caused a regression, where `ip4`, `gw4`, `ip6`, `gw6`
were converted to `ipv4.address`, `ipv4.gateway` etc.
This causes bootproto (or `ipv4.method`) to remain `dhcp`, as noted in https://github.com/ansible/ansible/issues/36615
This commit only reverts the key-value pairs to the original names,
which is in line with both expectation (manual ip addr == no dhcp) and
the language used in the playbook, which is, for example, "ip4" not
"ipv4.address"
Co-authored-by: Stuart Pollock <spollock@pivotal.io>
Co-authored-by: Tyler Ramer <tramer@pivotal.io>
(cherry picked from commit 8d0f2e5725)
* [stable-2.8] Omit -A and -G options in local mode since luseradd does not support these (#55401)
Add integration tests
(cherry picked from commit 20ad120829)
Co-authored-by: Sam Doran <sdoran@redhat.com>
* User - make groups and append mutually exclusive with local (#59309)
* Update intigration tests
(cherry picked from commit 8edad83ae0)
vmware_guest accepts 0MB as valid value for memory reservation in
virtual machine hardware configuration. This fixes the regression
introduced via 193f69064f.
Fixes: #59190
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 1f49abb51c)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
* Wrap Get-MachineSid's body in a try/catch
It's not critical information and there's been a number of issues over
the years with trying to retrieve it. If an exception is thrown just
return null.
Fixes: #47813
(cherry picked from commit b8a41a90b8)
* add changelog
(cherry picked from commit 277690bcc6)
* ce_file_copy : update ce_file_copy to fix a bug. (#59071)
* update ce_file_copy to fix a bug.
* Update ce_file_copy.py
* Update ce_file_copy.py
(cherry picked from commit 7a0a21ea7a)
* add a changelog fragment to PR 59243.
device_id is required when private_ip_address is set, but the reverse is not true.
(cherry picked from commit 6273574eb4)
Signed-off-by: flowerysong <junk+github@flowerysong.com>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
os_quota checks the current quotas for compute, network and volume
services and fails when no volume service is found in the catalog.
Since openstack test deployments without volume services are common,
os_quota shouldn't fail if such service is missing.
This was originally fixed in d31a09ceb7
and later adapted to catch exceptions raised by shade. Since then, this
module moved to using openstacksdk, which doesn't catch the exception
raised by keystoneauth1.
Fixes#41240
(cherry picked from commit 1aca1f21f9)
* tower_role: ensure alias of validate_certs is handled
* tower modules: remove tower_verify_ssl alias too
Error was:
Failed to update role: The Tower server claims it was sent a bad request.
GET https://tower/api/v2/projects/22/object_roles/
Params: [('tower_verify_ssl', False), ('role_field', 'admin_role')]
Data: None
Response: {"detail": "Role has no field named 'tower_verify_ssl'"}
Full traceback:
File "/tmp/ansible_tower_role_payload_7_2p0X/__main__.py", line 145, in main
result = role.grant(**params)
File "/usr/local/lib/python2.7/dist-packages/tower_cli/resources/role.py", line 365, in grant
return self.role_write(fail_on_found=fail_on_found, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/tower_cli/resources/role.py", line 242, in role_write
fail_on_multiple_results=True, **data)
File "/usr/local/lib/python2.7/dist-packages/tower_cli/models/base.py", line 301, in read
r = client.get(url, params=params)
File "/usr/local/lib/python2.7/dist-packages/requests/sessions.py", line 546, in get
return self.request('GET', url, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/tower_cli/api.py", line 299, in request
kwargs.get('data', None), r.content.decode('utf8'))
(cherry picked from commit 77e01e6abc)
* ce_vxlan_gateway: update the regular expression to match the more accurate. (#58226)
* Update the regular expression to match the more accurate
* Update the regular expression to match the more accurate
* Update the regular expression to match the more accurate
(cherry picked from commit 2f91266aa9)
* add a changlog fragment to PR 58557.
* Update 58226-update-ce_vxlan_gateway-to-fix-a-bug.yml
* assign a sane default to yum/dnf lock_timeout, in line with cli
Fixes#57189
Signed-off-by: Adam Miller <admiller@redhat.com>
* fix typo in changelog snippet
Signed-off-by: Adam Miller <admiller@redhat.com>
(cherry picked from commit d2dc4c9bc4)
add felixfontein suggestion to changelogs/fragments/58569-nagios-fifo-fix.yaml
Co-Authored-By: Felix Fontein <felix@fontein.de>
(cherry picked from commit faf50dbace)
* Correct machinectl become plugin function arguments (#58734)
* Correct get_option function name and change flags to become_flags
* Remove the '--' from the returned command
* add changelog fragment
* change changelog fragment description
* move the -q argument to machinectl before the shell argument to resolve issues with machinectl v230 (see #56571)
(cherry picked from commit 4f642daae5)
* Update PR number in changelog fragment
* Revert "Update PR number in changelog fragment"
This reverts commit 38e6b4785a.
- use include_vars to set appropriate packages and pip packages per distribution and version
- install an older version of Docker CE on RHEL 8 since a dependency is unavailable
- disable warnings on tasks that are ok
- skip tests for CentOS/RHEL 6
(cherry picked from commit d50c8c2b83)
Co-authored-by: Sam Doran <sdoran@redhat.com>
- use single include_vars task rather than multiple set_fact tasks
- use multi-line YAML to break up long conditionals
- use version() test rather than direct comparisions
- use different appstream package on RHEL since '@swig:3.0/default' is not working in the GA
(cherry picked from commit 16d6fcf514)
Co-authored-by: Sam Doran <sdoran@redhat.com>
* "no macro" command should not be handled by edit_macro(), fixes#55212
(cherry picked from commit 2cdab1379f)
* fixed ios_config issue where the "no macro" command was erroneously handled by edit_macro()
* Load Ansible module_utils for ps_argspec validator
* fix validation for modules without Requires statement
* Moved future comment to proper location
(cherry picked from commit c3978fed4b)
* win_domain_user: do not hide error on failures
* Was a bit too overzealous in the removal
* Remove uneeded sanity ignore rule
(cherry picked from commit c260721ce5)
* yum: take care of stale/invalid yum.pid (#58457)
* yum: take care of stale/invalid yum.pid
* Add changelog
(cherry picked from commit 5064e67d37)
* yum: check whether the lock file disappeared (#58581)
(cherry picked from commit b0f38931b0)
* ce_static_route: fix some bugs. (#58251)
* add a util function to ce.
* add a util function to ce.
* update to fix bugs for ce_static_route
* update to fix bugs for ce_static_route
* update to fix bugs for ce_static_route
* update
* update for shippable.
(cherry picked from commit bb33c922f7)
* add a changelog fragment to PR 58565.
* Update 58565-update-ce_static_route-to-fix-a-bug.yml
* Changing LBName used by same task inside azure_rm_loadbalancer (#58936)
fixes#58933
(cherry picked from commit 00d7aed56b)
* Backporting #58933 to stable-2.8
* ce_netstream_aging: update to fix a bug. (#58231)
* update to fix a bug
* update to for shippable.
(cherry picked from commit 715de33467)
* add a changelog fragment.
* Update 58563-update-ce_netstream_aging-to-fix-a-bug.yml
* update to fix a bug (#58207)
(cherry picked from commit 4a6c86715a)
* add a changelog fragment to PR 58556.
* Update 58207-update-ce_bfd_view-to-fix-a-bug.yml
* update to fix a bug. (#58200)
(cherry picked from commit 875e7c3e50)
* add a changlog fragment to PR 58200.
* Update 58200-update-ce_bfd_global-to-fix-a-bug.yml
Warn user that permissions for a distributed switch must be defined and managed on either
the datacenter or a folder containing the switch.
(cherry picked from commit 5e2471485a)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
* [stable-2.8] Get minor version number for CentOS and Debian (#57814)
* Get the most detailed version number from distro.version() for CentOS and Debian
* Update tests and fixtures
* Update fixture generation script to gather distro info and work with Python 3
* Update LinuxMint fixtures
* Cleanup fixture formatting
* Improvements based on feedback from abadger:
- use unicode since that is what distro returns
- use frozenset with a tuple
- include link Debian to bug
(cherry picked from commit ab6a9ef130)
Co-authored-by: Sam Doran <sdoran@redhat.com>
* Add a changelog for the version number in facts change
* purefa_user: Fix Incorrect parameter used causing crashes. (#57588)
(cherry picked from commit 35dcd231be)
* purefa_user: add previous return as an alias
Avoid breaking user's playbooks in minor releases
* update changelog
* Skip gitlab tests if dependencies aren't met
* Skip certain unittests if passlib is not installed
* Fix tests with deps on paramiko to skip if paramiko is not installed
* Use pytest to skip for cloudstack
If either on Python-2.6 or the cs library is not installed we cannot run
this test so skip it
(cherry picked from commit 8acf71f)
Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
* Handle vaulted non-ascii characters for Python2
* Add a test to ensure str() no longer raises UnicodeEncodeError
(cherry picked from commit 826f224f02)
* Wrap everything in try/except to avoid leaving files behind
* Add unit tests, integration tests, and changelog
* Do text the correct way.
(cherry picked from commit 6cf6f5a34b)
Co-authored-by: Sam Doran <sdoran@redhat.com>
* Fix notifying handlers by using an exact match rather than a string subset if listen is text rather than a list
* Enforce better type checking for listeners
* Share code for validating handler listeners
* Add test for handlers without names
* Add test for templating in handlers
* Add test for include_role
* Add a couple notes about 'listen' for handlers
* changelog
(cherry picked from commit ec1287ca7e)
- don't background the nuage-vsd-sim
- increase the asncy timeout
- use uri to actually query the simulator API to make sure it is ready for connections
(cherry picked from commit 911a2ec6d3)
Co-authored-by: Sam Doran <sdoran@redhat.com>
* Merge authentication options back into a single field to prevent losing options beyond the first (#57507)
* Merge authentication options back into a single field to prevent losing options beyond the first
* Add integration test and changelog
* Fix multiple options for local type connections. Also fix sorting errors between local type connections that lack a src
* Build again because of github problems?
* Add spaces before comments
(cherry picked from commit 5cc6486a2b)
* This commit prevents integer indices from being parsed as ip nets
* ipaddr: unit tests for empty string
Fixes#57895
Signed-off-by: Tobias Schramm <tobleminer@gmail.com>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit e7c39460ed)
* Fix failing SAN comparison for older cryptography versions due to not implemented __hashh__ functions.
* Fix SAN comparison: IPv6 addresses need to be normalized before comparing strings.
* Add changelog.
* Fix comment.
(cherry picked from commit 75ca8eb42f)
* openssh_keypair: bugfix make regenerating keypairs via force possible / add invalid file handling
* openssh_keypair: change permissions of read-only file instead of deleting it for regeneration; add changelog fragment
* address review feedbak, refactor
* add integration tests for bigfixes
* linter: fix indent
* fixup integration tests: use force when regenerating an invalid file
* linter: fix indent
* openssh_keypair: address review feedback
* openssh_keypair: fixup, remove backtick
* openssh_keypair: address review feedback
* Only pass 'y' into stdin of ssh-keygen when file exists.
(cherry picked from commit 547a29805e)
* Improve error for docker modules when docker-py can't be imported.
* Add changelog.
* Mention platform and Python interpreter in more cases.
* Clarify wording.
* Adjust tests.
(cherry picked from commit 4a12be31fb)
* kubevirt: enable/update tests + fix merge_dicts() (#57685)
* Actually run the unit tests and separate them into two files
* Re-add recursion to merge_dicts()
* Update tests to work with current code
(cherry picked from commit 51add5aa79)
* Changelog fragment
* Replace nested function with dict_transformations.dict_merge
* Adjust hostname classes based on output from distro
Corrects the following:
- OpenSUSE Leap
- ArchARM
- Oracle Linux
* Add CoreOS and Clear Linux distributions
(cherry picked from commit bd55617a5b)
Co-authored-by: Sam Doran <sdoran@redhat.com>
* PostgreSQL modules: move params mapping from main to connect_to_db() function (#55799)
* PostgreSQL modules: move params mapping from main to connect_to_db() function
* PostgreSQL modules: fix postgresql_db
* PostgreSQL modules: fixes
(cherry picked from commit 9b17346d1e)
* postgresql moving params mapping to connect_to_db: added changelog fragment
* postgresql moving params mapping to connect_to_db: add get_conn_params, fix conflicts
* Improve general error behavior if a Docker error is not caught.
* Don't die when network doesn't exist.
* Add changelog.
* Make API version always available. Also catch errors when retrieving version.
* Fix error message.
* Adjust fallback error messages.
(cherry picked from commit f8f2738351)
- Replace private key that expired an 2019-06-20 with a key that does not expire
- Document how to generate a new GPG key using an input file
(cherry picked from commit b9d77b997e)
Co-authored-by: Sam Doran <sdoran@redhat.com>
* Added default value for mounts.source
* Added the changelog fragment
* Added tests
* Fixed separators
* Moved the teardown section at the end
(cherry picked from commit 122d4164c5)
This should reduce the amount of time we are waiting for netconf to come
online.
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
(cherry picked from commit 7f536630eb)
* Remove lexers which have been fixed in Pygments 2.4.0.
* Add Pygments >= 2.4.0 to test runner.
* Fix pages that triggered lexer errors.
Co-Authored-By: Sviatoslav Sydorenko <wk.cvs.github@sydorenko.org.ua>
(cherry picked from commit 505c99265c)
* ssh: Ensure debug messages are properly converted to text. Fixes#57843
* surrogate_then_replace is default, be less explicit
* We only needed to_text for display, not exceptions
(cherry picked from commit 375ac76)
Co-authored-by: Matt Martz <matt@sivel.net>
* Change expected config source
* make it conditional
* rename property
* Add changelog fragment
* make it string
* Update changelogs/fragments/57969-docker_container-change-expected-config-source.yml
Co-Authored-By: Felix Fontein <felix@fontein.de>
(cherry picked from commit 8c1c2afd02)
* Duplicate rules were being created if rule index was not set (#57379)
* bug fixes
* Revert "bug fixes"
This reverts commit 2d839ecf35.
* bug fix
(cherry picked from commit e80d6f18ce)
* add fragment
* Use different package for DNF tests
Ninja caused errors in Fedora 30. This works in both Fedora 29 and 30.
* Fix git integration tests
Git >= 2.21.0 has either a bug or change in behavior where it errors when fetching a
repository containing submodules that are behind the upstream submodule commits.
It's weird and I don't fully understand it.
Get around this my checking out specific commits from a repository rather than
switch the origin URL.
* Fix PostgreSQL tests
The error message is slightly different
(cherry picked from commit 18feeb51a8)
Co-authored-by: Sam Doran <sdoran@redhat.com>
We can switch to wait_for / meta, as using pause can lead to race
conditions on slower / faster hardware.
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
(cherry picked from commit 8dc51dfe1c)
* Ignore `<rpc-reply>` node from candidate and
running configuration in xml diff
* Add route-policy as prerequisite to BGP coonfiguration
in integration test
(cherry picked from commit 4a3e14f90b)
Only pop Iops param if no storage_type is given. If given and set to wrong type we get to the AWS client error that informs the user
Docs syntax fix
Fix typo in docs
Co-Authored-By: stefanhorning <stefan@hornings.de>
Added changelog fragment for rds_instance bugfix
* update vxlan (#57264)
* update vxlan
* add a changelog fragment for the PR 57264
* Update 57264-update-vxlan-to-fix-bugs.yml
update for change request
* Update ce_vxlan_vap.py
remove commented codes.
(cherry picked from commit 5bddd55703)
* add a changelog fragment for PR 57889.
* add a changelog fragment for PR 57889.
* update snmp modules to fix bugs for cloudengine (#57025)
* update snmp modules to fix bugs for cloudengine
* update snmp modules to fix bugs for cloudengine
* update "ce_snmp_contact", list may be out range
(cherry picked from commit 5ac3661176)
* add a changelog fragment for PR 5788.
* add a changelog fragment for PR 57888.
* Change RHEL8 image name to match changes in ansible-test
Continue to use the beta version of RHEL 8 until we fix tests that are breaking with the GA version.
* Skip ufw integration test on RHEL 8 Beta
(cherry picked from commit 84075fe351)
Co-authored-by: Sam Doran <sdoran@redhat.com>
* set ovirt disk active default (#57464)
* set ovirt disk active default value to True
* disk default activate only when creating
* correct comment syntax
* add changelog
* ovirt disk activate update docs
* Update ovirt_disk.py
* Update ovirt_disk.py
* option is marked as required but specifies a default (#57257)
* required and default are conflicting
(cherry picked from commit 05e6339c49)
* add a changelog fragment for PR 57750.
* Bump container version.
* Use new URLs.
* Add IP certificate tests.
* Disable IPv6 IP from IP certificate.
Background: in CI, the ACME test container apparently has no IPv6 support.
Without IPv6 support, Pebble can't connect to validate, and thus validation
fails.
(cherry picked from commit c50a75a41e)
* update lib/ansible/plugins/action/ce.py to fix a bug. (#57183)
* update lib/ansible/plugins/action/ce.py
(cherry picked from commit 9c3ae4c1f4)
* add a changelog fragment for PR 57696
* FTD configuration module: fix a bug with response parsing (#57480)
* Update dependence's name to firepower-kickstart
* Check response type before getting attributes
* Add unit test for construct_ansible_facts method
* Update error message
(cherry picked from commit 4fa93d5b9b)
* Add backlog entry
Sometime VMs does not return any configurations which leads
to failing the inventory plugin.
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 7505550500)
* Return results even when the cache is disabled
By default the cache is disabled and so the results of the API call
are not placed in there for the return statement to fetch.
* Always update self._cache to return
(cherry picked from commit cf00883c9d)
* Adding integration test for 127.0.0.1/32 and ::1/128.
* Making sure file is not corrupted when render fails
* Fixes#56430
* Adding changelog for MR 57147/Issue 56430
Set ansible_buffer_read_timeout to be larger then
ansible_command_timeout, as both appliance / controller are on the same
physical network and we are not triggering ansible_command_timeout.
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
* ios_ntp: Switch interface to GigabitEthernet0/1 for tests
Lets use an interface we know that exists for testing, in some cases
Loopback0 maybe not be configured.
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
* ios_ntp: properly register result variable for testing
This is currently broken, and tests don't work. Fix this by properly
registering the result variable.
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
ios_user requires escalated privledges, rather then doing this in the
inventory, we can just add it into the playbook tasks.
Also add missing provider settings for authorize.
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
This was required to be installed by a human, out side of our testing.
Add it so ansible-test can now manage.
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
* Updated testcase
* Added check mode support
* Added check for mutual exclusive for Name and UUID
Fixes: #57580
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 00604d3f2c)
To get all instances gcp_compute made a call to the Google API for each
zone separately. Because of this if all zones needed to be queried
fetching hosts lasted 30+ seconds. Now the module will use a single
query that will return all the instances, so the execution should last
just a few seconds.
This commit also suppresses a warning from the google-auth library about
using user credentials because if an Ansible user wants to use user
credentials, there is no need to warn him about it.
(cherry picked from commit f6a0f9874d)
* preserve same order as inventory manager when using host lookup (#55331)
* preserve same order as inventory manager when using inventory_hostnames lookup
add a test
* move generic code
(cherry picked from commit afb5e02c19)
* changelog
* Found bug, fixed by moving the serialization of objects out of try while creating objects
* Added changelog to document fix
(cherry picked from commit d07d394779)
* update ce_ntp.py and remove the root tag name to find all nodes (#56976)
* add a maintainer
* update ce_ntp.py and remove the root tag name to find all node
* update ce_ntp.py and remove the root tag name to find all node
(cherry picked from commit 0137c4343b)
* add changelogs fragments
* add changelogs fragments
The extant documentation says that the fingerprint return value is a
single string, but it is currently being returned as a split list.
Convert the returned value to a string as documented, and add some
basic test-case coverage for the return values.
(cherry picked from commit 6f06fc9945)
* win_chocolatey - honour version when bootstrapping chocolatey and fix package listing (#57208)
* win_chocolatey - honour version when bootstrapping chocolatey
* skip upgrade all step
* Fix install latest step
* Remove test changes now that Chocolatey is released
* tweak the package version detection
(cherry picked from commit b5b75daaa5)
* removed disabled alias
* nxos_vlan: fix broken purge behavior (issue #57101) (#57229)
* nxos_vlan: fix broken purge behavior (issue #57101)
Symptoms/Analysis:
- `nxos_vlan` `purge: true` would fail when `purge` was trying to delete all unspecified vlans, including vlan 1.
- `nxos` devices do not allow removing vlan 1 and raise a cli exception error
- Previous fix#55144 caused a side effect when `purge` was used: vlan changes specified by `aggregate` were ignored; e.g.
- vlan 4 is not present; playbook specifies `aggregate: { vlan: 4 }, purge: true`
- results in proper purging but vlan 4 is not created
Solutions:
- ignore vlan 1 when purging
- remove the `not purge` check from state present logic
Added additional unit tests and integration tests.
Tested against all regression platforms.
* PEP fixes
* Add agg_show_vlan_brief.txt fixture
* Add warning for removing vlan 1
* change method name check
(cherry picked from commit 6bb13bbb84)
* changelog
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
* Fix order for warning on templated conditionals
Fix bare variable warnings when the variable is a boolean
* changelog
* Add tests for cases that should and should not give warnings
If the behavior may change when the default behavior for CONDITIONAL_BARE_VARS becomes False there should be a warning. Boolean type conditionals will not change in behavior so don't warn.
* oops, forgot to add files
* typo
(cherry picked from commit 21cd24a0dd)
According to the OpenStack Networking API
the attribute binding:vnic_type of a port is optional.
This change enables the os_port module to handle
binding:vnic_type as optional.
(cherry picked from commit bc50a52ee2)
Stripping the output from `podman image ls -q` prevents passing
a blank image ID to `podman image inspect`, which would fail.
(cherry picked from commit a05be890ad)
Co-authored-by: Matt Clay <matt@mystile.com>
Changes example to `when: inventory_hostname == ansible_play_hosts_all[0]` to really run run_once regardless of serial.
(cherry picked from commit dea9644d21)
The erlang-solutions repository is broken for Ubuntu18 (They did not
sign their repository metadata). For now, disable the rabbitmq tests
which depend upon that. I'll open a PR with a revert of this commit.
We can watch it to see when it passes in Ci to know that the
erlang-soutions repository has been fixed
(cherry picked from commit 5f47ab9)
Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
* Not native, but text (#55676)
* use to_text instead of to_native
* cleaned up some imports and other pyflakisms
* fix missing lib messages
(cherry picked from commit 27dcf8aaab)
* readded still used import
* docker_image: fix default handling of old docker-build options nocache and rm (#56610)
* Fix usage of nocache parameter.
* Fix defaults.
* Add changelog.
(cherry picked from commit 56e2d48612)
* docker_image: fix module failing when build option is used without specifying path (#56940)
* Fix module failing when build option is used without specifying path.
* Add changelog.
(cherry picked from commit 86928a5f74)
* Extend docker_image tests. (#57090)
(cherry picked from commit c54d79bc13)
This commit fixes a non-passing junos_facts integration test, as it was
using a non-ordered frozenset to assert its result.
(cherry picked from commit 0ada6b8d8d)
* Update rabbitmq_queue.py (#56912)
change description for when `state=absent`
(cherry picked from commit 00067c8d54)
* Add changelog fragment for PR 56912
* Make second group match of ufw status output optional
Fixes#56674
* Fix comparison logic.
* Add changelog fragment
(cherry picked from commit 1d22909f7c)
* Apply tags conditionally so that the module does not throw up an error when using an older distro of openstacksdk
(cherry picked from commit c517538bd8)
* Update 56575-os_stack-apply_tag_conditionally_to_fix_the_module.yaml
* route53_facts: add check mode support
* route53_facts: add changelog fragment mentioning check mode support
* route53_facts: alter changelog fragment type from `minor_changes` to `bugfixes`
* Update changelogs/fragments/56900-route53-facts-check-mode.yaml
Co-Authored-By: Felix Fontein <felix@fontein.de>
* [docker_network] Fix idempotency when using aux_addresses in ipam_config (#56901)
* [docker_network] Fix idempotency when using aux_addresses in ipam_config
Mismatch between keys returned by Docker API (AuxilliaryAddresses) vs
expected by Ansible module (aux_addresses) resulted in tasks always
have status 'changed'. The existing code normalizing one set of
keys to another missed this special case where converting
CamelCase to lowercase is not sufficent.
Please see
https://github.com/moby/moby/blob/master/api/types/network/network.go
for reference.
* Correct keywords formatting in changelog file
Co-Authored-By: Felix Fontein <felix@fontein.de>
(cherry picked from commit 37df89b2d8)
* docker_network: Integration tests for IPAM config idempotence (#56975)
Integration tests for pull request #56901 which fixes found issues with idempotence.
(cherry picked from commit 6a50c6aae4)
* [stable-2.8] eos_l2_interface handle "Interface does not exist" (#56787)
* Quick and dirty attempt to handle eapi error
* Well this should probably change
* Hopefully this works correctly?
* Fix check_rc handling with httpapi
* Add tests that should hopefully cover the error
* Fix warnings
* Improve tests.
(cherry picked from commit cebb363fcc)
Co-authored-by: Nathaniel Case <ncase@redhat.com>
* Add changelog
* Remove backport overreach
* Fix debug statements in new tests while I'm here
It is possible the EOS appliance doesn't have an IP address on the
management1 interface, instead just check we have found that interface.
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
(cherry picked from commit f9589bd)
Co-authored-by: Paul Belanger <pabelanger@redhat.com>
* [stable-2.8] eos_config: Fix test issues (#56180)
* Alter tests to pass
* Change diff_against to make changed work again
* Add another diff_against
* Expose supports_sessions across all EOS connection types
* Change session warning to failure
* supports_sessions needs to be a method to survive the rpc boundary
* Alter tests to match
(cherry picked from commit 0bead36)
* [stable-2.8] Don't fail trying to read boot image without enable (#56126)
Also add a message when network_os_image can't be acquired.
(cherry picked from commit 3d9da0c)
Co-authored-by: Nathaniel Case <ncase@redhat.com>
* Add changelog
* Fix changelog
- Also return url and update docs for other values to indicate they are only returned on success.
- Add integration tests
- Use info variable for common return values
- Use -1 as default status rather than None. This is lines up with with existing code in urls.py
- Add unit tests to ensure status and url are returned on failure
(cherry picked from commit 8f4f3750fe)
Co-authored-by: Sam Doran <sdoran@redhat.com>
* Make ansible adhoc work with include_role
Fix logic condition so that include_role works
without
```
ERROR! 'async_val' is not a valid attribute for a IncludeRole
The error appears to be in 'None': line 0, column 0, but may
be elsewhere in the file depending on the exact syntax problem.
(could not open file to display line)
```
* Add include_role test for adhoc
(cherry picked from commit cd95843ea5)
Avoid premature vars templating
* added tests
* avoid 'is template' warning in vars, since we want them for latter templating
(cherry picked from commit 1da47bfa8c)
* [stable-2.8] Whitelist listen as a valid keyword on TaskInclude (#56586)
* Whitelist listen as a valid keyword on TaskInclude. Fixes#56580
* Move 'listen' to HandlerTaskInclude
* Remove trailing newline
(cherry picked from commit 576593e)
Co-authored-by: Matt Martz <matt@sivel.net>
* Improvement on setting VALID_INCLUDE_KEYWORDS on HandlerTaskInclude (#56801)
(cherry picked from commit 8bb3274711)
Ensure the module still work with the ESXi where CustomFieldsManager
does not exist.
From: https://www.vmware.com/support/developer/converter-sdk/conv60_apireference/vim.CustomFieldsManager.html
The CustomFieldsManager object is used to add and remove custom fields to
managed entities.
The custom fields values set on managed entities are available through the
customValue property and through the summary objects for VirtualMachine
and HostSystem. They are not available directly through this managed object.
This functionality is only available through VirtualCenter.
Fixes: #56071
(cherry picked from commit cf78759f5b)
This is a sanity test cleanup to handle a known image bug with (N9K) I7 images.
The I7 image fails to enable some snmp trap link configs causing an idempotency failure in the sanity, so we're skipping the idempotence tests that involve this bug.
Tested on N9K images: 9.2(2), 7.0(3)I7.
(cherry picked from commit 4d46f44ff2)
* Fixes Netconf_config single parameter bug (#56138)
* Fixes Netconf_config single parameter bug
Fixes 56022
fixed get_config to not require multiple parameters to just run a backup
* Add Integration test for netconf_config
Associated with #56022
tests backup through netconf only using one parameter.
* Added debug to the begin and end of file
* Fix formatting of save config. #56022
* removed blank line at end: #56022
(cherry picked from commit 647ed207af)
* Fix netconf_config backup string issue (#56175)
* Convert the ElementTree object to string
before dumping the configuration in file.
(cherry picked from commit 9c5745ad21)
* Clarify that GPLv3+ module_utils need core team approval.
* Update docs/docsite/rst/dev_guide/shared_snippets/licensing.txt
Co-Authored-By: Sam Doran <sdoran@redhat.com>
* More 'module_util' -> 'file in module_utils'.
(cherry picked from commit 53ec9c8019)
* Update get_certificate.py with an example to calculate number of days until cert expires from get_certificate result.
* Update lib/ansible/modules/crypto/get_certificate.py
Co-Authored-By: Felix Fontein <felix@fontein.de>
(cherry picked from commit cb9be4ddaf)
* Add changelog fragment
* Fix IPv6 address parsing for py2.6, and add tests
* make sure hostname isn't None
(cherry picked from commit 493cf81)
Co-authored-by: Matt Martz <matt@sivel.net>
* Allow python_requirements_facts to cope with packages with dashes
```
python_requirements_facts:
dependencies:
- kubernetes-validate
```
should work as expected
(cherry picked from commit 5b3305c715)
* Allow python_requirements_facts to cope with packages with dashes (#56166)
* Allow python_requirements_facts to cope with packages with dashes
```
python_requirements_facts:
dependencies:
- kubernetes-validate
```
should work as expected
* Ensure tests run for python_requirements_facts
(cherry picked from commit 8e1dd58c2b)
* Rewrite much of the execution of meraki_switchport
- Previous versions had problems with idempotency and allowed_vlans
* Modified payload creation
- Parameter map is used
- propsed is created using .copy()
- Much cleaner this way
* Add whitespace for lint
* Add bugfix snippet for changelog
(cherry picked from commit d59eb9edab)
* When not using file_per_task, make sure we don't prematurely close the perf files
* add changelog fragment
(cherry picked from commit 867e357)
Co-authored-by: Matt Martz <matt@sivel.net>
* fix bugs for ce (#54750)
* Update ce.py
while to_text(out, errors='surrogate_then_replace').strip().endswith(']'):
display.vvvv('wrong context, sending exit to device', self._play_context.remote_addr)
conn.exec_command('return')
out = conn.get_prompt()
connetion has no send_command function and ce device has no 'exit' command to return user-view(a correct context),but 'return' .command.
* Add files via upload
Some bugs fix.
* Add files via upload
fix some bugs
* fix a bug for ce_command
Running a command with prompt via ce_command, It doesn't work.The reason is that the key word for network_cli recognition is answer not response.
* fix bugs
fix bugs for ce modules
* Update ce.py
* Delete ce_ftp.py
need modify
* Delete ce_lacp.py
* Add files via upload
* Delete ce_aaa_server.py
* Delete ce_aaa_server_host.py
* Compatible with Python 3
Compatible with Python 3 and fix bugs for ce
* Update ce_aaa_server.py
* Add files via upload
modify doc
* Add files via upload
Compatible with Python 3 and fix bugs
* Add files via upload
Compatible with Python 3 and fix bugs
* Add files via upload
Cancellation of change
* Update ce_netconf.py
It is a bug that response has no xml attribute:line 183
* Add files via upload
* Add files via upload
Compatible with Python 3 and fix bugs
* updatp ce_config.py
a bug for this module.
(cherry picked from commit 1017f15c38)
* IBM_Storage: fixed a bug which caused several of our modules to pass unwanted arguments and fail
(cherry picked from commit 13f5cf4e82)
* IBM_Storage: Added a changelog for 56357 bug
(cherry picked from commit 0de770e748)
* nxos_ospf_vrf:sanity: ignore no default-metric idempotence tests when I7 images
This is a sanity test cleanup to handle a known image bug with (N9K) I7 images.
The I7 image rejects 'no default-metric' configs, so we're skipping the idempotence
tests that involve this bug.
Tested on N9K images: 9.2(2), 7.0(3)I7, 7.0(3)I2
* simplify check for I7
(cherry picked from commit a568e018be)
* nxos_snmp_user: platform fixes for get_snmp_user
snmp user output behavior varies quite a bit for the different nxos platforms and required several workarounds:
- N5K/N6k
- These platforms do not support structured output for `show snmp user`.
- The current code lands in an `except` clause when the output is not structured; so I added a new `get_non_structured_snmp_user` method to scrape the state from the regular cli output if it's present.
- N9K-F
- The `group` data in the JSON output is different for this platform; it has a different key (just `group` instead of `TABLE_groups` or `group_names`) and it is not indexed
- For a single group the value is a string, for multiple groups it's a list
- sanity
- N5K/N6K/N9K-F platforms will reject `no snmp user <name> <role>` when it's the last role defined for the user.
- workaround is to use `nxos_user` to remove the user
- Changes validated on:
- `N3K, N3K-F, N35, N6K, N7K, N9K, N9K-F`
- `6.0(2)A8`
- `7.0(3)I2, 7.0(3)I4, 7.0(3)I5, 7.0(3)I6, 7.0(3)I7`
- `7.3(2)D1`
- `7.3(3)N1, 7.3(4)N1`
- `8.3(2)`
- `9.2(2), 9.2(3)`
* fix lint warning
(cherry picked from commit 8c56c116e5)
All vmware_guest_* module support for use_instance_uuid from Ansible 2.8,
somehow vmware_guest_disk missed from this change.
This fix adds support for use_instance_uuid in vmware_guest_disk.
Fixes: #56021
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 7e6be4e634)
* Add n6k support for nxos_vtp_domain
* Add n6k support for nxos_vtp_version
* Add n6k support for nxos_vtp_password
* Fix shippable error
(cherry picked from commit d55c0cf8dc)
Backport of #55678 to stable-2.8.
* XenServer: Minor changes and fixes in xenserver_guest
- xenserver_guest module: ignore wait_for_ip_address when
state=absent (fixes#55348). Module docs are updated to reflect this.
- xenserver_guest module: show proper error message when maximum number
of network interfaces is reached and multiple network interfaces are
added at once (fix for changes introduced in #54697).
- xenserver_guest module: fixed a bug in reconfigure() where VM would
be powered off even though check mode is used when reconfiguration
needs VM to be powered off.
* Added changelog fragment
(cherry picked from commit 2a39dc84b7)
* nxos_snmp_traps: fix 'group: all' for N35 platforms
- `group: all` attempts to enable traps for all features defined in the module's `feature_list`
- `N35` platforms do not support `snmp-server enable traps bfd`; so removing `bfd` from the `feature_list` for that platform
- Minor cleanup in `sanity.yaml` test file
* whitespace lint fix
(cherry picked from commit 0e0c2a7db7)
* nxos_vlan: vlan names containing regex ctl chars should be escaped (#55463)
The `nxos_vlan` module may raise with regex error `sre_constants.error: multiple repeat` in the non_structured codepath if the device has existing vlan names with certain regex control characters; e.g.
```
VLAN Name Status Ports
---- -------------------------------- --------- -------------------------------
1 default active Eth1/3
14 my-vlan-name-is-*** active
```
(cherry picked from commit de8ce08fd8)
* fix nxos_vlan mode idempotence bug (#55144)
* fix nxos_vlan mode idempotence bug
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
* Fix CI failure
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
(cherry picked from commit 57e0567310)
* nxos_vlan fix 2.8 backport
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
* `nxos_acl` may fail with `IndexError: list index out of range` while attempting to delete a non-existent ACL.
The failure occurs when the `acl` var is an empty list.
* nxos_acl: catch 501 'Structured output unsupported' when no ACLs present
With some older image versions, `show ip access-list | json` will raise a 501 error indicating `'Structured output unsupported'` when there are no access-lists configured. This change turns off the `check_rc` and then looks for the failure condition.
* Fix kwarg
* Fix lint issues
(cherry picked from commit 869fdcd7d4)
mem_reservation and memory_reservation has redundant implementation.
Combining them together.
Fixes: #54335
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 193f69064f)
* To fix the issue where nios_zone module was running second time for same object (#55595)
* fix for 55128 issue
Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>
* review comment fix
Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>
(cherry picked from commit 661f7be0fe)
* changelog for 2.8
Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>
* connection/docker: add privilege escalation support (#55816)
As described in #53385 (and #31759), the docker connection driver did
not support privilege escalation. This commit is a shameless
cut-and-paste of the privilege escalation support from the `local`
connection plugin into the `docker` plugin.
Closes: #53385
(cherry picked from commit 61e476b908)
* docker connection plugin: make privilege escalation code more similar to local.py (#56288)
* Make more similar to local.py
* Fix typo.
(cherry picked from commit 708bda06aa)
* sysctl will now return an error if the value is invalid
sysctl can fail to set a value even if it returns an exit status 0. More
details: https://bugzilla.redhat.com/show_bug.cgi?id=1264080. Because of
this in case of an invalid value or a read-only file system, sysctl
module would return OK, even though it didn't set anything. To be sure
that sysctl correctly applied the changes we also need to check the
output of stderr.
(cherry picked from commit 0432b7f252)
* Run sysctl with LANG=C
Because we are parsing sysctl stderr we need to make sure that errors
are persistent across different system language settings.
(cherry picked from commit a16128f778)
* Add changelog fragment for sysctl
(cherry picked from commit 3ad9d4d83c)
This has been broken for some time, but only noticed recently. Because
vyos_command isn't supported on ansible_connection=local, update our
testing to account for that.
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
(cherry picked from commit 59d20e004e)
Link to ansible-bender instead of the deprecated ansible-container.
Co-Authored-By: Felix Fontein <felix@fontein.de>
(cherry picked from commit 66bfa27685)
* Fix loading namespaced doc_fragments
The syntax for specifying a different fragment name was already
using '.' as a separator, so the code needed to be tweaked to
avoid choking on names like `testns.testcoll.fragname` and
`testns.testcoll.fragname.altvar`.
`get_plugin_class()` returns 'docfragment' for the fragment loader;
mangling `subdir` provides consistent alignment with the normal plugin
directory names and avoids needing special handling of plugin types
with 'module' in the name.
* Add changelog entry
(cherry picked from commit 2ef8b297ff)
* [doc] command module: mention all parameter types (#56396)
(cherry picked from commit 8968d41599)
* update azure_rm_autoscale document (#56388)
(cherry picked from commit 49ecfdbc10)
* [doc] expect module: mention all parameter types (#56394)
(cherry picked from commit 7f41cc40e6)
* update azure_rm_appgateway document (#56339)
(cherry picked from commit 84f5666aab)
* update azure_rm_appserviceplan related module documents (#56348)
(cherry picked from commit 22d7e7ea0b)
* Small typo fix in documentation (#56480): documentation was probably C&P'd from user, leaving a "useradd" mention where a "groupadd" should be.
(cherry picked from commit 6182f368e7)
* Update ovirt_vnic_profile.py (#56466): Update documentation to reflect module name
(cherry picked from commit db42cf5873)
* clean backport of PR 56355, clarify config cli usage
(not actually cherry-picked due to conflicts, but see PR mentioned)
* gcp_compute_target_proxy does not exist, update deprecated redirect (#56496)
(cherry picked from commit 7636f36a8a)
* Update default roles_path documentation (#56320)
(cherry picked from commit c1ebc8d9c2)
* docs: Update scopes value example (#56362): example in GCE guide needs "https://" prefix
(cherry picked from commit 85fa65e5f0)
* [doc] fix example: always trigger the handler (#56384): by default, debug task result isn't changed - add 'changed_when: yes' to trigger handler
(cherry picked from commit b3ab83bc70)
* Update of Ansible 2.8 roadmap (#56436): Remove **if needed** for RC2 & RC3, correct date for RC3
(cherry picked from commit d55823b013)
* add how to create HttpApi plugins for network modules (#54340): in a developer guide for networks
(cherry picked from commit cca365061c)
* [Doc-Release-2.8] fixed broken module links in 2.8 porting guide (#56494)
(cherry picked from commit 635931051b)
This reverts commit b9dc8056d7.
Revert the revert oracle change. It's looking like we aren't going to
have an rc4 and this is a code change. So this can't go in.
* Update gcp_container_cluster_facts.py (#55475) : 'state' is not a supported parameter in this module
(cherry picked from commit 8c7e38af62)
* Update win_dns_record.py (#55378): Update examples to show values are strings.
(cherry picked from commit 3fd27f0cac)
* sensu_subscription very minor docstring typo (#55675)
(cherry picked from commit 2cfaf6e80a)
* Update win_domain_group_membership.py (#55594): add notes regarding a computer object and fixing a typo
(cherry picked from commit 3f0900f504)
* hcloud_server: clarify further for usage of `ssh_keys` (#55713)
(cherry picked from commit 6e9379fe11)
* Fix template lookup description (#55557): describe that it returns template content with substituted variables.
(cherry picked from commit 9c038b210b)
* Update ec2_eip_facts.py (#53040): Add several additional examples showing how to filter on tag, how to filter on the EIP allocation id, and how to set a fact using the output.
(cherry picked from commit 1e2cbefac0)
* Update ali_instance_facts examples in documentation (#55760) (#55803)
(cherry picked from commit 357dafffa4)
* Update setup.py (#55871): adds a note on privileges needed on BSD systems to use dmidecode
(cherry picked from commit c181e567a1)
* Remove illegal basic provisioning example (#55892): The bare minimum example in the docs (i.e. only supplying name, state, and cluster) results in the error `state is present but all of the following are missing: task_definition, desired_count`.
(cherry picked from commit c195645575)
* clarify docs for rel src state hard (#55972)
(cherry picked from commit 0b002203b4)
* correct method docs (#55961)
(cherry picked from commit ea57377ddf)
* Update sample (#55654): Correct logConfiguration example on the ecs_taskdefinition module.
(cherry picked from commit 23ddc7738b)
* add missing exported state do doc string (#56109)
(cherry picked from commit ba9f0d53b2)
* package_facts: Trivial docs cleanup (#56015): use
the current YAML style and remove unnecessary quotes around `auto`.
Signed-off-by: Major Hayden <major@redhat.com>
(cherry picked from commit 93d24efe37)
* Update include_role description (#56001) to discuss tasks: use
(cherry picked from commit 8cb76408d3)
* Sync required flags from argument_spec to docs (#56121): arguments for certificate, private_key and password were marked as required in the ArgumentSpec, but not in the documentation.
(cherry picked from commit 6b474a1ecd)
* updated ec2.py to describe required parameters (#56197): for each option for `state`
(cherry picked from commit 5346a5cdac)
* Update os_image documentation (#49705) to show auth details
(cherry picked from commit f5326aa6cd)
* Update windows_setup.rst (#55535): Wrong protocol and port in command.
(cherry picked from commit 6ea3eca8ff)
* Clarify the two targets of vault encryption, with notes about advantages and drawbacks of each
Co-Authored-By: tacatac <taca@kadisius.eu>
(cherry picked from commit 79198cad7a)
* Improve consistency of loop documentation (#55674)
(cherry picked from commit a5cb47d697)
* Add Microsoft Document URL for WinRM Memory Hotfix (#55680)
Co-Authored-By: hiyokotaisa <thel.vadam2485@gmail.com>
(cherry picked from commit 7b86208fcd)
* Clarify the documentation for `async` and `poll`; describe the behavior when `poll` = 0 and when it does not.
Co-Authored-By: tacatac <taca@kadisius.eu>
(cherry picked from commit dbc64ae64c)
* Add security group info and example to AWS guide (#55783): expand documentation on how to use lookup plugin aws_service_ip_ranges with ec2_group module
(cherry picked from commit bb5059f2c7)
* correct description of modules vs plugins (#55784)
(cherry picked from commit 9d5b5d7ddd)
* Fix var naming (#55795): Make vars match tasks in Google Compute guide.
(cherry picked from commit 943f7334c5)
* Clarifies how Ansible processes multiple `failed_when` conditions (#55941): multiple failed_when conditions join with AND not OR to counter third-party pages online incorrectly stating that it uses `OR`. ([example](https://groups.google.com/d/msg/ansible-project/cIaQTmY3ZLE/c5w8rlmdHWIJ)).
(cherry picked from commit 5439eb8bd8)
* Docs: edits & expands module_utils & search path info in dev guide (#55931)
(cherry picked from commit 8542459b95)
* Add faq note about ssh ServerAliveInterval (#55568)
(cherry picked from commit 76dba7aa4f)
* docsite: correct path, list requirements for testing module docs, etc. (#52008)
* dev_guide: correct path, list requirements, etc.; module HTML docs are in '_build/html/module' subdir
(cherry picked from commit b14f477bee)
* Developer documentation update involving module invocation (#55747)
* Update docs for the 2.7 change to AnsiballZ which invokes modules with one
less Python interpreter
* Add a section on how module results are returned and on trust between modules, action plugins, and the executor.
* Update docs/docsite/rst/dev_guide/developing_program_flow_modules.rst
Co-Authored-By: abadger <a.badger@gmail.com>
(cherry picked from commit edafa71f42)
* add doc example of multiline failed_when with OR (#56007)
* add variety to multiple OR failed_when doc example
(cherry picked from commit 7d5ada7161)
* Note that by default the regex test is identical to match, but can do much more (#50205)
* Note that the regex test behaves like 'match', with default settings
(cherry picked from commit 86e98c5213)
* more info on how vaults work (#56183)
also add warning about what it covers.
(cherry picked from commit 8ff27c4e0c)
* Fix var naming in GCE guide
(cherry picked from commit dae5564e2b)
* dev_guide: Various small updates (#53273)
* Document the clarifications that I usually remark when doing reviews
* Update docs/docsite/rst/dev_guide/developing_modules_documenting.rst
Co-Authored-By: dagwieers <dag@wieers.com>
(cherry picked from commit eac7f1fb58)
* Lack of "--update" flag in older Ubuntu distros (#56283): when installing on older Ubuntu distributions be aware of the lack of ``-u`` or ``--update`` flag.
(cherry picked from commit dd0b0ae47b)
* should have gone into 52373 (#56306)
(cherry picked from commit 3c8d8b1509)
* Correct link to Thomas' GitHub account (#55587) from tstringer to trstringer
(cherry picked from commit 158452661a)
* Add changelog fragments for #44811 (#55427)
(cherry picked from commit 7e0603282d)
* Speed up the Sphinx documentation build (#55593)
* speeds up the docs build by changing the navigation collapse setting
(cherry picked from commit 47a440774f)
* Improve rendering of default lists (#56041)
(cherry picked from commit 53ed1bfc49)
* Fix net_get and net_put task run failure (#56145)
* net_get and net_put action plugin class need
to inherit from ActionBase class as the action
class implements the entire get and put logic
(cherry picked from commit 9271b4e368)
* backport changelog
Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>
Otherwise, we get the following error:
ERROR: ncclient 0.6.4 requires selectors2>=2.0.1, which is not installed.
when running ansible-test.
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
(cherry picked from commit 72bfdb38b4)
The documentation for the docker_container publish_ports options
erroneously stated that container ports must be "exposed" in order to
be "published".
(cherry picked from commit 5e74ecb4fd)
The current code was not properly checking for the active state when
checking any_errors_fatal, so if the error occurred in a sub-block
or included file it is not properly detected.
Fixes#55515
* Make module not get all nets every time it's executed with net_id
* Add changelog fragment
* Update changelogs/fragments/meraki_static_route_api_calls.yml
Co-Authored-By: kbreit <kevin.breit@kevinbreit.net>
(cherry picked from commit 7b7d6a1fef)
* prevents accidental templating on intra-action postprocessing of an untrusted module result
* makes the view of a module result within an action consistent with the way it would be stored for future use (eg facts, register)
(cherry picked from commit 03cac394cc)
Implement a new method for shadow file parsing so it can be subclassed.
(cherry picked from commit f27eccabbd)
Co-authored-by: Sam Doran <sdoran@redhat.com>
Ensure inventory plugin loading rel to play
fixes#51033
* clarify paths
* now adding dirs funciton in loader
* better warnings
* each cli should handle adding dirs depending on context
(cherry picked from commit 780ee45819)
* [stable-2.8] Move missing library abort to use rather than import for netconf (#55384)
(cherry picked from commit b442706)
Co-authored-by: Nathaniel Case <this.is@nathanielca.se>
* Add changelog
* azure_rm_subnet: remove documentation that says it supports tags (#55233)
(cherry picked from commit 32345641e7)
* azure_rm_subnet: fix CI error for deleting the azure_tags (#55276)
(cherry picked from commit 91e808eed2)
* Use module_utils.compat.ipaddress where possible.
* Simplify reverse pointer computation.
* Use dummy for unused variables.
* Remove from ignore list.
* Adjust fix.
* Fix text handling for Python 2.
* Add changelog.
(cherry picked from commit c8a15b9dbc)
* General test improvements.
* Adjust tests to older docker-py versions.
* docker_swarm_server_info: work around problems with older docker-py versions
* Bump minimal docker-py version for options network_filters and disk_usage.
* More general test improvements.
* Correct usage of docker_image.
* Put files into output directory.
* Speed up test.
* Remove old check.
(cherry picked from commit 12d26eceb1)
Docs: adds example of creating a container using fingerprints, swapping out 'alias' for 'fingerprint' and adding alternate values for 'server' and 'protocol'.
(cherry picked from commit 405c7b7ab3)
Added inline markup to important references. Fixed minor spelling error.
Signed-off-by: James McClune <jmcclune@mcclunetechnologies.net>
(cherry picked from commit da1f86a40f)
* Update docs/docsite/rst/dev_guide/testing_units_modules.rst
`set_unit_args()` should be imported and used in the unit test documentation.
Co-Authored-By: kbreit <kevin.breit@kevinbreit.net>
(cherry picked from commit 521e62aa38)
* Update template.py with an example using selinux with a suggestion of how to get the proper file context (cheating!)
(cherry picked from commit f8834c5339)
The k8s plugin expects the "connections" field to be a list - current docs examples trigger:
[WARNING]: * Failed to parse {...}/inventory.yml with k8s plugin: Expecting connections to be a list.
Updated examples for `host` and `namespaces` to reflect this.
(cherry picked from commit e90df4b566)
* Fewer connection: local lines in module examples and scenario guides
The line 'connection: local' is not required. See
./docs/docsite/rst/inventory/implicit_localhost.rst
(cherry picked from commit 04220478da)
* migration docs for gce, with example playbook
* Update docs/docsite/rst/scenario_guides/guide_gce.rst
Co-Authored-By: rambleraptor <alexstephen@google.com>
(cherry picked from commit 91a664a93e)
* vsphere_guest: corrected fix#19716 misbehaviour
* creating machines without vm_extra_config is possible
* power state operation on absent machines will fail
* changelog fragment for PR #55285 (vsphere_guest bugfix)
* psrp - Fix raw and script tests for connection plugin
* Fix error propagation with raw in psrp
* uncomment test
(cherry picked from commit fdf9df89f5)
* postgresql_idx: improved doc, tests, remove useless lines from code (#55131)
* postgresql_idx: improve doc
* postgresql_idx: improve doc, removed unuseless rows from code
* postgresql_idx: misc doc fix
* postgresql_idx: moved common params where they were
* postgresql_idx: moved common params where they were 2
(cherry picked from commit d790285e80)
* postgresql_idx: added changelog about removing useless lines from code
* Version in deprecate calls should be a string. Fixes#55312. Fixes#55313. Fixes#55314. Fixes#55315. Fixes#55316. Fixes#55317.
* Add changelog fragment
(cherry picked from commit ca83a5c)
Co-authored-by: Matt Martz <matt@sivel.net>
* Add test for generating a CSR with everything, and testing idempotency.
* Proper SAN normalization before comparison.
* Fix check in cryptography backend.
* Convert SANs to text. Update comments.
* Add changelog.
(cherry picked from commit cb5c57bcd5)
vmware_portgroup accepts list of hosts, get_all_host_objs API modified
to accept list of hosts.
(cherry picked from commit 6ff4547489)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
* Warn when log_options values are not strings.
* Add changelog.
* Improve message.
* Improve formatting and formulation of other messages.
* Add test for warning.
* Trying double escaping.
(cherry picked from commit d64b17731d)
* Fix ansible-test inventory and vars path handling.
* Improve explanation for missing commit.
(cherry picked from commit a4d0c24bbf)
Co-authored-by: Matt Clay <matt@mystile.com>
- kubectl - connection plugin now redact kubectl_token and kubectl_password in console log (https://github.com/ansible-collections/community.kubernetes/issues/65) (CVE-2020-1753).
- aws_secret - flag the ``secret`` parameter as containing sensitive data which shouldn't be logged (https://github.com/ansible-collections/community.aws/pull/471) (CVE-2021-3447).
- "docker_swarm_service - Add option ``restart_config`` as a grouper for restart options."
- "docker_swarm_service - Add option ``update_config`` as a grouper for update options."
deprecated_features:
- "docker_swarm_service - Deprecate ``constraints`` in favour of ``placement``."
- "docker_swarm_service - Deprecate ``log_driver`` and ``log_driver_options`` in favour of ``logging``."
- "docker_swarm_service - Deprecate ``limit_cpu`` and ``limit_memory`` in favour of ``limits``."
- "docker_swarm_service - Deprecate ``reserve_cpu`` and ``reserve_memory`` in favour of ``reservations``."
- "docker_swarm_service - Deprecate ``restart_policy``, ``restart_policy_attempts``, ``restart_policy_delay`` and ``restart_policy_window`` in favour of ``restart_config``."
- "docker_swarm_service - Deprecate ``update_delay``, ``update_parallelism``, ``update_failure_action``, ``update_monitor``, ``update_max_failure_ratio`` and ``update_order`` in favour of ``update_config``."
- "docker_swarm_service - Deprecate ``constraints`` in favor of ``placement``."
- "docker_swarm_service - Deprecate ``log_driver`` and ``log_driver_options`` in favor of ``logging``."
- "docker_swarm_service - Deprecate ``limit_cpu`` and ``limit_memory`` in favor of ``limits``."
- "docker_swarm_service - Deprecate ``reserve_cpu`` and ``reserve_memory`` in favor of ``reservations``."
- "docker_swarm_service - Deprecate ``restart_policy``, ``restart_policy_attempts``, ``restart_policy_delay`` and ``restart_policy_window`` in favor of ``restart_config``."
- "docker_swarm_service - Deprecate ``update_delay``, ``update_parallelism``, ``update_failure_action``, ``update_monitor``, ``update_max_failure_ratio`` and ``update_order`` in favor of ``update_config``."
- xenserver_guest - wait_for_ip_address is now ignored when state=absent (https://github.com/ansible/ansible/issues/55348).
bugfixes:
- xenserver_guest - proper error message is shown when maximum number of network interfaces is reached and multiple network interfaces are added at once.
- xenserver_guest - fixed an issue where VM whould be powered off even though check mode is used if reconfiguration requires VM to be powered off.
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.