Commit Graph

2004 Commits (6e8adc05263df4bad6d45eeeb85646438dde333b)

Author SHA1 Message Date
Brian Coca 6e8adc0526
reset logging to INFO (#70878) (#70882)
* reset logging to INFO (#70878)

- due to CVE-2019-14846
 - also added comments and test to avoid 'oportunistic' reversion

(cherry picked from commit 1223ce656a)

* Update keep_log_at_info.yml

Co-authored-by: Rick Elrod <rick@elrod.me>
5 years ago
Sloane Hertel 44cca5426f
[2.9] template connection variables accessed directly before using (#70657) (#70689)
* template connection variables accessed directly before using (#70657)

* template variables accessed directly when using them instead of FieldAttributes

(cherry picked from commit 8c213c9334)

* changelog
5 years ago
Nathaniel Case f8e4c103e9
Fix UnboundLocalError on net_put (#71086) 5 years ago
David Marthy e859a2b4e5
ipa module utils can not handle HA FreeIPA with Python3 #71110 (#71112)
* BUGFIX 2.9 ipa module utils can not handle HA FreeIPA with Python3

* Resolve comments on other PR
5 years ago
Abhijeet Kasurde aa58d8c9ed
[2.9] hashi_vault: Handle equal sign in secret name value (#70169)
Fixes: ansible/ansible#55658

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
5 years ago
Martin Krizek bdcde11f9f
2.9: Detect failure in always block after rescue (#70094) (#70203)
* Detect failure in always block after rescue (#70094)

* Detect failure in always block after rescue

Fixes #70000

ci_complete

* Add more tests

(cherry picked from commit 0ed5b77377)

* add changelog

Co-authored-by: Matt Davis <mrd@redhat.com>
5 years ago
Rick Elrod 9ba99ead4f
Update integration tests to support rpmfluff-0.6 (#71155) (#71160)
Co-authored-by: Matt Martz <matt@sivel.net>
5 years ago
Martin Nečas 90334b1ddd
Backport: ovirt_vm fix cd attachment (#70932)
* Backport: ovirt_vm fix cd attachment

* add changelog

* fix formats

* Update changelogs/fragments/70932-ovirt_vm-fix-cd_iso-search.yml

Co-authored-by: Rick Elrod <rick@elrod.me>
5 years ago
Andrew Klychkov c632d74487
mysql_user: fix overriding user passowrd to the same (#70833) 5 years ago
Brian Coca 1b41129402
Allow hostvars delegation (#70331) (#70811)
* Allow hostvars delegation (#70331)

* ensure hostvars are available on delegation
* also inventory_hostname must point to current host and not delegated one
* fix get_connection since it was still mixing original host vars and delegated ones
* also return connection vars for delegation and non delegation alike
* add test to ensure we have expected usage when directly assigning for non delegated host

(cherry picked from commit 84adaba6f5)

* avoid returning more data

* remove unused return vars
5 years ago
Rick Elrod 66faa29b79
Add CVE reference to changelog for PR 70762 (#71151) (#71153)
Co-authored-by: David Shrewsbury <Shrews@users.noreply.github.com>
5 years ago
Sam Doran 523d0f5665
[stable-2.9] cron - Allow non-ascii (UTF-8) chars in cron file paths and jobs (#70426) (#71134)
* Encode/Decode files in UTF-8
* Use helper function in ansible
* Add an integration test
* Use emoji in test data.
* add changelog
* Also support non-ascii chars in filepath and add tests about this.
* Also use non-ascii chars in replaced text and ensure not to break cron syntax.
* rename self.existing to self.n_existing
* rename crontab.existing to crontab.n_existing.
(cherry picked from commit 5ce47646ad)

Co-authored-by: psi / Ryo Hirafuji <ryo.hirafuji@link-u.co.jp>

* try removing name references for state=absent

Signed-off-by: Rick Elrod <rick@elrod.me>

Co-authored-by: psi / Ryo Hirafuji <ryo.hirafuji@link-u.co.jp>
Co-authored-by: Rick Elrod <rick@elrod.me>
5 years ago
Sam Doran 0199b1cf05
[stable-2.9] Change default file permissions so they are not world readable (#70221) (#70825)
* [stable-2.9] 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 jboss 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
5 years ago
Sloane Hertel 6cae9a4b16
copy - redact 'content' from invocation in check mode (#71033) (#71068)
* sanitize copy module invocation secrets in check mode

(cherry picked from commit 991714b9d1)
5 years ago
Abhijeet Kasurde 59c9a1833e
[2.9] api: time.clock compatible code (#70678)
time.clock is removed in Python 3.8. Add time.clock
compatible code.

Fixes: #70649

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 055871cbb8)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
5 years ago
David Shrewsbury c3ac896c16
Update 70762 changelog to use security_fixes (#71124) (#71128)
(cherry picked from commit 6bf1dd428b)
5 years ago
Baptiste Mille-Mathias 84afa8e90c
Fix missing quoting for remote_tmp in second mkdir of shell module. Issue #69577 (#69578) (#70758)
* Fix missing quoting for remote_tmp in second mkdir of shell module. Issue #69577

* adding changelog

* fixing typo in changelog entry

* adding test case

Adding test case written by bmillemayhias.

* using $HOME instead of ~

* fixing commit measage

* Update 69578-shell-remote_tmp-quoting.yaml

Co-authored-by: Brian Kohles <me@briankohles.com>
(cherry picked from commit 77d0effcc5)

Co-authored-by: Brian Kohles <briankohles@users.noreply.github.com>
5 years ago
Abhijeet Kasurde 76f591e64c
[2.9] debconf: add a note about no_log usage (#70754)
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>
5 years ago
Sam Doran 46a0e849ed
[stable-2.9] Handle Slackware OS version strings containing a plus (“+”) (#68142) (#70718)
A couple of years ago Slackware -current began using a plus (“+”) at the end of the distribution version string to indicate a future version work-in-progress.

Rearrange distribution_files unit tests to easily support more tests
  - add conftest with common fixtures
  - use parametrize for testing multiple scenarios

* Add changelog
* Add unit tests for Slackware distribution parsing
* Use correct fixtures for Slackware
Data comes from /etc/slackware-version

Co-authored-by: Sam Doran <sdoran@redhat.com>
Co-authored-by: <Eduard Rozenberg <eduardr@pobox.com>>.
(cherry picked from commit 566c5e6ce1)

Co-authored-by: Eduard Rozenberg <2648417+edrozenberg@users.noreply.github.com>

Co-authored-by: Eduard Rozenberg <2648417+edrozenberg@users.noreply.github.com>
5 years ago
Baptiste Mille-Mathias e55565e951
Create home and parent directories only when requested (#70789)
The home user and the parents directories should only be created when
create_home == True

(cherry picked from commit f3dd8d3052)
5 years ago
Abhijeet Kasurde 7833053223
[2.9] basic: use PollSelector implementation (#70801)
Some platform such as ESXi does not implement EpollSelector,
which is selected by DefaultSelector. Use PollSelector which is
based upon 'Poll' implementation. This works perfectly with
a platform like VMware ESXi.

Fixes: #70238

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 8cccede0d4)
5 years ago
Nathaniel Case f7aff6b888
[stable-2.9] Document existing ansi_re sequences and add `ESC[m` (#70683) (#70808)
* Document existing ansi_re sequences and add `ESC[m`

* Add changelog
(cherry picked from commit 06a4fc2)

Co-authored-by: Nathaniel Case <ncase@redhat.com>
5 years ago
Abhijeet Kasurde 78592ffd68
profile_tasks: typecast result before slicing it (#70835)
Backport of https://github.com/ansible-collections/ansible.posix/pull/15

Fixes: #59059

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
5 years ago
David Shrewsbury 76815d3afc
Sanitize URI module keys with no_log values (#70762) (#70821)
* Add sanitize_keys() to module_utils.

* More robust tests

* Revert 69653 change

* Allow list or dict

* fix pep8

* Sanitize lists within dict values

* words

* First pass at uri module

* Fix insane sanity tests

* fix integration tests

* Add changelog

* Remove unit test introduced in 69653

* Add ignore_keys param

* Sanitize all-the-things

* Ignore '_ansible*' keys

* cleanup

* Use module.no_log_values

* Avoid deep recursion issues by using deferred removal structure.

* Nit cleanups

* Add doc blurb

* spelling

* ci_complete

(cherry picked from commit bf98f031f3)
5 years ago
Sam Doran 2a38a6cca6
[stable-2.9] reboot - fix Void Linux (#70704) (#70917)
Add entry for appropriate commands for Void Linux
(cherry picked from commit 4cc4cebc97)

Co-authored-by: fosslinux <fosslinux@aussies.space>
5 years ago
Bill Dodd 8870ea5b8c
fix error decoding Redfish response payloads on Python 3.5 (#70924) 5 years ago
Sam Doran 435d0feae1
[stable-2.9] lineinfile - fix broken exception handling (#70846) (#70945)
* prevent (ExceptionType) is not subscriptable errors
* tweak error message and use text conversion
* add to_text import
(cherry picked from commit 45c2eb6c0a)

Co-authored-by: nitzmahone <nitzmahone@users.noreply.github.com>

Co-authored-by: Matt Davis <nitzmahone@users.noreply.github.com>
5 years ago
Jordan Borean 74d5391f73
ansible-galaxy - fix fallback for AH searches (#70957) (#70983)
(cherry picked from commit b1cb2553af)
5 years ago
Matt Clay c37acc7740
[stable-2.9] Fix ansible-test relative import analysis. (#70994)
(cherry picked from commit 2e0097ada3)

Co-authored-by: Matt Clay <matt@mystile.com>
5 years ago
Sam Doran 59a409193d
[stable-2.9] facts - fix incorrect time for some date_time_facts (#70665) (#70997)
* [stable-2.9] facts - fix incorrect time for some date_time_facts (#70665)

The iso8601_micro and iso8601 facts incorrectly called now.utcnow(), resulting
in a new timestamp at the time it was called, not a conversion of the previously
stored timestamp.

Correct this by capturing the UTC timestamp once then calculating the local
time using the UTC offset of the current system.

* Use time.time() for getting the current time
* Convert from that stored epoch timestamp to local and UTC times
* Used existing timestamp for epoch time
* Add unit tests that validate the formate of the return value rather than an exact value since mocking time and timezone is non-trivial
(cherry picked from commit c4f442ed5a)

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

* Remove tests for tz_dst since that fact only exists in newer versions
5 years ago
Nilashish Chakraborty 87364a3286
nxos_user: Do not fail when a custom role is used (#71054)
(https://github.com/ansible-collections/cisco.nxos/pull/130)

Reviewed-by: https://github.com/apps/ansible-zuul
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
5 years ago
Sam Doran 0399960e34
[stable-2.9] unarchive - Check 'fut_gid' against 'run_gid' in addition to supplemental groups (#65666) (#71002)
* [stable-2.9] unarchive - Check 'fut_gid' against 'run_gid' in addition to supplemental groups (#65666)

Add integration tests for unarchiving as unprivileged user
Break tasks into separate files for easier reading and maintenance

Create a user by specifying a default group of 'staff' for macOS.

The user module does not actually remove the user directory on macOS,
so explicitly remove it.

Put the removal tasks in an always block to ensure they always run

Co-authored-by: Philip Douglass <philip.douglass@amadeus.com>
Co-authored-by: Sam Doran <sdoran@redhat.com>.
(cherry picked from commit ac5f3f8bef)

Co-authored-by: Philip Douglass <philip@philipdouglass.com>

* [stable-2.9] Fix unstable unarchive test (#71004)

* Add mode to copy tasks
* Fix unreliable test by ignoring errors

(cherry picked from commit f99f96ceb6)

Co-authored-by: Philip Douglass <philip@philipdouglass.com>
5 years ago
Martin Krizek 4f732c9ce9
Emit proper error for `x in y` when y is undefined (#70990) (#71012)
Fixes #70984

(cherry picked from commit bf7276a4e8)
5 years ago
Sam Doran 0ecb2abf43
[stable-2.9] linux facts - return proper broadcast address (#64528) (#71065)
* linux facts - return proper broadcast address

Check that the value being returned is actually a broadcast address

* Add tests

* Cleanup tests
(cherry picked from commit e6bf202738)

Co-authored-by: Sam Doran <sdoran@redhat.com>
5 years ago
Martin Krizek f097589fb2
2.9: YUM: Ensure we have enough values to split (#56802) (#71104)
* Ensure we have enough values to split (#56802)

Avoid raising an exception if pkgstr does not complains with expected
value.

(cherry picked from commit 433c98eae0)

* Add changelog

Co-authored-by: Adrián López <adrianlzt+github@gmail.com>
5 years ago
Alicia Cozine cea92ad2cd
use security_fix category in changelogs (#71071)
* use security_fix category in changelogs

(cherry picked from commit 3d5217b6d5)

* these fragments do not say CVE but are security fixes

(cherry picked from commit 8d0c1ff51d)

Co-authored-by: Alicia Cozine <acozine@users.noreply.github.com>
6 years ago
Matt Clay e5ec3f8578 [stable-2.9] Cap pytest version to avoid relative import issue.
(cherry picked from commit 3a8ac62596)

Co-authored-by: Matt Clay <matt@mystile.com>
6 years ago
Rick Elrod 7f7d01c0ce Remove erroneous changelog entry from .change.yaml too
Signed-off-by: Rick Elrod <rick@elrod.me>
6 years ago
Rick Elrod 4941cc861d Remove erroneous changelog entry
Signed-off-by: Rick Elrod <rick@elrod.me>
6 years ago
Rick Elrod 34d1fac39b New release v2.9.11 6 years ago
Jordan Borean a1e6884f96
win async - use full path for powershell (#70703) (#70713)
(cherry picked from commit 154efd97f2)
6 years ago
Felix Fontein 6c56c5c2ab
docker_container: make sure to_text() and to_native() are used instead of str() (#642) (#70646)
* Make sure to_text() and to_native() are used instead of str().

* Add changelog.

* Quoting should stay.

Backport of 8b92e0454d
6 years ago
Matt Martz f556b6cdd8
[stable-2.9] Allow single vault encrypted values to be used directly as module parameters. Fixes #68275 (#70607) (#70642)
* rebase conflicts

* [stable-2.9] Allow single vault encrypted values to be used directly as module parameters. Fixes #68275 (#70607).
(cherry picked from commit a77dbf0866)

Co-authored-by: Matt Martz <matt@sivel.net>
6 years ago
Abhijeet Kasurde 4f978af4ca
[2.9] pipe: update docs for Popen with shell=True usage (#70603)
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)
6 years ago
Abhijeet Kasurde 879b9fb2ab
[2.9] selective callback: mark task failed correctly (#70581)
Added additional condition to detect failed task in
selective callback plugin when ran with loop or with_items.

Fixes: ansible/ansible#63767

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
6 years ago
Nilashish Chakraborty d1b71e56a4
enabled check mode on nxos bgp modules (#57360) (#70578)
* enabled check mode on nxos bgp modules

* fixed indentation

* spaces instead of tabs

(cherry picked from commit 79ab8cb48d)

Co-authored-by: Jacob Snapp <7643439+jacobsnapp@users.noreply.github.com>
6 years ago
Brian Coca 00eb2edc09
Make filter type errors 'loop friendly' (#70417) (#70575)
- ensure we preserve the typeerror part of the exception so loop defereed error handling
 can postpone those caused by undefined variables until the when check is done.
 - fix tests to comply with the 'new normal'

 - human_to_bytes and others can issue TypeError not only on 'non string'
 but also bad string that is not convertable.

Co-authored-by: Sloane Hertel <shertel@redhat.com>

Co-authored-by: Sloane Hertel <shertel@redhat.com>
(cherry picked from commit cf89ca8a03)
6 years ago
Brian Coca 23f11081eb
try to capture better winrm/put_file error (#70508) (#70571)
* try to capture better winrm/put_file error

fixes #70361

* Update lib/ansible/plugins/connection/winrm.py

Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com>
Co-authored-by: Matt Davis <nitzmahone@users.noreply.github.com>
(cherry picked from commit 8789d7968d)
6 years ago
Mykola Grygoriev a96288c5b4
Fix decrypt argument in assemble module (#70465) (#70559)
* Do not pass decrypt parameter to assemble module

* Add integration tests where decrypt=True

* Add changelog #70465

(cherry picked from commit 71c378e139)
6 years ago
David Shrewsbury a048dcba68
[2.9] Make sure ansible_become treated as a boolean (#70484) (#70527)
* Make sure ansible_become treated as a boolean (#70484)

* Make sure ansible_become treated as a boolean

(cherry picked from commit 8aca464b8b)

* Update test/integration/targets/inventory_ini/aliases

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

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