* Do not remove non-ASCII Unicode from multi-line string output.
* Added basic tests.
* Add Unicode test.
* Simplify tests, avoid later Jinja features.
* Refactor.
* Make use diy tests use callback test framework as well.
* Remove color codes.
* Work around stable-2.9 bug.
* Simplify again.
* Fix 2.9/2.10 cloud
* Fix splunk callback tests.
* ansible_virtualization_type on AZP can be one of container/containerd instead of docker for dockerized tests.
* Disable nomad tests.
* Work around AZP bugs.
* Bugfix: Fix parsing array values in osx_defaults
Unquote values and unescape double quotes when reading array values from defaults.
* Fix fragments: fix_parsing_array_values_in_osx_defaults
Co-authored-by: Felix Fontein <felix@fontein.de>
* add test code for Bugfix: Fix parsing array values from osx_defaults
* handle spaces after the comma
Co-authored-by: Felix Fontein <felix@fontein.de>
* new module: yum_versionlock
* Removed redundant logic
* Added check_mode support
* Updated examples
* Updated documentation
Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
Co-authored-by: Erik-jan Riemers <riemers@binkey.nl>
* Update plugins/modules/packaging/os/yum_versionlock.py
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Fix version_added
* Add module symlink
* Fix symlink
* Improve documentation formatting by Anderssoon007
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Improve documentation formatting by Anderssoon007
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Improve documentation
* Add notes section
* check_mode is supported
* Initial integration test
* Change pkg to name
* Do the tests only when there is something to update
* Ignore CentOS 6
* Fix
* Do not update obsolete packages
* yum -q versionlock list does not show anything in CentOS 8
* Various suggestions by Andersson007
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Apply suggestions from felixfontein review
Co-authored-by: Felix Fontein <felix@fontein.de>
* returned always
* Apply felixfontein suggestion
Co-authored-by: Felix Fontein <felix@fontein.de>
* Fix RETUNRED values returned
* Change default from present to locked
* Remove locked, unlocked states
* change locked/unlocked to present/absent in integration tests
Co-authored-by: Felix Fontein <felix@fontein.de>
* Fix module short_description formatting
* Add myself as co-author
Co-authored-by: Erik-jan Riemers <riemers@binkey.nl>
Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Bump version to 2.0.0.
* Remove deprecated 2.0.0 features.
* Test for failure.
* Fix cache plugin unit tests.
* Accept direct import only for Ansible 2.9.
* a new module pagerduty_user
* fixed issues related to sanity
* fixed issues related to sanity
* modified the module
* shippable
* typo
* shippable
* removed e
* shippable
* shippable
* shippable
* updated test files
* Update plugins/modules/monitoring/pagerduty_user.py
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* proxmox: create a common base
Add a doc_fragment to share the documentation regarding authentication
parameters (api_host, api_user, api_password, api_token_id,
api_token_secret as well as the lone validate_certs).
Add a module_utils to hold common code such as the argument spec (again
related to authentication paramters), a helper function to convert from
Proxmox boolean representation to python and the base class
ProxmoxAnsible.
For now it only handles the connection to Proxmox VE API but more can be
added in the future.
To check if everything is well in place add three new modules:
proxmox_{domain,group,user}_info.
And finaly tests these new modules.
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add tests/integration/targets/proxmox/aliases
Co-authored-by: Felix Fontein <felix@fontein.de>
As per the plugin documentation and the Hashicorp Vault documentation (https://www.vaultproject.io/docs/auth/approle#secretid)
secret_id is not mandatory.
Moreover, using this lookup plugin without a secret_id used to work in
Ansible 2.9.
Co-authored-by: Jonathan Piron <jonathanpiron@gmail.com>
* Add support for Hashicorp Vault JWT auth
* Add support for HashiCorp Vault JWT auth (continued)
Co-authored-by: Brian Scholer <1260690+briantist@users.noreply.github.com>
Co-authored-by: Mike Brancato <mike@mikebrancato.com>
Co-authored-by: Brian Scholer <1260690+briantist@users.noreply.github.com>
* added description parameter to create request
* added changelog fragment
* Update changelogs/fragments/1196-use_description-in-gitlab-group-creation.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* added integration test for description in gitlab_group
* per request in the PR, creating separate task for the description issue in the integration test
* replaced deprecated param names with new names
* description should be optional to keep backward compatibility
* Update plugins/modules/source_control/gitlab/gitlab_group.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Disable docker tests.
ci_complete
* Get rid of shippable groups 4 and 5. Redistribute the few remaining entries of group 4 to groups 1 to 3.
ci_complete
* Try group 1.
* add support for filesystem removal (fix#355)
- Add 'state' option, defaults to 'present'.
- When state=absent, ignore other options (even 'dev' if the device
doesn't exist)
* test filesystem state=absent (+ check_mode + idempotency)
* fix doc-required-mismatch
* add changelog fragment
* fix blkid return code
* ext4dev may be deprecated
* base checks on UUID instead
* Update changelogs/fragments/1149-filesystem-fix-355-state-absent.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/system/filesystem.py (version_added)
Co-authored-by: Felix Fontein <felix@fontein.de>
* use array for new run_command() calls; do not wipefs if no fs found
* use dd as a fallback
* do not use bare 'except' (pep8)
* force string type
* use dd anyway (wipefs not supported everywhere, possibly buggy with vfat, etc.)
* do not truncate regular files; update changelog fragment
* doc: update state description and an example; notice check_mode support
* do not wipe mounted fs, fail instead
* back to wipefs implementation
* update test's main conditions
* update changelog fragment
* explicit types
* fail state=absent on freebsd
* remove doc-missing-type exceptions (2.9, 2.10, 2.11)
Co-authored-by: Felix Fontein <felix@fontein.de>
* refactor and test
* require version >= 5.21.0
Prior to this version the status output was different
* python version compatability
* use exception classes from utils
* modify monit to use 'status' output instead of 'summary' output
The summary output is a fixed width table which truncates the
contents and prevents us from parsing the actual status of the
program.
* add integration tests + fixes
* remove unused handlers in monit integration test
* fix lint
* add '__metaclass__ = type' to integration python files
* raise AttributeError
* simplify status
* lint: add type to parameter docs
* remove lint ignore
* move monit process config into main file
* specify path to monit PID file
* set config location based on os_family
* create required directories
* update aliases to set group and skips
* add changelog
* add author
* add types to docs
* add EPEL repo
* custom vars for centos-6
* uninstall EPEL
* support older versions
* wait for status to change before exiting
* use 'validate' to force status updates
* handle 'execution failed'
* better status output for errors
* add more context to failure + standardize
* don't check rc for validate
* legacy string format support
* add integration test for 'reloaded' and 'present'
* don't wait after reload
* lint
* Revert "uninstall EPEL"
This reverts commit 4d548718d0.
* make 'present' more robust
* Apply suggestions from code review
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* add license header
* drop daemon.py and use python-daemon instead
* skip python2.6 which is not supported by python-daemon
* refactor test tasks for reuse
* cleanup files after test
* lint
* start process before enabling monit
This shouldn't be necessary but I'm adding it in the hopes
it will make tests more robust.
* retry task
* attempt to rescue the task on failure
* fix indentation
* ignore check if rescue ran
* restart monit instead of reload
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* docker_login: fix internal config file storage to handle credentials for more than one registry
* Improve setup for docker registry.
* Add second registry frontend. Add tests for #1118.
* Fix cleanup.
* Workaround increasing per_page to max
* Update plugins/modules/source_control/gitlab/gitlab_group_variable.py
* Create 968-gitlab_variables-pagination-increase.yml
* Update changelogs/fragments/968-gitlab_variables-pagination-increase.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update changelogs/fragments/968-gitlab_variables-pagination-increase.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Proper support of pagination
* Fix E303 too many blank lines
* Add test for pagination
* Fix last vars removal test
* Apply suggestions from code review
Check misalignement fixed
Co-authored-by: Felix Fontein <felix@fontein.de>
* Run tests with macOS 10.15.
* Restrict to macOS CI runs for now until they pass.
* Skip tests on macOS that are skipped on OSX.
* Disable consul test for macOS.
* Disable chroot connection tests for macOS.
* Add setup_gnutar role from https://github.com/ansible/ansible/pull/71841.
* Use setup_gnutar for yarn and npm tests.
* Revert "Restrict to macOS CI runs for now until they pass."
This reverts commit d945d0399f.
* hashi_vault lookup tests seem to be always unstable, disabling for now.
* Use homebrew module instead of command.
* Fix xml reports changed when node is not deleted
* Added changelog fragment
* Added tests for xml no change remove
* Added PR to changeling fragment
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* pkgutil: add update all, check-mode, squashing and examples
Taken from https://github.com/ansible/ansible/pull/51651 by dagwieers, which was taken from https://github.com/ansible/ansible/pull/27866 by scathatheworm. Let’s have one last attempt to get this merged.
> ##### SUMMARY
>
> Original PR #27866 from scathatheworm
>
> When working with Solaris pkgutil CSW packages, I came across this module being very basic in functionality, in particular, that I could not use it to update all CSW packages.
>
> When going into details into the code I also found it did not incorporate a possibility of doing dry-run from the underlying utility, or supported to specify multiple packages for operations.
>
> This module probably sees very little use, but it seemed like nice functionality to add and make it behave a little more like other package modules.
> ##### ISSUE TYPE
>
> * Feature Pull Request
>
>
> ##### COMPONENT NAME
>
> pkgutil module
> ##### ANSIBLE VERSION
>
> ```
> ansible 2.3.1.0
> config file = /etc/ansible/ansible.cfg
> configured module search path = Default w/o overrides
> python version = 2.7.5 (default, Aug 2 2016, 04:20:16) [GCC 4.8.5 20150623 (Red Hat 4.8.5-4)]
> ```
>
> ##### ADDITIONAL INFORMATION
>
> * Added ability to upgrade all packages:
>
>
> ```yaml
> - pkgutil:
> name: '*'
> state: latest
> ```
>
> * Added ability to modify state of a list of packages:
>
>
> ```yaml
> - pkgutil:
> name:
> - CSWtop
> - CSWwget
> - CSWlsof
> state: present
> ```
>
> * Added ability to have underlying tool perform a dry-run when using check mode, pkgutil -n
>
> * Added ability to configure force option to force packages to state determined by repository (downgrade for example)
>
>
> ```yaml
> - pkgutil:
> name: CSWtop
> state: latest
> force: yes
> ```
>
> * Added more examples and documentation to show the new functionality
* Add changelog fragment.
* Observe changelog style guide
https://docs.ansible.com/ansible/devel/community/development_process.html#changelogs
Co-authored-by: Felix Fontein <felix@fontein.de>
* Since module split, version_added no-longer refers to core Ansbile
Co-authored-by: Felix Fontein <felix@fontein.de>
* Tweak documentation
* Apply the new `elements` feature for specifying list types
Co-authored-by: Felix Fontein <felix@fontein.de>
* Set version_added
Co-authored-by: Felix Fontein <felix@fontein.de>
* Document `pkg` alias for `name`
* Be explicit about the purpose of states `installed` and `removed`.
* Force the user to specify their desired state.
* Review documentation for pkgutil module.
* Fully qualify svr4pkg module name
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>