* Big revamp in xfconf.py
- added plugin/module_utils/module_helper.py
- scaffold class for writing modules, beyond standard AnsibleModule
- automatic capture of exceptions
- easier dependency testing
- StateMixin to easily handle different behaviours for 'state' param
- CmdMixin to easily run external commands
- adapted test_xfconf.py
- the args for run_command are now lists instead of a string
- value and previous_value were not being tested before (because xfconf wasn't filling results - see below)
- added more tests: setting value to previous_value, getting non-existent property
- rewritten xfconf module, keeping the same results
- original module posted results as ansible_facts, this version still does it for compatibility, but also adds to the module result
* Added suggestions from the PR
* Added russoz as maintainer for the module_utils/module_helper.py file
* Formatting using printf-style requires special treatment
Strings not containing substitution tokens must work as well.
* Tidied up variables in module definition
* Tests with ArgFormat and DependencyCtxMgr
* pytest parameters must be in the same order, it seems
* improved testing for the DependencyCtxMgr
* fixed test for older pythons
* Moved changed property to improve readability
* Added testcase for state: absent and adjusted xfconf after it
* Fixed param name environ_update in run_command()
* added changelog fragment
* fixed tests after run_command param change
* [pkgng] introduce IGNORE_OSVERSION to pkgng
* [pkgng] add small description about IGNORE_OSVERSION
- source: https://www.freebsd.org/cgi/man.cgi?query=pkg.conf&sektion=5
* [pkgng] initialize default value of 'ignoreosver' as False
* [pkgng] replace double quotes by single ones, when setting 'ignoreosver'
* [pkgng] do not make 'ignoreosver' a required option for this module
* [pkgng] mode the point we set IGNORE_OSVER into install_packages()
* [pkgng] restrict the use of 'ignoreosver' to pkg versions >= 1.11
- https://github.com/freebsd/pkg/blob/release-1.11/NEWS#L51
* [pkgng] value of 'ignoreosver' passed to install_packages
- install_packages() contains a taks to update local pkgs cache;
- should that update be triggered, AND 'ignoreosver' is set to True,
we must change existing "batch_var" and add the IGNORE_OSVERSION=yes
to the environment;
- there pkg running on STABLE or CURRENT FreeBSD machines will have a
chance to proceed with the "update" action
* [pkgng] create option description for "ignoreosver" and its defaults
* [pkgng] make sure we do use IGNORE_OSVERSION when action is "update"
* [pkgng] add more information on how 'ignoreosver' works
Signed-off-by: Vinicius Zavam <egypcio@googlemail.com>
* [pkgng] create changelog fragment for PR #1243
Signed-off-by: Vinicius Zavam <egypcio@googlemail.com>
* [pkgng] add information about when we start to offer 'ignoreosver'
Signed-off-by: Vinicius Zavam <egypcio@googlemail.com>
* [pkgng] rename 'ignoreosver' -> 'ignore_osver'
Signed-off-by: Vinicius Zavam <egypcio@googlemail.com>
* [pkgng] remove unnecessary backslashes for install_packages() call
Signed-off-by: Vinicius Zavam <egypcio@googlemail.com>
* [pkgng] fix changelog fragment's formating
Signed-off-by: Vinicius Zavam <egypcio@googlemail.com>
* Adjust path for time stamped SNAPSHOT versions
Test the version string for the timestamp SNAPSHOT pattern. If it matches, substitute the SNAPSHOT version in the artifact path rather than the timestamped version string.
* Add changelog fragment for PR 713
* Update changelogs/fragments/713-maven-timestamp-snapshot.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* C
Fix problems reported by shippable
Fix problems reported by pull request checks
* Resolve additional shipping errors
Co-authored-by: jweber <jweber@seastreet.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
Provides an alternative authentication method to the password.
The token validity is only tested during the first request after the
instantiation of `ProxmoxAPI`, thus the presence of a call to
`proxmox.version.get()` in `proxmox_template`.
Example:
- name: Ensure test-vm is created
proxmox_kvm:
api_host: prx-test
api_user: tleguern@pve
api_token_id: api-pve-test
api_token_secret: fad3db3d-b335-ee15-9fb0-ea1bf70128db
node: prx-test-01
name: test-vm
...
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>
* Adjusted case in class names - transparent to users
* Adjustments to module code:
- No need to try/except everything, in fact it complicated debugging
- Replaced second call to xfconf.get() with xfconf.previous_value
* the actual test
* removed extraneous empty lines
* added changelog fragment
* rolled back removing the try/except around the main execution
* Update changelogs/fragments/1305-added-xfconf-tests.yaml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/system/xfconf.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Removed extraneous import
Co-authored-by: Felix Fontein <felix@fontein.de>
* 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>
* proxmox_kvm: pool parameter not supported by API on update
* added changelog fragment
* format fix and pull request link added
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add support for StackScripts to Linode v4 module
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
* add changelog fragment
* Add stackscript to example
Co-authored-by: Felix Fontein <felix@fontein.de>
* Adds a module for sending PagerDuty change events.
PagerDuty recently released a new feature called change events that behave similar to events that can trigger incidents, except they are used to track code/infrastrucure changes rather than triggering incidents. This change adds a module to easily allow creating change events from ansible deploys.
* Apply suggestions from code review
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Update copyright.
* Expand on example usage.
* Make API request with missing data when in check mode.
Just to ensure that we are hitting the correct API endpoint and it is responding as expected.
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
* Clarify lack of idempotency.
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add OpenBSD pkg_add(1) snapshot support
* Fix documentation syntax
Co-authored-by: Felix Fontein <felix@fontein.de>
* Bump version_added
Co-authored-by: Felix Fontein <felix@fontein.de>
* zap one trailing whitespace
The first trailing whitespace is necessary otherwise we cal pkg_add(1)
with '-Im-Dsnap' which is invalid.
* Check build flag in package_present()
* zap one trailing whitespace
The first trailing whitespace is necessary otherwise we cal pkg_add(1)
with '-Im-Dsnap' which is invalid.
* check snapshot/build combination a little earlier
* Update "Force" documentation
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Bump version tgo 1.3.0
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add a changelog fragment.
* Update plugins/modules/packaging/os/openbsd_pkg.py
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Add: mutually exclusiv hint for "build" and add mutually_exclusive
* Re-add build=%s check
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* fixed validation-modules for plugins/modules/remote_management/manageiq/manageiq_alert_profiles.py
* fixed validation-modules for plugins/modules/remote_management/manageiq/manageiq_alerts.py
* fixed validation-modules for plugins/modules/remote_management/manageiq/manageiq_group.py
* fixed validation-modules for plugins/modules/remote_management/manageiq/manageiq_policies.py
* partially fixed plugins/modules/remote_management/manageiq/manageiq_provider.py
- this module had way too many validation errors, many involving documenting parameters from scratch, so added types to options and suboptions, but rolled back ignore lines
* fixed validation-modules for plugins/modules/remote_management/manageiq/manageiq_tags.py
* fixed validation-modules for plugins/modules/remote_management/manageiq/manageiq_tenant.py
* fixed validation-modules for plugins/modules/remote_management/manageiq/manageiq_user.py
* fixed validation-modules for plugins/doc_fragments/manageiq.py
* Enabling validation-modules for remote_management/manageiq modules
* Hello 2.9 my old friend, I've come to roll you back again...
* fixed validation-modules for plugins/modules/cloud/google/gcdns_record.py
* fixed validation-modules for plugins/modules/cloud/google/gcdns_zone.py
* fixed validation-modules for plugins/modules/cloud/google/gce_eip.py
* fixed validation-modules for plugins/modules/cloud/google/gce_img.py
* fixed validation-modules for plugins/modules/cloud/google/gce_instance_template.py
* fixed validation-modules for plugins/modules/cloud/google/gce_labels.py
* fixed validation-modules for plugins/modules/cloud/google/gce_lb.py
* fixed validation-modules for plugins/modules/cloud/google/gce_mig.py
* fixed validation-modules for plugins/modules/cloud/google/gce_net.py
* fixed validation-modules for plugins/modules/cloud/google/gce_pd.py
* fixed validation-modules for plugins/modules/cloud/google/gce_snapshot.py
* fixed validation-modules for plugins/modules/cloud/google/gce_tag.py
* fixed validation-modules for plugins/modules/cloud/google/gcp_backend_service.py
* fixed validation-modules for plugins/modules/cloud/google/gcp_forwarding_rule.py
* fixed validation-modules for plugins/modules/cloud/google/gcp_healthcheck.py
* fixed validation-modules for plugins/modules/cloud/google/gcp_target_proxy.py
* fixed validation-modules for plugins/modules/cloud/google/gcpubsub_info.py
* fixed validation-modules for plugins/modules/cloud/google/gcpubsub.py
* fixed validation-modules for plugins/modules/cloud/google/gcp_url_map.py
* fixed validation-modules for plugins/modules/cloud/google/gcspanner.py
* fixed validation-modules for plugins/modules/cloud/google/gc_storage.py
* adjust parameter description in gce_eip.py
* fixed validation-modules for plugins/modules/cloud/google/gce.py
* removed extra type definition
* reformatted long lines
* Tidy up validate-modules ignores for cloud/google modules
* gc_storage.py: fixed parameter to be overwrite and alias force, instead of the other way around
* rolled back a number of ignore lines that ansible 2.9 believes to defy sanity
* gce_instance_template.py: the metadata parameter brings no definition whatsoever in argument_spec, causing a number of problems. Rolling back for now.
* Fixes on docs from the PR
* 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>
* add a warning when ansible_label is not found on a secret. addresses #30
* Update changelogs/fragments/31-docker-secret.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
Backported from 22ba76b4e9
* Fix rounding issues with percentages
Changed the behavior when using %VG or %PVS to make the size_requested an even modulus with the VGs physical extents by rounding down. This makes the usage of %VG or $PVE idempotent when the calculated size_requested does not end on a physical extent boundary.
* Added ansible changelog fragment.
* Forgot the module in the changelog fragment.
* Added URL to the PR to the changelog fragment.
* Update changelogs/fragments/229_lvol_percentage_fix.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* lxc_container: fix the type of the 'container_config' parameter
* lxc_container: specify the type of elements in 'container_config'
* lxc_container: improve the documentation of the container_config option
* lxc_container: add changelogs fragment for PR 216
* lxc_container: update changelogs fragment for PR 216
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* fixed validation-modules for plugins/doc_fragments/rackspace.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_cbs.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_cbs_attachments.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_cdb_database.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_cdb.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_cdb_user.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_clb_nodes.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_clb.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_clb_ssl.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_dns.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_dns_record.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_facts.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_files.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_files_objects.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_identity.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_keypair.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_meta.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_mon_alarm.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_mon_check.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_mon_entity.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_mon_notification_plan.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_mon_notification.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_network.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_queue.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_scaling_group.py
* fixed validation-modules for plugins/modules/cloud/rackspace/rax_scaling_policy.py
* Enabling validation-modules for rackspace modules
* Removed test in rax.py
* Added markup to items in list
* rax_monm_check.py: moved choices doc to description for check_type
As the argument_spec does not contain the "choices" spec, adjusting that in the docs
* rax_monm_check.py: a number of things missing in docs, fixed
* Adding parameter to disable auto-commit (#1137)
* Update plugins/modules/database/misc/odbc.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/database/misc/odbc.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/database/misc/odbc.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/database/misc/odbc.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Adding odbc changelog fragment
* Picking a better word while fixing a typo
* Adding additional wording per felixfontein suggestion
* Update wording in plugins/modules/database/misc/odbc.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>
* fixed validation-modules for plugins/modules/notification/bearychat.py
* fixed validation-modules for plugins/modules/notification/campfire.py
* fixed validation-modules for plugins/modules/notification/catapult.py
* fixed validation-modules for plugins/modules/notification/flowdock.py
* fixed validation-modules for plugins/modules/notification/grove.py
* fixed validation-modules for plugins/modules/notification/hipchat.py
* fixed validation-modules for plugins/modules/notification/irc.py
* fixed validation-modules for plugins/modules/notification/jabber.py
* fixed validation-modules for plugins/modules/notification/logentries_msg.py
* fixed validation-modules for plugins/modules/notification/mail.py
* fixed validation-modules for plugins/modules/notification/matrix.py
* fixed validation-modules for plugins/modules/notification/mattermost.py
* fixed validation-modules for plugins/modules/notification/mqtt.py
* fixed validation-modules for plugins/modules/notification/nexmo.py
* fixed validation-modules for plugins/modules/notification/office_365_connector_card.py
* fixed some docs issues in plugins/modules/notification/pushbullet.py, but cannot remove the ignore lines yet
* fixed validation-modules for plugins/modules/notification/pushover.py
* fixed some docs issues in plugins/modules/notification/rocketchat.py, but cannot remove all ignore lines yet
* fixed validation-modules for plugins/modules/notification/say.py
* fixed validation-modules for plugins/modules/notification/sendgrid.py
* fixed validation-modules for plugins/modules/notification/slack.py
* fixed validation-modules for plugins/modules/notification/syslogger.py
* fixed validation-modules for plugins/modules/notification/telegram.py
* fixed validation-modules for plugins/modules/notification/twilio.py
* fixed validation-modules for plugins/modules/notification/typetalk.py
* Enabling validation-modules for modules in: notification
* removed naughty trailing space
* fixed validation-modules for aix_devices.py
* fixed validation-modules for aix_filesystem.py
* fixed validation-modules for aix_inittab.py
* fixed validation-modules for aix_lvg.py
* fixed validation-modules for aix_lvol.py
* fixed validation-modules for awall.py
* fixed validation-modules for dconf.py
* fixed validation-modules for gconftool2.py
* fixed validation-modules for interfaces_file.py
* fixed validation-modules for java_keystore.py
* fixed validation-modules for kernel_blacklist.py
* fixed validation-modules for plugins/modules/system/lbu.py
* fixed validation-modules for plugins/modules/system/locale_gen.py
* fixed validation-modules for plugins/modules/system/lvg.py
* fixed validation-modules for plugins/modules/system/lvol.py
* fixed validation-modules for plugins/modules/system/mksysb.py
* fixed validation-modules for plugins/modules/system/modprobe.py
* fixed validation-modules for plugins/modules/system/nosh.py
* fixed validation-modules for plugins/modules/system/open_iscsi.py
* fixed validation-modules for plugins/modules/system/openwrt_init.py
* fixed validation-modules for plugins/modules/system/osx_defaults.py
* fixed validation-modules for plugins/modules/system/pamd.py
* fixed validation-modules for plugins/modules/system/pam_limits.py
* fixed validation-modules for plugins/modules/system/parted.py
* fixed validation-modules for plugins/modules/system/puppet.py
* fixed validation-modules for plugins/modules/system/python_requirements_info.py
* fixed validation-modules for plugins/modules/system/runit.py
the parameter "dist" is not used anywhere in the module
* fixed validation-modules for plugins/modules/system/sefcontext.py
* fixed validation-modules for plugins/modules/system/selogin.py
* fixed validation-modules for plugins/modules/system/seport.py
* fixed validation-modules for plugins/modules/system/solaris_zone.py
* fixed validation-modules for plugins/modules/system/syspatch.py
* fixed validation-modules for plugins/modules/system/vdo.py
* fixed validation-modules for plugins/modules/system/xfconf.py
* removed ignore almost all validate-modules lines in system
* removed unnecessary validations, per shippable test
* kernel_blacklist: keeping blacklist_file as str instead of path
* mksysb: keeping storage_path as str instead of path
* pam_limits: keeping dest as str instead of path
* rollback on adding doc for puppet.py legacy param
* rolledback param seuser required in selogin module
* rolledback changes in runit
* rolledback changes in osx_defaults
* rolledback changes in aix_defaults
* fixed validation-modules for apache2_mod_proxy.py
* fixed validation-modules for apache2_module.py
* fixed validation-modules for deploy_helper.py
The ignore lines were put back in place because
add_file_common_args=True is used and the module inherits a number of
options that do not show up in the documentation (nor should they).
* fixed validation-modules for ejabberd_user.py
* fixed validation-modules for gunicorn.py
* fixed validation-modules for htpasswd.py
* fixed validation-modules for jenkins_job.py
* fixed validation-modules for jenkins_job_info.py
* fixed validation-modules for jenkins_plugin.py
* fixed validation-modules for jenkins_script.py
* fixed validation-modules for jira.py
* fixed validation-modules for nginx_status_facts.py
* fixed validation-modules for rundeck_acl_policy.py
* fixed validation-modules for rundeck_project.py
* fixed validation-modules for supervisorctl.py
* fixed validation-modules for taiga_issue.py
* fixed pylint mistake in plugins/modules/web_infrastructure/jenkins_job_info.py
* removed ignore lines for almost-all web_infrastructure modules
* rolled back ignore lines for nested sophos_utm modules that were not adjusted
* Removed doc-missing-type from ignore-2.11.txt for deploy_helper and jenkins_plugin
* When adding lines back to ignore files, we added more than it was before. Removing.
* Rolled back deprecation line in ignore-2.9.txt for nginx_status_facts
* Rolled back yet another line in ignore-2.9.txt for nginx_status_facts
* Fixed argument_spec and docs for crypt_scheme parameter in htpasswd, per PR
* Added extends_documentation_fragment:files to deploy_helper and jenkins_plugin
* Removed long-deprecated option params from jenkins_plugin, removed validate-modules lines from ignore files for that module
* Update plugins/modules/web_infrastructure/htpasswd.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Unbreak beadm module
* Add a changelog fragment
* Module beadm.py: remove regex, use split() everywhere, fix array indexes.
* Fix typos
* Change array indexes for BE name - according to Oracle documents, the name of BE is in the first column of beadm output on Solaris.
* Add 'None' checks in beadm.py
* Add support for extra options for terraform init
* Add missing var declaration
* feat: add changelog fragment
* feat: switch from an init_extra_args global option to an init_reconfigure specific option
* Update changelogs/fragments/823-terraform_init_reconfigure.yaml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* proxmox: ignore QEMU templates altogether
* add changelog fragment
* add test case
* Update changelogs/fragments/1185-proxmox-ignore-qemu-templates.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Remove hard-coded defaults
* Remove hard-coded defaults in proxmox.py
* Add changelog
* Remove defaults in proxmox docs
* Remove more default values
* Remove defaults in doc proxmox_kvm
* Restore default=True to onboot
* Add unspecified back to format
* correct changelog format and grammar
Co-authored-by: Felix Fontein <felix@fontein.de>
* improve changelog
* Fix changelog formatting
Co-authored-by: Felix Fontein <felix@fontein.de>
* Fix changelog formatting
* Deprecate before behaviour change
* Change changelog
* Remove unnecessary ignored sanity tests, fix
* Fix
* Better mention it too often than too little :)
* Deprecate in version 4.0.0 instead of 2.0.0
* Fix changelog
* Fix
* Remove none values
* Improve documentation as suggessted by felixfontein
* fix changelog
Co-authored-by: Felix Fontein <felix@fontein.de>
* Remove default value in force in proxmox_kvm
* Add description to force in proxmox_kvm
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add support for consul tcp health check
* Fix consul tcp example
* Remove trailing spaces
* Add changelog fragment
* Add format in description
* Use regex for tcp
* Review fix
* Vendor plugins/module_utils/mount.py from ansible.posix, and drop ansible.posix dependency (except for testing).
* Add ignore.txt entries.
* Install test requirements conditionally.
* Apply suggestions from code review
Co-authored-by: John R Barker <john@johnrbarker.com>
* Bump to major changes.
Co-authored-by: John R Barker <john@johnrbarker.com>
* Apply patches by default. Other minor cleanup
* syspatch: Adding changelog and deprecating redundant apply argument
* Update changelogs/fragments/360_syspatch_apply_patches_by_default.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Fix lang issue on zypper absent
* Add fragment changelog
* Update changelogs/fragments/1175-zypper-absent-lang.yml
Some outfit
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* 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>
* Add getbinpkgonly (-G) to portage
* version_added for getbinpkgonly
* Format description nicely, add the mutually exclusive nature of the 'pkg' options, and correct usepkgonly
* Changelog fragement
* Formatting
* Update changelogs/fragments/1169-getbinpkgonly.yaml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Remove all exclusiveness, portage makes no such restrictions
Co-authored-by: Mike Williams <mike.williams@sectigo.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Fixed django_manage markup in docs
* Update plugins/modules/web_infrastructure/django_manage.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Full validation in sanity-check
- removed restrictions from the tests/sanity/ignore-*.txt for django_manage
- adjusted documentation and code accordingly
* typo
* ... and added the necessary removed_from_collection='community.general'
* Update plugins/modules/web_infrastructure/django_manage.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/web_infrastructure/django_manage.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/web_infrastructure/django_manage.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/web_infrastructure/django_manage.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Added changelog fragment
* Documentation sentence lacking period, as pointed in the PR.
* Update plugins/modules/web_infrastructure/django_manage.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update changelogs/fragments/1154-django_manage-docs.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update changelogs/fragments/1154-django_manage-docs.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Removed the markup for 'shebang' in the docs.
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>
* * Refactor `nmcli` module to use consistent parameters when creating/modifying connections and detecting changes.
* Keep DNS list arguments as lists internally.
* Remove duplicated code where practical.
* DBus and GObject dependencies are not necessary.
* Update changelog fragment.
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update changelog fragment.
Co-authored-by: Felix Fontein <felix@fontein.de>
* Use identity operator instead of equality for type comparison.
* Don't start changelog notes with a capital letter.
* * Have `settings_type` return `str` by default instead of `None`.
* Improve variable naming, use `convert_func` instead of `type_cast`.
* Revert new feature of allowing ethernet types as slaves.
* Bring back `list_connection_info` to list all connections with `nmcli con show`.
Co-authored-by: Felix Fontein <felix@fontein.de>
* 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.
* fix race condition between module and its action plugin
See https://github.com/ansible-collections/community.general/issues/1136.
Also remove irrelevant/unneeded display.v() and display.warning() around
connection reset.
* do not check for cookie if not in async mode
* add changelog fragment
* Added client_cert and client_key to the maven_artifact module.
* Changelog fragment for PR-1127
* Apply suggestions from code review
Changes suggested in review. Match argument_spec values to documentation values.
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update changelogs/fragments/1127-maven_artifact_client_cert.yml
Documentation formatting suggestion.
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Make sure frenck is no longer accidentally contacted.
* More precise.
frenck explicitly requested in https://github.com/ansible-collections/community.general/pull/358
to not be contacted about this module ("I don't use Ansible anymore. Haven't contributed in years
and don't plan on doing so." / "I'm no supporting this module or project anymore.").
* Use regexp to check if the value matches expected form
regexp should match values like:
- 1B
- 10MB
- 10mb
* Added changelog entry
* Update changelogs/fragments/1079-redis-use-regexp-to-check-if-the-value-matches-expected-form.yaml
Co-authored-by: Amin Vakil <info@aminvakil.com>
Co-authored-by: Amin Vakil <info@aminvakil.com>
* move conversion of data to json in slack API handling
at one point in do_notify_slack, we do operations on the payload
variable assuming it's a dict, but it's not: it's a json encoded string.
it's useful to operate on the payload as a dict rather than a string, so
solve this problem by moving the jsonify call to right before sending
the payload to the slack API.
fixes#1097
* add changelog fragment
* Update changelogs/fragments/1101-slack-ts-fix.yaml
Co-authored-by: Felix Fontein <felix@fontein.de>
* return payload as a json encoded string for backwards compatibility
Co-authored-by: Felix Fontein <felix@fontein.de>
* update django_manage migrate docs to include database param
* Update plugins/modules/web_infrastructure/django_manage.py
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* [capabilities] fix for a newer versions of libcap
fixes: #993
* Minor correction for files without caps set.
PS: side note, getcap (per sources) does not set non-zero return code,
even for files which are not found (i.e. wrong filename).
* add changelog fragment
* review/suggested changes
* change comment to explicitly state stderr vs output
* * Explicitly open up temporary file in text mode.
* Add test for `solaris_zone` creation.
* Update changelog fragment.
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add tests for zone deletion and invalid zone names.
Co-authored-by: Felix Fontein <felix@fontein.de>
* sort list of available versions
If `version == 'latest'` then the version is set to `available_versions[-1]` however `available_versions` was not previously sorted so the ordering was the natural order of the `pg_available_extension_versions` view.
* remove unnecessary lambda
* create changelog fragment for #1078
* add PR link to changelog fragment
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* FEATURE: make ansible_cache_keys name configurable
* REFACTOR: rename cache_keys to keyset
* FEATURE: add changelog fragment
* Update changelogs/fragments/1036-redis-cache-keyset-name.yaml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Set version_added in plugins/cache/redis.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Benjamin Pereto <benjamin@sandchaschte.ch>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Allow setting format to null (None)
* Use string instead of None for consistency
* Add changelog
* Update changelogs/fragments/1028-proxmox-kvm-linked-clone.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/cloud/misc/proxmox_kvm.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Substitute 'unspecified' format with None
Co-authored-by: Lukasz Rzasik <lukasz.rzasik@dreamlab.net>
Co-authored-by: Felix Fontein <felix@fontein.de>
* 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>
For each package check membership in the list instead of checking each
package individually using pacman to see if it is a pacman group.
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add inventory plugin for Stackpath Edge Compute
* Update comments from PR regarding general issues.
* Convert requests to ansible open_url
* Add types to documentation and replace stack ids with stack names
* Replace stack_ids with stack_slugs for easier readability, fix pagination and separate getting lists to a function
* create initial test
* fix test name
* fix test to look at class variable as that function doesn't return the value
* fix pep line length limit in line 149
* Add validation function for config options.
Add more testing for validation and population functions
* set correct indentation for tests
* fix validate config to expect KeyError,
fix testing to have inventory data,
fix testing to use correct authentication function
* import InventoryData from the correct location
* remove test_authenticate since there's no dns resolution in the CI,
rename some stack_slugs to a more generic name
fix missing hostname_key for populate test
* Fix typo in workloadslug name for testing
* fix group name in assertion
* debug failing test
* fix missing hosts in assertion for group hosts
* fixes for documentation formatting
add commas to last item in all dictionaries
* end documentation description with a period
* fix typo in documentation
* More documentation corrections, remove unused local variable
* 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>
* Update nagios.py
Force an active service check for all services of a particular host or for the host itself
* Create 998-nagios-added_forced_check_for_all_services_or_host.yml
Added fragment
* parted: proper fix for change of partition label case
calling mkpart even when partition existed before mklabel call, fixes#522
* changelog fragment for parted fix#522
* Update changelogs/fragments/522-parted_change_label.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* typo in comment
Co-authored-by: Felix Fontein <felix@fontein.de>
* callback_type -> type.
* Mark authors as unknown.
* Add author field forgotten in #627.
* Fix author entries.
* Add author field forgotten in #127.
* Fix some types.
* Use platform.system for Darwin comparisons
In Python3, `platform.platform()` returns `macOS-10.15.6-x86_64-i386-64bit` instead of `Darwin-10.15.6-x86_64-i386-64bit`.
`platform.system()` returns `Darwin` On py2 and py3.
* Add changlog fragment
* Update changelogs/fragments/945-darwin-timezone-py3.yaml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* [aerospike_migrations] - handle exception when unstable-cluster is returned
* fix lint issue
* Update changelogs/fragments/900-aerospike-migration-handle-unstable-cluster.yaml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Kailun Shi <kaishi@adobe.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
* proxmox_kvm: remove redundant parameters
The functions start_vm() and stop_vm() receive four common parameters:
module, proxmox, vm and vmid.
The last too are redundant so keep only vm.
I also took the opportunity to remove extra API calls to proxmox.nodes()
by assigning its return value to a variable.
* proxmox_kvm: remove extra calls to status.current
The get_vm() function already returns an array of properties containing
the status so remove extra API calls to retrieve this information.
Example:
[{''netin'': 177232, ''name'': ''test-instance'', ''maxcpu'': 1, ''node'': ''prx-01'', ''disk'': 0, ''template'': 0, ''uptime'': 267, ''cpu'': 0.0410680030805531, ''diskread'': 165294744, ''maxdisk'': 10737418240, ''vmid'': 42, ''status'': ''running'', ''id'': ''qemu/42'', ''maxmem'': 536870912, ''diskwrite'': 18528256, ''netout'': 2918, ''type'': ''qemu'', ''mem'': 160284950}]
* proxmox_kvm: kill VZ_TYPE global variable
It reduces readability without providing much values nowadays.
* proxmox_kvm: simplify vmid generation
Forgotten suggestion from Felix Fontein in PR#811.
* proxmox_kvm: add changelog fragment for PR#934
* bring Manager power cmds to parity with System power commands
* add changelog fragment
* Update changelogs/fragments/903-enhance-redfish-manager-reset-actions.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
As per https://learn.hashicorp.com/tutorials/vault/namespaces, setting VAULT_NAMESPACE env var is a completely supported mechanism to make all vault command use said namespace, so hashi_vault lookup function should do the same.
Co-authored-by: Holt Wilkins <hwilkins@palantir.com>
* Fix deprecation of callables.
* Fix various sanity errors.
* Revert callback_type -> type transform.
* Fix stat_result times: these are float according to https://github.com/python/typeshed/blob/master/stdlib/3/os/__init__.pyi
* Apply suggestions from code review
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* add a custom module for managing group membership in gitlab
* add integration test & modify the module
* modify the module
* modify the module
* remove whitespace
* add aliases file & modify the module
* minor and suggested modifications
* suggested modifications
* more minor modifications
* modified the module to use gitlabAuth
* removed api_url from the doc
* remove api_token
* add update access level for an existing user
* remove access level if statement
Since the module unconditionally issues ALTER statements in order to
observe their effect on the postgres catalog - to determine whether the
privileges have changes - a rollback is thus advisable when in fact
nothing has changed.
fix#885
Allows some factorization of redundant code in stop_vm(), start_vm(),
create_vm() and main().
This new function also waits one extra second after a successful task execution as the API can be a bit ahead of Proxmox.
Before:
TASK [ansible-role-proxmox-instance : Ensure test-instance is created]
changed: [localhost]
TASK [ansible-role-proxmox-instance : Ensure test-instance is updated]
fatal: [localhost]: FAILED! => changed=false
msg: VM test-instance does not exist in cluster.
After:
TASK [ansible-role-proxmox-instance : Ensure test-instance is created]
changed: [localhost]
TASK [ansible-role-proxmox-instance : Ensure test-instance is updated]
changed: [localhost]
With suggestions from Felix Fontein <felix@fontein.de>.
* add ts option to slack module to allow editing messages
* add version_added
Co-authored-by: Felix Fontein <felix@fontein.de>
* use correct API URL when updating
* add changelog fragment
* add diff/changed support for updating slack messages
* add an example on how to edit a message
* rename ts to message_id
* use the changed variable where possible
* correct conversation.history url
* proper formatting in documentation
Co-authored-by: Felix Fontein <felix@fontein.de>
* add channel to example
* correct conversation history url
* allow channel to start with C0
* fetch_url does not construct query parameters
* add missing argument
* return more data when nothing has changed
* use urlencode to construct query string
Co-authored-by: Felix Fontein <felix@fontein.de>
When the `vmid` parameter is not supplied and the module can only rely on
name look-up an early failure can happen if the targeted VM doesn't exist.
In this case a task execution with the parameter `state` set to `absent`
will actually fail instead of being considered ok.
This patch introduces a deferred error-checking for non-existent VMs
by assigning the value -1 to the `vmid` parameter, allowing the actual
verification to be performed in the right code paths.
Is also help to differentiate between a non-existent `vmid` or non-existent
VM `name`.
Previously:
TASK [ansible-role-proxmox-instance : Remove instance-test]
changed: [localhost]
...
TASK [ansible-role-proxmox-instance : Remove instance-test]
fatal: [localhost]: FAILED! => changed=false
msg: VM instance-test does not exist in cluster.
Now:
TASK [ansible-role-proxmox-instance : Remove instance-test]
ok: [localhost]
...
TASK [ansible-role-proxmox-instance : Remove instance-test]
ok: [localhost]
Update changelogs/fragments/811-proxmox-kvm-state-absent.yml
With suggestions from Felix Fontein <felix@fontein.de>.
* Specify device for Pushover notification
New parameter: device
Example:
- community.general.pushover:
msg: '{{ inventory_hostname }} has been lost somewhere'
app_token: wxfdksl
user_key: baa5fe97f2c5ab3ca8f0bb59
device: admins-iPhone
delegate_to: localhost
Using the Pushover API, you can specify a device where the message should be delivered to. Instead of notifying all devices (the default), the message is sent only to the specified device. Multiple devices can be given separated by a comma.
This change is downwards compatible: omitting the device key sends the message to all devices (as before).
* Added changelog fragments file for pushover
File format as specified in https://docs.ansible.com/ansible/devel/community/development_process.html#changelogs-how-to.
* Added version_added information
As suggested by Felix (thanks!).
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Fix get_installed_versions: correctly parse "default" version.
gem query output of
bundler (default: 2.1.4, 1.17.2)
Gets parsed as:
['default:', '1.17.2']
Fix this by skipping "default: " if present in the list of versions - by adding
it as an optional part of the regex, grouped as a non-capturing group to keep
the index of existing group.
This now correctly parses the above input as
['2.1.4:', '1.17.2']
Fixes#782
* Fix gem get_installed_versions (cont): add changelog fragment
* Update changelogs/fragments/783-fix-gem-installed-versions.yaml as per suggestion
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Fix for casks with @ in the name
* Add changelog fragment
* Update changelogs/fragments/homebrew-cask-at-symbol-fix.yaml
Period required at the end of changelog entry
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Use double backticks
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Fix terraform changed status detection test (#561)
* Add changelog fragment
* Update changelogs/fragments/563-update-terraform-status-test.yaml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* This commit adds proxmox inventory module and proxmox_snap for snapshot management
* Fixed pylint errors
* Missed this one..
* This should fix the doc errors
* Remove proxmox_snap to allow for single module per PR
* Changes as suggested by felixfontein in #535
* Reverted back to AnsibleError as module.fail_json broke it. Need to investigate further
* Made importerror behave similar to docker_swarm and gitlab_runner
* FALSE != False
* Added myself as author
* Added a requested feature from a colleague to also sort VMs based on their running state
* Prevent VM templates from being added to the inventory
* Processed feedback
* Updated my email and included version
* Processed doc feedback
* More feedback processed
* Shortened this line of documentation, it is a duplicate and it was causing a sanity error (> 160 characters)
* Added test from PR #736 to check what needs to be changed to make it work
* Changed some tests around
* Remove some tests, first get these working
* Disabled all tests, except the one I am hacking together now
* Added mocker, still trying to figure this out
* Am I looking in the right direction?
* Processed docs feedback
* Fixed bot feedback
* Removed all other tests, started with basic ones (borrowed from cobbler)
* Removed all other tests, started with basic ones (borrowed from cobbler)
* Removed all other tests, started with basic ones (borrowed from cobbler)
* Removed init_cache test as it is implemented on a different way in the original foreman/satellite inventory (and thus also this one)
* This actually passes! Need to check if I need to add asserts as well
* Made bot happy again?
* Added some assertions
* Added note about PVE API version
* Mocked only get_json, the rest functions as-is
* Fixed sanity errors
* Fixed version bump (again...) ;-)
* Processed feedback
* Adding types to sysupgrade documentation
* Apply suggestions from code review
* Adding installurl flag. Changing wording in example.
* Use None for installurl by default
* Changing word case in description
* sysupgrade: use module structure recommended by Ansible unit test docs
* Adding unit test for sysupgrade
Signed-off-by: Andrew Klaus <andrew@aklaus.ca>
Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
Co-authored-by: Felix Fontein <felix@fontein.de>
* restart from last state
* test (sanity) doc fragment placeholder
* test (sanity) remove doc fragment placeholder
* remove internal params from DOCUMENTATION
* update ignore-2.10.txt
* doc: add changelog fragment
* shorten changelog fragment
* Revert "shorten changelog fragment"
This reverts commit f9aea0d1eaefda139fd5b79bd0eb127c09a433fb.
* test with posix/group1
* test with posix/group3
* test with posix/group5
* test with posix/group4
* test with posix/group3
* New modules/action plugins automatically get a changelog entry
* fix: styles
* Revert "remove internal params from DOCUMENTATION"
This reverts commit 7d5fcf4b17e4cd5b0afc08fd1bd3fcef5fcaee26.
* drop neutral/informative/stateless behaviour
* update tasks after changes in module
* use FQCN in EXAMPLES
* add tests to validate error handling about required params
* doc: remove outdated sentence
* do not document internal parameters
* display timeout value in failure message
* remove inapropriate comment
* merge results and clean them up only once
* conditionally remove tmp path
* at least one iteration is required
* remove deprecated code
* move variables declaration to conditional block
* dissociate async and connection timeout
* improve warnings (conditions + values)
* remove ANSIBLE_METADATA (no more needed); fix typo
* update DOCUMENTATION
* Drop field 'version_added' (no more needed).
* Add a note about check_mode support.
* catch early errors before resetting connection and processing the loop
* fix typo
* change posix group (due to xtables locks); add 'version_added' in doc
* update deprecation (replace Ansible 2.12 by community.general 2.0.0)
* bump version_added to 1.0.0
* update ignore-2.11.txt
* ignore errors for 2.9 as for 2.10 & 2.11
* move action plugin to system/ and replace it by a symlink
* remove action-plugin-docs override in tests/sanity/ignore*.txt
* update action plugin docstrings
* bump version_added to 1.1.0
* use lowercase booleans
* extend usage of namespaces to ansible builtin modules
* postgresql_set: allow to pass an empty string as a value
* add check_mode to CI for the case
* add changelog fragment
* add pause
* fix
* fix ci
* fix
* fix
* add suggested
* New module: shutdown
* Add symlink to plugin
* Fix
Signed-off-by: Amin Vakil <info@aminvakil.com>
* Fix
* Fix
* Add seealso
* Fix seealso
* Add future-import, metaclass boilerplate
* Change pre_shutdown_delay to delay
* Cleanup before executing shutdown
* Fix
* Remove unused connect_timeout paramater
* Improve documentation
* Remove deprecated function and calling it
* Remove double calling delay function
* Remove unneeded call in check delay function
* Make check mode more realistic
* Remove extra blank line
* Remove unnecessary imports and fix copyright year
* Add shutdown_command and integration test
* Fix integration test
* Don't fail on local AND enabled check_mode
* Add copyright
* Skip ubuntu1804 as systemd-sysv is not installed on container
* Ignore ubuntu 18 on task
* Readd integration tests
* Do not run integration test on ubuntu 18
* Improve integration test and add delay, msg testing
* Fix ubuntu 18 integration test
* Remove unnecessary condition
* Update xfconf.py
- ensure correct behaviour, even in desktop environments which don't use English as the default language
- add double as content type
* set environ_update for entire module
* set envvar LANGUAGE instead of LANG because of priority order in evaluating them
* initial commit
* add contrib info
* remove nonfunctional \n in error messate
* add documentation and optional quiet and raw arguments
* add changelog fragment
* add aliases
* add initial test
* change folder name
* add pip install jc for tests
* simplify changelog since tests were failing
* add newline to end of file
* fix trailing whitespace in comment causing test failure
* use pip3 since tests are failing using python2.6 pip
* skip python 2.7 tests since jc only supports python 3
* use pip instead of pip3
* add python version requirement
* Type: Wrong package names
In Red Hat systems, python packages are preceeded by `python3-`
* Use Python 2 packages on CentOS 7 and Fedora <= 28.
Co-authored-by: Frank Brütting <fbruetting@users.noreply.github.com>
* Enable/disable health and agent checks
Health and agent checks can cause a disabled service to re-enable
itself. This adds "health" and "agent" options that will also
enable or disable those checks, matching if the service is to be
enabled/disabled.
* Update plugins/modules/net_tools/haproxy.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/net_tools/haproxy.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/net_tools/haproxy.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/net_tools/haproxy.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Changes to documentation and changelog.
Changes for the haproxy documentation to resolve issues with
the CI/CD, and adding a changelog fragment.
* Update changelogs/fragments/689-haproxy_agent_and_health.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update changelogs/fragments/689-haproxy_agent_and_health.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/net_tools/haproxy.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add an example of health/agent disable.
* Update plugins/modules/net_tools/haproxy.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>
Sometimes Jira returns dicts as "errors" instead of simple strings.
For example, when a user specifies a field that cannot be set, Jira
returns a dict with the field name as a key and the error message as the
value.
In the rare case that we have both a "errorMessages" list and an
"errors" dict, when we combine those values later with join(), Python
raises a TypeError.
Transform each individual error message into a string, and then join()
the list of strings.
* Slack: add support for blocks
* Slack: drop unused validate_certs option
* Slack: update docs to reflect thread_id can be sent with tokens other than WebAPI
* Slack: drop escaping of quotes and apostrophes
* Slack: typo
* Revert "Slack: drop escaping of quotes and apostrophes"
This reverts commit bc6120907e.
* Revert "Slack: drop unused validate_certs option"
This reverts commit a981ee6bca.
* Slack: other/minor PR feedback
* Slack: add changelog fragment
* Slack: clean-up/clarify use of recursive escaping function
* Slack: PR feedback
Co-authored-by: Lee Goolsbee <lgoolsbee@atlassian.com>
* doas: properly set the default values
The module expects by default:
- `become_user` to be `None` or a string,
- `become_flags` to by an empty string.
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* archive: exclude_path does not actualy exclude files from archive, but paths generated by glob expantion of path param.
* Update plugins/modules/files/archive.py
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Added uint type to xfconf module
* Update changelogs/fragments/xfconf_add_uint_type.yml
Updated PR number in changelog
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Pierre Roudier <pierre.roudier@ticksmith.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
Jira's API can return a empty "errorMessages" list, and the real error
is in the "errors" object. This happens, for example, if a user tries to
file a ticket in a project that does not exist (tested with Jira
v7.13.8)
Check both "errorMessages" and "errors", and report both values with
fail_json().
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Shameless recommit of changes in jesstruck/ansible:jenkins_plugins_sha1
* Add changelog fragment.
* Change variable name to remove reference to sha1
Also, update changelog fragment typos/style.
* Update changelog fragment typos/style.
* big revamp on xfconf, adding array values
* added changelog fragment
* Update changelogs/fragments/693-big-revamp-on-xfconf-adding-array-values.yml
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Fixed index out of range in yarn module when no packages are outdated
* Fixed handling of yarn dependencies when scoped modules are installed
* Added changelog fragment for yarn module fixes
* Adhere changelogs/fragments/474-yarn_fix-outdated-fix-list.yml to current standards
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Added scoped package to yarn integration test
Co-authored-by: Jan Gaßner <jan.gassner@plusserver.com>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Add cobbler inventory plugin
* Add elements, caps
* Use fail_json if we cannot import xmlrpc_client
* [cobbler] Raise AnsibleError for errors
* [plugins/inventory/cobbler] Add cache_fallback option
* [inventory/cobbler] Use != for comparison
* [inventory/cobbler] Add very basic unit tests
* Update plugins/inventory/cobbler.py
Use full name
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Revert "Remove entries of modules that no longer exist." partially.
This reverts commit c1e1b37da4.
* Revert "The _info module is in google.cloud."
This reverts commit 26f5c84924.
* Revert "Remove modules that were moved to the google.cloud collection according to ansible/ansible's ansible_builtin_runtime.yml."
This reverts commit a1442ccc35.
* Fix FQCNs in examples and module references.
* Add changelog fragment.
* Update ignore.txt.
* Remove bad lines.
* postgresql_query: add search_path parameter
* add CI tests
* add ref to seealso
* add changelog fragment
* fix test syntax
* fix test syntax
* fix
* fix
* fix CI syntax
* cosmetic change
* improve CI test
* move CI tests to the right place
* improve CI
* pacman: Treat .zst package names as files
* pacman: add changelog for .zst support
* pacman: refer to pull-request in changelog fragment
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: gileri <e+git8413@linuxw.info>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Adding ODBC module
* Adding symink and fixing docs and argspec
* Another sanity issue
* Hopefully last fix for elements
* Making changes suggested by felixfontein
* Making changes suggested by Andersson007
* Removing defaults and added info in description
* Fixing line too long
* More cleanup suggested by felixfontein
* Changing module call
* Add check for rundeck_acl_policy name
* Update changelogs/fragments/add_argument_check_for_rundeck.yaml
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* migrate firewalld to ansible.posix
Signed-off-by: Adam Miller <admiller@redhat.com>
* fix removal_version for runtime.yml
Signed-off-by: Adam Miller <admiller@redhat.com>
* add changelog fragment
Signed-off-by: Adam Miller <admiller@redhat.com>
* Update meta/runtime.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update changelogs/fragments/firewalld_migration.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* add module_util routing entry
Signed-off-by: Adam Miller <admiller@redhat.com>
* Update meta/runtime.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* modules: fix names with hyphens (#656)
* modules: fix names with hyphens (#656)
* Fix param name for postgresql_schema
* Add double quotes for schema name
* Add delete created DB objects
* Fix module code
* Set correct test tasks order
Co-authored-by: Maxim Voskresenskiy <maxim.voskresenskiy@uptick.com>
* chore: runtime en var and list default bahevaior
Ability to pick options values from env vars on gitlab_runners inventory plugin
Remove default 20 items limit to runners list on gitlab_runners inventory plugin
* Changelog fragment
Co-authored-by: Felix Fontein <felix@fontein.de>
* Changelog fragment
* Badly placed fragment
Co-authored-by: Felix Fontein <felix@fontein.de>
* changelog fragment for api token
* changelog fragment
* Update changelogs/fragments/611-gitlab-runners-env-vars-intput-and-default-item-limit.yaml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update changelogs/fragments/611-gitlab-runners-env-vars-intput-and-default-item-limit.yaml
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* fix: remove default filter all due to #440
* fix: remove default filter all due to #440
* chore: add os env var for filter input
* chore: add os env var for filter input
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Fix: only "warn" when restart is required
Motivation: my logs are flooded with "warnings" when I run roles against instances.
So even though I understand for this "warning", it's a false positive when nothing
needs to be done.
* Update changelogs/fragments/651-fix-postgresql_set-warning.yaml
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Add the Thycotic Secret Server lookup plugin.
* Update plugins/lookup/tss.py
Co-Authored-By: Felix Fontein <felix@fontein.de>
* Fix import error check per code review.
* Apply suggestions from code review
Co-Authored-By: Felix Fontein <felix@fontein.de>
* Trivial changes based on suggestions from code review.
* Add a unittest for plugins/lookup/tss.py
* Add copyrights.
* Fixed formatting bug in test_tss.py
* Fix formatting bugs in tss.py and test_tss.py
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
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>
* Remove all files ignores to see errors
* Fix
* Revert archive.py as its change should be discussed in another PR
* Ignore archive.py
* Revert xml
* Fix
* pkgng: Add support for upgrading all installed packages
Adds support for ``name: "*", state: latest`` to upgrade all installed
packages, similar to other package providers.
Co-authored-by: Felix Fontein <felix@fontein.de>
* pkgng: Improve wording for warning in example, fix formatting
* pkgng.py: Fix capitalization
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Davíð Steinn Geirsson <david@isnic.is>
Co-authored-by: Felix Fontein <felix@fontein.de>
* postgresql_db: document when pg_restore is used (#588)
* postgresql_db: more precise description for target_opts
* Update plugins/modules/database/postgresql/postgresql_db.py
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* - Redirecting to correct collection
- Removing the plugin and adding changelog and deprecation
* Making suggested changes
* Earlier version on leftovers
* Update changelogs/fragments/cyberarkconjur-removal.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* nmcli: add idemptent support for any kinds of connections
Fixes#481: nmcli reports changed status even if nothing needs to change
- Implement show_connection() to retrieve connection profile from command line
- Parse integer enumeration values in show_connection()
- Convert 'bond.options' to alias shortcuts
- Modify connection only if changes are detected
- Support generic alias in during the property comparison
* nmcli: add idemptent support for any kinds of connections
Add mock object for modification cases when connection state changes
* nmcli: add idempotent support for any kinds of connections
- Add more test cases to check idempotent for each type of connections
- Verify 'changed' and 'failed' in the result of each test
- Append prefixlen for 'ip4' values in test data
- Fix the incorrect 'return_value' of execute_command() in previous mockers
- Ignore the empty string in _compare_conn_params()
- Fix the property key mapping of 'bridge-port.hairpin-mode' for bridge-slave
- Add 'override_options' in the result output for playboot debug
* nmcli: add idempotent support for any kinds of connections
Fix pep8 issues in test_nmcli.py: Comparison to False should be 'not expr'
* nmcli: add idempotent support for any kinds of connections
Support setting 'ipv4.method' or 'ipv6.method' via nmcli if the configuration method changes
* nmcli: add idempotent support for any kinds of connections
Simplify the if statements in show_connection() according to vlours's advice
* nmcli: add idempotent support for any kinds of connections
Fix the list argument comparison method with multiple values.
* nmcli: add idempotent support for any kinds of connections
Use ansible --diff option output to show detailed changes instead of a private return value.
* nmcli: add idempotent support for any kinds of connections
Add changelog fragment for bugfix.
* use Config MacAddress by default instead of Networks
* use Config MacAddress by default instead of Networks - fix typo
* #564 docker_container macaddress - add changelog fragment
* [splunk] Add an option to not fail when the certificate is not valid
Add an boolean option validate_certs to not validate the certificate of
the HTTP Event Collector.
* Add changelog
* Fix using tabs indentation
* Fix post-review - fix changelog and version of the parameter
Co-authored-by: Baptiste Mille-Mathias <baptiste.millemathias@gmail.com>
* airbrake_deployment: Add version param
The aibrake v4 API allows for distinct `version` and `revision` params.
The `revision` param is meant to indicate a revision from the version
control system (such as a Git hash), whereas the `version` param is
meant to be a version number (such as 1.2.3). This is especially
noticeable in the Airbrake UI where revisions are truncated to 7
characters, and used to build GitHub style diff links (such as
689a25edcf...e54dd3a01f).
* Add link to PR in changelog
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add version_added to version param
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add type to version's argument_spec
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Remove all packaging sanity tests to see errors
* fix
* Fix
* Minor fixes
* Fix
* Fix redhat
* Fix redhat_subscription
* Fix redhat_subscription
* Fix redhat_subscription
* Ignore redhat_subscription return-syntax-error
* Remove more ignored sanity tests
* Remove force from xbps argument_spec as it doesn't do anything(?)
* Remove unnecessary sanity test for xbps
* Fix suggestions made by felixfontein
* Better changelog description, fix portage wrong default values
* Fix
* Fix
* Remove root default from urpmi doc
* Fix wrong type of default for booleans
* Add default value as suggested by felixfontein
* Fix changelog
* dont start the service it parameter stopped is true
* add missing changelog fragment
* fix formatting of the changelog fragment
* add condition to disallow the usage of stopped and restarted at the same time
* fix changelog
* pkgng: Add stdout and stderr to response object
To ease debugging if something goes wrong during pkg run.
* pkgng: Fix crash when run with autoremove
Fix crash when run with "autoremove: yes" but no packages
need to be autoremoved.
* Add changelog fragment for pull request 560
* Formatting changes for changelogs/fragments/560-pkgng-add-stdout-and-stderr.yaml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Davíð Steinn Geirsson <david@isnic.is>
Co-authored-by: Felix Fontein <felix@fontein.de>
* filesystem.py: fix xfs growfs
xfs needs to be mounted to be expanted.
Add function to get mountpoint of filesystem.
* Fail if xfs filesystem is not mounted
xfs growfs needs to be executed on a mountpoint. That will be enforced
now by xfsprogs-4.12.
https://bugzilla.redhat.com/show_bug.cgi?id=1477192
* Update changelogs/fragments/33979-xfs_growfs.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* suppress exceptions for optional env variables
* Options handling switched to "get_option" approach
* Put back _raw option for documentation purposes
* Fix url option description
* remove ini section
* Docs fixed
* force rebuild to fix aix tests
* Point returned in order to have full sentence in description
* Add general arguments fix information to changelog fragments
* Add PR link to changelog fragments
Co-authored-by: Felix Fontein <felix@fontein.de>
* Fix port/scheme handlng in case they weren't provided in URL argument
* Add argument type for url
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Denis Savenko <denis.savenko@tonicforhealth.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Allow passing negative numbers to specify partition boundary relative to disk end
Fixes: https://github.com/ansible/ansible/issues/43369
* parted: unit test case, create partition with part_start: -1GiB
* fs_type parameter is not really optional for negative part_start parameter
* Revert "fs_type parameter is not really optional for negative part_start parameter"
This reverts commit 800b1cb00b.
Instead: added notes and documentation about netagive part_start and fs_type.
* include fs_type in negative part_start example
* firewalld: add zone target set
Fixes https://github.com/ansible/ansible/issues/49232
Signed-off-by: Adam Miller <admiller@redhat.com>
* fix sanity tests, add example of zone target setting
Signed-off-by: Adam Miller <admiller@redhat.com>
* test different zone/target combination as we're not hitting default settings
Signed-off-by: Adam Miller <admiller@redhat.com>
* fix enabled values for zone operations
Signed-off-by: Adam Miller <admiller@redhat.com>
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add vpc_uuid option to droplet creation
* Include new vpc_uuid option digital_ocean_droplet
* Remove required, add type for vpc_uuid
Co-authored-by: Felix Fontein <felix@fontein.de>
* Create changelog fragment file
* Include version_added
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Fix the behavior of ipa modules in case IPA_HOST is empty
The expected behavior, when the env is empty, is to
fallback on DNS. Without this fix, if IPA_HOST is empty,
there are different errors, depending on urllib version,
which additionally confuses the user. Example errors:
* host_find: Request failed: <urlopen error no host given>
* Failed to connect to None at port 443: [Errno 111]
Connection refused", "status": -1, "url":
"https:///ipa/session/json
* Add a changelog fragment for IPA_HOST fix
* Update changelogs/fragments/241-fix-ipa-modules-when-ipa_host-empty.yml
Co-authored-by: Sandra McCann <samccann@redhat.com>
Co-authored-by: John R Barker <john@johnrbarker.com>
Co-authored-by: Sandra McCann <samccann@redhat.com>
* Fixes#143, change package parameter from str to list
* remove uneccessary splitting
* add changelog fragment
* fix parameter-list-no-elements validation
* fix documentation
* Fix changelog
* Fix documetation, add example with list of packages
* Update changelogs/fragments/apt_rpm_typefix.yml
Co-authored-by: Alexander Leshkov <lam@arenadata.io>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add "prompt" parameter that allows to specify one or more prompts and optionnally their answer
* Documentation backslash fixes as well as file structure
* Add r prefix to documentation
* Fixed documentation indentation
* Fixed various trailing whitespaces and file structure
* Doc description string fix, the tests thought it was an AnsibleMapping object
* Added elements parameter to argument_spec definition.
* Complete documentation.
* Add bool instead of if else expression
Co-Authored-By: tchernomax <maxime.deroucy@gmail.com>
* Replace _item by a shorter expression as suggested
Co-Authored-By: tchernomax <maxime.deroucy@gmail.com>
* Commit suggestion
Co-Authored-By: Felix Fontein <felix@fontein.de>
* Commit documentation suggestion
Co-Authored-By: Felix Fontein <felix@fontein.de>
* Update changelogs/fragments/29253-pear_add_prompts_parameter.yml
Co-Authored-By: Felix Fontein <felix@fontein.de>
* Update plugins/modules/packaging/language/pear.py
Co-Authored-By: tchernomax <maxime.deroucy@gmail.com>
* Add case where "null" is specified in a list. Improved documentation as well
* Too much caracter removed in documentation
* We now always specify a prompt and a data parameter
* minor documentation change
* Update changelogs/fragments/29253-pear_add_prompts_parameter.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* pear: fix version_added
Co-authored-by: Felix Fontein <felix@fontein.de>
* pear: fix description
Co-authored-by: Veltarn <dante161@gmail.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
* slackpkg: fix matching some special cases in package names.
* Add chagelog/fragments file
* Update changelogs/fragments/505-slackpkg_fix_matching_some_special_cases_in_package_names.yml
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Adjust deprecation versions.
* Remove redirects that are already made in ansible/ansible's ansible_builtin_runtime.yml
* Remove modules that were moved to the google.cloud collection according to ansible/ansible's ansible_builtin_runtime.yml.
* The _info module is in google.cloud.
* The gcp doc_fragment is a copy of the one in google.cloud and is only used by one lookup. Mark as deprecated/internal.
* Remove entries of modules that no longer exist.
* Update ignore.txt.
* Try to fix test.
* Remove debug output.
I spent some time debugging an error, where the unexpected HTTP return code was
reported to be -1. Digging deeper, I found the cause using this patch:
"An unknown error occurred: ~/.netrc access too permissive: access permissions
must restrict access to only the owner"
* Add version_added: 1.0.0 for all new features added before pre-ansible-base.
* Add version_added: 1.0.0 for all new features.
* Next release will be 0.2.0
* Fix error.
* Remove unnecessary warnings.
* Do domain resolution for portal
iscsiadm support domain resolution (ex: iscsiadm -m discovery -t sendtargets -p iscsi.chiehmin.com).
However, open_iscsi module will try to match the portal with discovered results which will never
matched cause the discovered results use IP to represent node.
This patch do portal DNS resolution first to solve this situation.
Signed-off-by: Chieh-Min Wang <chiehminw@synology.com>
* Update changelogs/fragments/461-resolve-domain-for-iscsi-portal.yml
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
To remove a scaleway compute node, one needs to stop it first. This is
handled internally within the module by shutting down before removing.
Shutting down the node transitions it to a "stopping" state, which is
not the "stopped" state we expect. We thus need the transition to
complete so that we can put it in the actual target state (absent, i.e.
delete it).
The mechanism for waiting for such transitions today is controlled by
module parameters, with default to not being enabled at all, which
includes the transition from ([running] -(stopping)-> [stopped]).
Without this chage, in case of a running node, we would shut it down
(transition it to "stopping"), not wait for it complete the transition,
realize that it's not yet stopped and issue a second shut down command
to the api. This would fail with a 400 Bad Request error, "already
stopped".
Reference: https://github.com/ansible/ansible/issues/45740
Reported-by: zwindler
* slackpkg: fix name matching in package installation (#450)
* Escape re parameters and optimize matching as suggested in code review.
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update changelogs/fragments/450-slackpkg-package-matching.yml
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* feature: module dpkg_divert + tests
* try to skip non-deb linux distrib
* use collection namespace in EXAMPLES
* skip unsupported OS/distrib in tasks instead
* tests: remove unskipped distribs
* apply changes suggested by Andersson007
* Remove ANSIBLE_METADATA (no more needed).
* Normalize docstrings (capitalize descriptions, fix styling, use yes/no
booleans).
* fix descriptions
* update DOCUMENTATION
* Drop field 'version_added' (no more needed).
* Add a note about check_mode support.
* use list comprehension
* support diff mode
* Move 'before'/'after' dicts into 'diff' dictionary.
* Set 'diversion' as the actual state (or the state that would be
reached, when in check mode).
* Always return 'diversion' on handled exits (exit_json & fail_json).
* enable 'diff' mode in tests, add missing 'become'
* This is a modified copy of the cisco_spark.py file. The name change is associated with the change of the product name from Cisco Spark to Cisco Webex Teams. In addition, the current version (cisco_spark) does not work due to a name collision with MESSAGE. I had to modify the name from "message" to "webexmsg" in many places in cisco_webex. It works fine in this version.
The original author has been preserved and copied from cisco_spark to cisco_webex.
@drew-russell
The current version of cisco_spark module does not work due to a name collision with MESSAGE. I had to modify the name from "message" to "webexmsg" in many places in cisco_webex.py file. It works fine in this version.
The name change is associated with the change of the product name from Cisco Spark to Cisco Webex Teams.
* cisco_spark rm
* suggested change
* aliases added to in def main funcitons
* sanity check corrections
* addess aliases type to msg_type
* felixfontein requested changes on this pull request.
* Return value change from msg to message.
* plugins/modules/notification/cisco_webex.py validate-modules:invalid-argument-name
added to tests/sanity/ignore-2.10.txt
* add sops lookup plugin
* fix pylint
* fix undefined encrypted_file variable
* decode sops output as text by default
* add variable to control decrypted content print in logs
* use Sops class decryption method
* lookup should return text, use appropriate ansible facility
* use ansible.module_utils._text.to_native
As required by Ansible documentation on [raising errors][raising-errors]
from plugins, use to_native to wrap errors to ensure string compatibility
between Python versions.
[raising-errors]: https://docs.ansible.com/ansible/latest/dev_guide/developing_plugins.html#id3
* use with_items instead of with_file in sops lookup documentation
[with_file][with-file], per Ansible documentation, returns the content of
the file. As sops is not able to decrypt a string by itself but requires
the file is passed as argument, passing the content breaks the lookup
plugin as reported by [here][bug-report].
[with_items][with-items] should be used instead.
[with-file]: https://docs.ansible.com/ansible/2.4/playbooks_loops.html#looping-over-files
[with-items]: https://docs.ansible.com/ansible/2.4/playbooks_loops.html#standard-loops
[bug-report]: https://github.com/ansible/ansible/pull/59639#issuecomment-540803722
* uniform sops exception handling between plugins
* Apply suggestions from code review
Co-Authored-By: Felix Fontein <felix@fontein.de>
* remove sops lookup plugin print option
Is no longer possible to print the decrypted secrets directly from this
plugin, but `debug` module can be used instead.
* add github handle to author
* add setup_sops integration target
* extract sops module
* add lookup_sops integration tests
* use sops module
* Update plugins/module_utils/sops.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/module_utils/sops.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/lookup/sops.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/module_utils/sops.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/module_utils/sops.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update test/integration/targets/lookup_sops/tasks/ubuntu.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/module_utils/sops.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update test/integration/targets/lookup_sops/files/simple.sops.yaml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Adding aliases file
* Emtpy spaces
* Update plugins/lookup/sops.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/lookup/sops.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/lookup/sops.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update test/integration/targets/lookup_sops/tasks/ubuntu.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/lookup/sops.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update test/integration/targets/lookup_sops/tasks/ubuntu.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update test/integration/targets/lookup_sops/tasks/ubuntu.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
* gpg -> gnupg2
* with_items -> loop
* Move error logic to module_utils.
* Make Sops.decrypt() also handle errors and decode output.
* Improve error handling.
* Improve example formatting.
* Reorganize tests.
* Add test.
* Remove version_added.
Co-authored-by: Edoardo Tenani <edoardo.tenani@protonmail.com>
Co-authored-by: Edoardo Tenani <edoardo.tenani@gmail.com>
Co-authored-by: Edoardo T <endorama@users.noreply.github.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Added 'extra_install_args' option to allow extra upgrade/install
Example zypper args for this is
* --allow-vendor-change
* --replacefiles and
* --force-resolution
* Fix comment issue..
* Change extra_install_args option to a list.
Improved doc.
* Update plugins/modules/packaging/os/zypper.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update plugins/modules/packaging/os/zypper.py
Co-authored-by: Felix Fontein <felix@fontein.de>
* Switch from using extra_install_args to individual module options.
* Fix syntax errors and limit 'allow-vendor-change' to 'dist-upgrade'
* Removed un-needed import
* Added changelog fragment
* Added tests for zypper replacefiles and allow_vendor_change options
* Removed dist-upgrade as it changes the test environment.
And it is hard to undo.
* Added proper test of replacefiles zypper option
Buiding two rpm packages containing same file path but with different content.
Making sure we fail to install them without the replacefiles options and that we succeed
using it.
* Make sure to create directory before writing files
* Fix indentation of ignore_errors
* Correct genereated rpm file name
* Improved duplicate file assertions
* Ensure no previous netcat package still exists.
* Corrected naming of example task.
* Fix variable name typo.
* Fix proper duplicate_content access
* Make sure to clean up duplicate rpms after tests.
* Removed debug
* Removed version_added of option allow_vendor_change and replacefiles
Co-authored-by: Felix Fontein <felix@fontein.de>
* add a new module iso_create
* add elements in argument spec
* remove changelog for new module
* change the path of test file
* comment out pip check task in test case
* comment out install pip in test case
* move pip install task and add skip python2.6
The common http api client class used by the scaleway modules only
enables automatic jsonification of the request body if the
"Content-Type" header is application/json. The client only included
"Content-type" in its default set of headers (notice the case
variation).
This caused a KeyError on send() if the caller relied on the default
content-type value.
* kwargs for _update_monitor wasn't corrected to new notification_message param
* forgot to bump a changelog fragment
* Update changelogs/fragments/389-datadog_monitor-corrects-deprecated-message-param.yml
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
* Add validity check for [Driver][IPAddress] else use docker-machine ip command.
* Note why we fallback to the `docker-machine ip <machine name>` command.
* Add changelog fragment.
* Corrected module name in changelog fragment.
Co-authored-by: Ben Roose <ben.roose@wichita.edu>
* gitlab_project_variable: added support for variable_type
* gitlab_project_variable: Added integration tests for variable_type file.
* Changed test case variable name, ansible was masking the output.
* This fixes (#275)
* Migrated PR from https://github.com/ansible/ansible/pull/47768
* Applied requested changes
* Fixed issue with load_file_common_arguments
* Using args list when calling run_commands
* Keytool now reads passwords from stdin
* Fixed PEP8 indentation issues
* parted: consider current partition state even in check_mode
* Update changelogs/fragments/183-parted_check_mode.yml
Co-Authored-By: Andrew Klychkov <aaklychkov@mail.ru>
* Test check_mode considers get_device_info
* fixed pep8 E302: expected 2 blank lines
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
This was using k8S_AUTH_CONTEXT with a lowercase k. That doesn't match
with any of the other K8s stuff so users would probably be confused why
their envvar wasn't working.
* Adjust target directory so that ansible-test knows what to run when filters change.
* Divide by multiple instead of multiplying with product of 1/factor to improve numerical robustness.
* Allow to say what a year or month is (in days).
* Add changelog fragment announcing the time filters.
* Make sure unknown keyword args result in errors.
* Fix formatting screw-up.
* Un-remove wrongly removed ovirt modules and adjust deprecation to Ansible 2.14 (regular 4 version deprecation cycle).
* Update sanity-2.10.txt
* Vendor dependencies from ovirt.ovirt as deprecated, and remove dependency on ovirt.ovirt.
* Use ovirt_facts doc_fragment, and don't add _ovirt_info doc_fragment.
* filter: add new time convert filters
The plugin include:
- to_seconds
- to_minutes
- to_hours
* refactor and extend
* more UX improvements
* Apply suggestions from code review
Co-authored-by: Felix Fontein <felix@fontein.de>
* even more UX improvments
* fix indentation
* fix for py3
* enable aix in ci
* simplify
* add to_months, use 360d as year.
* rearrange tests
* year back to 365 days
Co-authored-by: Felix Fontein <felix@fontein.de>
* add description and hookscript parameters to proxmox LXC container
* fix pep8 E128
* Update plugins/modules/cloud/misc/proxmox.py
Co-Authored-By: Andrew Klychkov <aaklychkov@mail.ru>
* Update plugins/modules/cloud/misc/proxmox.py
Co-Authored-By: Andrew Klychkov <aaklychkov@mail.ru>
* add example for proxmox hookscript and description
* add changelogs fragment for PR #245
* set hookscript type
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
* Add info command to redis module
* Fix sanity test
* Create a separate redis_info module
* Type of arguments in documentation was determined
* Add redis_info test
* Fix sanity test
* Add integration test
* Add integration platforms (centos7/8,fedora30/31,opensuse15+py2,ubuntu1604/1804)
* Add centos6 support
* Fix suggestions
* Add contact email
* Refactor postgresql_idx to simplify code
Have refactored the postgresql_idx module to:
* Use the class schema in the drop function rather than a passed in one
* Remove the if/else and just return the bool in the drop and create
functions
* Refactor postgresql_ext module
Have refactored the postgresql_ext module to:
* Remove an unused exception
* Simplify logic in the create and update functions
* Use list comprehension to simplify getting the available version
* Refactor postgresql_user_obj_stat_info module
Have refactored the postgresql_user_obj_stat_info module to:
* Simplify the logic in some of the functions
* Reduce duplicate code
* Add changelog fragment