1
0
Fork 0
mirror of https://github.com/ansible-collections/community.general.git synced 2024-09-14 20:13:21 +02:00
Commit graph

157 commits

Author SHA1 Message Date
Felix Fontein
c63dc624b7
Fix snap module, and module helper behavior on rc != 0 in output (#2912)
* Try some snap fixes.

* Fix logic.

* Try to run tests privileged.

* Prevent failure on rc != 0.

* Fix formatting.

* Revert "Try to run tests privileged."

This reverts commit 77ca91f502.

* Try to run tests on RHEL instead.

* Make sure that snapd is running.

* Add changelog fragment.

* str -> to_native.

* Make sure that installed binary is actually found.

* Add check mode tests.

* Mention #2835 in changelog fragment.
2021-07-01 18:53:48 +02:00
Martin
debb15efbe
pacman: Descriptive state documentation (#2894)
* pacman: Descriptive state documentation

* Update plugins/modules/packaging/os/pacman.py

Co-authored-by: Felix Fontein <felix@fontein.de>

Co-authored-by: Martin Rys <martin@rys.pw>
Co-authored-by: Felix Fontein <felix@fontein.de>
2021-06-27 18:47:11 +02:00
Amin Vakil
0a9cf38118
yum_versionlock: fix idempotency when using wildcard (asterisk) (#2787)
* Check idempotency on yum_versionlock

* Lock packages wildcard

* fix formatting

Co-authored-by: Felix Fontein <felix@fontein.de>

* Fix formatting in asserts

* little closer but not still there

* Import fnmatch

* Change check_mode logic

* Add check_mode for add

* Add changelog

Co-authored-by: Felix Fontein <felix@fontein.de>
2021-06-27 16:40:49 +02:00
Felix Fontein
fafabed9e6
Replace ansible.module_utils._text by ansible.module_utils.common.text.converters (#2877)
* Replace ansible.module_utils._text by ansible.module_utils.common.text.converters.

* Also adjust tests.
2021-06-26 23:59:11 +02:00
Stanislav German-Evtushenko
ce35d88094
gem_module: Add bindir option (#2837)
* gem_module: Add bindir option

This option allows to specify directory to install executables, e.g.
`/home/user/bin` or `/home/user/.local/bin`. This comes especially handy
when used with user_install option as the default path of executables is
not in PATH.

* Update changelogs/fragments/gem_module_add_bindir_option.yml

Co-authored-by: Ajpantuso <ajpantuso@gmail.com>

* gem_module: Integration tests for bindir option

* gem_module: Update Integration tests for bindir option

* gem_module: Update Integration tests for bindir option

Make sure gist is not installed system-wide prior the tests

* Revert "gem_module: Update Integration tests for bindir option"

This reverts commit 04eec6db27.

* Do not check "install_gem_result is changed" for ansible develop on openSUSE

* Revert "Do not check "install_gem_result is changed" for ansible develop on openSUSE"

This reverts commit 48ecb27889.

* gem_module: Use --norc to avoid surprises

Run install and uninstall actions with `--norc`. This way ansible has
more control over the way gems are installed.

* Revert "gem_module: Use --norc to avoid surprises"

This reverts commit 66f40bcfe6.

* gem_module: bindir - Ignore openSUSE Leap

* Update plugins/modules/packaging/language/gem.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* gem_module: Use --norc to avoid surprises

Run install and uninstall actions with `--norc` when supported (rubygems >= 2.5.2).
This way ansible has more control over the way gems are installed.

* Try distutils.version instead of packaging

* ver is an list, not string

* ver is not list either but tuple

* Update changelogs/fragments/gem_module_add_bindir_option.yml

Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>

* ver can be None (when can this happen?)

* gem: Add norc option

* Apply suggestions from code review

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update plugins/modules/packaging/language/gem.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* Use tuples to compare versions

* Apply suggestions from code review

Co-authored-by: Amin Vakil <info@aminvakil.com>

* Update plugins/modules/packaging/language/gem.py

Co-authored-by: Amin Vakil <info@aminvakil.com>

* lost norc option check is back

* Move handling norc option to separate function

* cosmetic

* fix for the previos commit

* Apply suggestions from code review

Co-authored-by: Felix Fontein <felix@fontein.de>

* Cache result of get_rubygems_version

Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
Co-authored-by: Amin Vakil <info@aminvakil.com>
2021-06-21 19:53:03 +12:00
Shahar Mor
1ed4394c5e
npm - fix updating version specific modules (#2830)
* npm - fix updating version specific modules

if a version specific module is used, the comparison will be used with the version and not only by name

* Update plugins/modules/packaging/language/npm.py

Co-authored-by: Ajpantuso <ajpantuso@gmail.com>

* Update changelogs/fragments/2830-npm-version-update.yml

Co-authored-by: Ajpantuso <ajpantuso@gmail.com>

* Update changelogs/fragments/2830-npm-version-update.yml

Co-authored-by: Amin Vakil <info@aminvakil.com>

* Update changelogs/fragments/2830-npm-version-update.yml

Co-authored-by: Amin Vakil <info@aminvakil.com>

Co-authored-by: Ajpantuso <ajpantuso@gmail.com>
Co-authored-by: Amin Vakil <info@aminvakil.com>
2021-06-18 22:08:46 +02:00
Alexei Znamensky
3997d5fcc8
flatpak - allow to add/remove multiple flatpaks at once (#2521)
* reviving flatpack PR

* added changelog fragment

* adjusted integration tests per PR

* adjusted examples to use the full name of the module

* Use new local artifacts.

* Re-add StrictVersion import.

* Try to clean up PR.

* ...

* Use original name in installed/not installed list.

* More fixes.

* Work around flatpak bug.

* Fix bug I introduced.

Co-authored-by: Felix Fontein <felix@fontein.de>
2021-06-17 08:00:49 +02:00
Tong He
2f2f384b4e
redhat_subscription: Add server_prefix and server_port as supported arguments (#2779)
* Add server_prefix and server_port as supported arguments for the redhat_subscription module.

* Adjust the argument sequence in the test case to be consistent with the original code in line 364 in redhat_subscription.py and add the changelog fragment.

* Grammatical changes such as adding full stops and using 'an HTTP' instead of 'a HTTP'.

* Commit the suggested changelog update.

Co-authored-by: Amin Vakil <info@aminvakil.com>

* Fix typo.

Co-authored-by: Amin Vakil <info@aminvakil.com>

Co-authored-by: Amin Vakil <info@aminvakil.com>
2021-06-16 11:31:54 +04:30
Felix Fontein
bb37b67166
flatpak: add tests in CI, add no_dependencies parameter (#2751)
* Similar version restrictions than flatpak_remote tests.

* ...

* Try to work around missing dependencies.

* Revert "Try to work around missing dependencies."

This reverts commit 66a4e38566.

* Add changelog.

* App8 -> App2; make sure that there are two apps App1 and App2.

* Fix forgotten variabe.

* Remove test notices.

* Seems like flatpak no longer supports file:// URLs.

The tests would need to be rewritten to offer the URL via http:// instead.

* Try local HTTP server for URL tests.

* ...

* Lint, add status check.

* Add boilerplate.

* Add 'ps aux'.

* Surrender to -f.

* Work around apparent flatpak bug.

* Fix YAML.

* Improve condition.

* Make sure test reruns behave better.
2021-06-08 08:46:20 +02:00
Amin Vakil
94a53adff1
zypper_repository: fix idempotency on adding repo with releasever and basearch variables (#2722)
* zypper_repository: Check idempotency on adding repo with releasever

* Name required when adding non-repo files.

* Initial try to fix releasever

* Replace re.sub with .replace

* name releaseverrepo releaseverrepo

* Change  to ansible_distribution_version for removing repo

* improve asserts format

* add changelog

* Fix changelog formatting

Co-authored-by: Felix Fontein <felix@fontein.de>

* improve command used for retrieving releasever variable

Co-authored-by: Felix Fontein <felix@fontein.de>

* add basearch replace

* Add basearch to changelog fragment

* Check for releasever and basearch only when they are there

Co-authored-by: Felix Fontein <felix@fontein.de>
2021-06-08 08:23:32 +02:00
George Rawlinson
5ddf0041ec
add module pacman_key (#778)
* add module pacman_key

* add symlink and fix documentation for pacman_key

* documentation fix for pacman_key

* improve logic around user input

* Update plugins/modules/packaging/os/pacman_key.py

Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>

* Update plugins/modules/packaging/os/pacman_key.py

Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>

* Update plugins/modules/packaging/os/pacman_key.py

Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>

* Update plugins/modules/packaging/os/pacman_key.py

Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>

* Update plugins/modules/packaging/os/pacman_key.py

Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>

* Update plugins/modules/packaging/os/pacman_key.py

Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>

* Update plugins/modules/packaging/os/pacman_key.py

Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>

* Update plugins/modules/packaging/os/pacman_key.py

Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>

* Update plugins/modules/packaging/os/pacman_key.py

Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>

* Update plugins/modules/packaging/os/pacman_key.py

Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>

* Improve parameter checking

required_one_of=[] is neat.

Co-authored-by: Alexei Znamensky

* Revert "Improve parameter checking"

This reverts commit 044b0cbc85.

* Simplify a bunch of code.

* fix typos pointed out by yan12125

* replaced manual checks with required-if invocation

* added default keyring to documentation

* some initial tests

* updated metadata

* refactored to make sanity tests pass

* refactor to make sanity tests pass ... part deux

* refactor: simplify run_command invocations

* test: cover check-mode and some normal operation

* docs: fix grammatical errors

* rip out fingerprint code

a full length (40 characters) key ID is equivalent to the fingerprint.

* refactor tests, add a couple more

* test: added testcase for method: data

* Update plugins/modules/packaging/os/pacman_key.py

Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>

* docs: correct yaml boolean type

Co-authored-by: Felix Fontein <felix@fontein.de>

Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
2021-06-04 07:08:54 +02:00
Gene Gotimer
ca1506fb26
Added SHA1 option to maven_artifact (#2662)
* Added SHA1 option

* Add changelog fragment

* Update plugins/modules/packaging/language/maven_artifact.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update plugins/modules/packaging/language/maven_artifact.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* Combined hash functions

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update plugins/modules/packaging/language/maven_artifact.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update plugins/modules/packaging/language/maven_artifact.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* Removed unused functions (rolled into _local_checksum)

* Update changelogs/fragments/2661-maven_artifact-add-sha1-option.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

Co-authored-by: Felix Fontein <felix@fontein.de>
2021-06-01 22:06:26 +02:00
Amin Vakil
c3cab7c68c
composer: add composer_executable (#2650)
* composer: add composer_executable

* Add changelog

* Improve documentation thanks to felixfontein

Co-authored-by: Felix Fontein <felix@fontein.de>

Co-authored-by: Felix Fontein <felix@fontein.de>
2021-05-28 12:49:29 +02:00
Tong He
593d622438
rhsm_release: Fix the issue that rhsm_release module considers 8, 7Client and 7Workstation as invalid releases (#2571)
* rhsm_release: Fix the issue that rhsm_release module considers 8, 7Client and 7Workstation as invalid releases.

* Fix the unit test error: The new release_matcher could pass a wider range of patterns but that would not cause extra issue to the whole module.

* Submit the changelog fragment.

* Update changelogs/fragments/2571-rhsm_release-fix-release_matcher.yaml

Co-authored-by: Amin Vakil <info@aminvakil.com>

Co-authored-by: Amin Vakil <info@aminvakil.com>
2021-05-24 21:59:52 +02:00
Andre Lehmann
c4624d3ad8
pacman: add 'executable' option to use an alternative pacman binary (#2524)
* Add 'bin' option to use an alternative pacman binary

* Add changelog entry

* Incorporate recommendations

* Update plugins/modules/packaging/os/pacman.py

* Apply suggestions from code review

Co-authored-by: Felix Fontein <felix@fontein.de>
2021-05-18 12:59:11 +02:00
Alexei Znamensky
345d5f2dfa
snap - revamp + implementing enabled/disabled states (#2411)
* revamp of snap module

* added changelog fragment

* fixed description

* Update changelogs/fragments/2411-snap-revamp-enabled-disabled-states.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

Co-authored-by: Felix Fontein <felix@fontein.de>
2021-05-17 14:03:15 +02:00
Mike Russell
7386326258
Small Documentation Example Of Cask Leveraging (#2462)
* Small Documentation Example Of Cask Leveraging

- Just a lil' demo showing that we can utilize homebrew/cask/foo syntax
for given name of package to grab associated cask pacakge

Resolves: patch/sml-doc-example-update

* Slight Documentation Example Edit

- adjusting documentation example to provide better info surrounding installing
a given formula from brew via cask

Resolves: patch/sml-doc-example-update

* Small Edits To Make PEP8 Happy

- format code with autopep8 in vs code

Resolves: patch/sml-doc-example-update

* Only Making Small PEP8 Change

- reverting previous mass PEP8 format, focus on trimming whitespace on
doc example entry

Resolves: patch/sml-doc-example-update

* Remove Trailing Whitespace PEP8

- removed trailing whitespace on doc example chunk

Resolves: patch/sml-doc-example-update
2021-05-08 11:58:55 +02:00
Daniel Werner
cd957fae4c
Fix #2373 - TypeError: a bytes-like object is required, not 'str' (#2375)
* Fix #2373

* Changelog fragment for #2373

* Update changelogs/fragments/2373-svr4pkg-fix-typeerror.yml

Co-authored-by: Amin Vakil <info@aminvakil.com>

* Update changelogs/fragments/2373-svr4pkg-fix-typeerror.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

Co-authored-by: Amin Vakil <info@aminvakil.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
2021-05-03 07:25:08 +02:00
George Angelopoulos
eb455c69a2
composer: --no-interaction when discovering available options (#2348)
The composer module always uses the no-interaction option if it
discovers it _after_ calling "composer help ..." but not on the help
call itself. The lack of this option caused composer to not exit when
called through the ansible module.

The same example command when ran interactively does not prompt for user
interaction and exits immediately. It is therefore currently unknown why
the same command hangs when called through the ansible composer module
or even directly with the command module.

Example command which hangs:
php /usr/local/bin/composer help install --format=json
2021-05-01 18:23:14 +02:00
Alexei Znamensky
ec9c23437c
cpanm - revamp module (#2218)
* copying from the previous branch

* passing sanity - docs incomplete

* adjusted parameter name

* adjusted unit tests for mode=new

* adjusted integration tests for mode=new

* added 'russoz' to list of maintainers for cpanm

* Update tests/integration/targets/cpanm/tasks/main.yml

* Update tests/integration/targets/cpanm/tasks/main.yml

* ensuring backward compatibility + tests

* added changelog fragment

* version for new parameter and adjusted example

* typo and formatting

* Update plugins/modules/packaging/language/cpanm.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update plugins/modules/packaging/language/cpanm.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update plugins/modules/packaging/language/cpanm.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* multiple changes

- some fixes from PR
- supporting tests
- integration is no longer unsupported => destructive, should run on
  apt- and rpm-based systems only

* only run integration tests in redhat-family > v7 or debian-family

Co-authored-by: Felix Fontein <felix@fontein.de>
2021-04-18 10:55:47 +02:00
Amin Vakil
fa13826273
npm: Add no_bin_links option (#2146)
* Add no-bin-links option to npm

* Add changelog

* Fix changelog format

* Add integration test

* Change node package from thelounge to ncp
2021-04-11 05:58:48 +02:00
Alexei Znamensky
b97e31dd55
rewritten as list literals (#2160)
* rewritten as list literals

* added changelog fragment
2021-04-05 09:22:06 +02:00
Alexei Znamensky
d92d0632eb
fixed calls to list.extend() (#2161)
* fixed calls to list.extend()

* added changelog fragment

* Update changelogs/fragments/2161-pkgutil-list-extend.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

Co-authored-by: Felix Fontein <felix@fontein.de>
2021-04-04 23:38:59 +02:00
Stefan Richter
e7a0a12c3f
Bugfix: Respect PATH env variable in zypper modules (#2094)
* Bugfix: Respect PATH env variable in zypper modules

* Improve changelogs/fragments/2094-bugfix-respect-PATH-env-variable-in-zypper-modules.yaml

Co-authored-by: Felix Fontein <felix@fontein.de>

Co-authored-by: Felix Fontein <felix@fontein.de>
2021-03-25 22:30:35 +01:00
Matthias Dellweg
de8e2a83e2
Add a Pulp 2 related note to pulp_repo (#2096) 2021-03-24 17:48:24 +01:00
Felix Fontein
36daa7c48e
Remove deprecated features scheduled for removal in 3.0.0 (#1926)
* Remove deprecated features.

* Remove ignore.txt entries.

* Update changelogs/fragments/remove-deprecated-features.yml

Co-authored-by: Joe Adams <adams10301@gmail.com>

Co-authored-by: Joe Adams <adams10301@gmail.com>
2021-03-09 21:23:20 +01:00
Alexei Znamensky
7425e9840d
Deprecation of parameters triggering the parameter-invalid sanity-check (#1927)
* fixed validation-modules for plugins/modules/packaging/language/composer.py

* fixed validation-modules for plugins/modules/packaging/os/apt_rpm.py

* fixed validation-modules for plugins/modules/packaging/os/homebrew.py

* fixed validation-modules for plugins/modules/packaging/os/homebrew_cask.py

* fixed validation-modules for plugins/modules/packaging/os/opkg.py

* fixed validation-modules for plugins/modules/packaging/os/pacman.py

* fixed validation-modules for plugins/modules/packaging/os/slackpkg.py

* fixed validation-modules for plugins/modules/packaging/os/urpmi.py

* fixed validation-modules for plugins/modules/packaging/os/xbps.py

* fixed validation-modules for plugins/modules/source_control/github/github_deploy_key.py

* fixed validation-modules for plugins/modules/system/puppet.py

* added changelog fragment

* adjustments from PR + fixes in changelog frag

* fixed deprecation of param "show_diff" in module "puppet"

* Update changelogs/fragments/1927-removed-parameter-invalid.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update plugins/modules/system/puppet.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* removed unnecessary ignore lines, adjustment in changelog frag

* no need to explicitly call deprecate() when param marked for removal

* Update changelogs/fragments/1927-removed-parameter-invalid.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

* Adjustments in changelog fragment, per PR

* bumping deprecation to 7.0.0

Co-authored-by: Felix Fontein <felix@fontein.de>
2021-03-05 08:17:36 +01:00
Amin Vakil
811b609b05
yum_versionlock: do lock/unlock concurrently (#1912)
* Change all packages at once in yum_versionlock module

* Re-enable tests

* Convert package list to packages string

* Fix module

* Change variable name to make it appropriate

* Fix module check_mode

* Revert "Fix module" and apply felixfontein suggestion

This reverts commit 5936da3198.

* Rename package to packages

* Only change packages which are needed

* Ignore if list is empty

* Add changelog
2021-02-26 23:16:40 +01:00
Alexei Znamensky
76d9fe4ec6
Tidy up sanity checks (2021/Batch 3 - who's counting) (#1885)
* fixed validation-modules for plugins/modules/packaging/language/pip_package_info.py

* fixed validation-modules for plugins/modules/packaging/language/maven_artifact.py

* fixed validation-modules for plugins/modules/packaging/language/bundler.py

* fixed validation-modules for plugins/modules/notification/pushbullet.py

* fixed validation-modules for plugins/modules/monitoring/sensu/sensu_handler.py

* fixed validation-modules for plugins/modules/monitoring/sensu/sensu_check.py

* fixed validation-modules for plugins/modules/monitoring/sensu/sensu_client.py

* fixed validation-modules for plugins/modules/monitoring/icinga2_host.py

* fixed validation-modules for plugins/modules/monitoring/datadog/datadog_monitor.py

* fixed validation-modules for plugins/modules/monitoring/datadog/datadog_event.py

* fixed validation-modules for plugins/modules/clustering/znode.py

* fixed validation-modules for plugins/modules/clustering/etcd3.py

* fixed validation-modules for plugins/modules/clustering/consul/consul_session.py

* fixed validation-modules for plugins/modules/clustering/consul/consul_kv.py

* fixed validation-modules for plugins/modules/clustering/consul/consul.py

* fixed validation-modules for plugins/modules/cloud/profitbricks/profitbricks.py

* fixed validation-modules for plugins/modules/cloud/profitbricks/profitbricks_volume.py

* fixed validation-modules for plugins/modules/cloud/packet/packet_sshkey.py

* fixed validation-modules for plugins/modules/cloud/oneandone/oneandone_server.py

* fixed validation-modules for plugins/modules/cloud/oneandone/oneandone_private_network.py

* fixed validation-modules for plugins/modules/cloud/oneandone/oneandone_monitoring_policy.py

* fixed validation-modules for plugins/modules/cloud/oneandone/oneandone_load_balancer.py

* fixed validation-modules for plugins/modules/cloud/oneandone/oneandone_firewall_policy.py

* fixed validation-modules for plugins/modules/cloud/webfaction/webfaction_app.py

* fixed validation-modules for plugins/modules/cloud/webfaction/webfaction_db.py

* fixed validation-modules for plugins/modules/cloud/webfaction/webfaction_domain.py

* fixed validation-modules for plugins/modules/cloud/webfaction/webfaction_mailbox.py

* fixed validation-modules for plugins/modules/cloud/webfaction/webfaction_site.py

* fixed validation-modules for plugins/modules/remote_management/lxca/lxca_cmms.py

* fixed validation-modules for plugins/modules/remote_management/lxca/lxca_nodes.py

* missed one "elements" in sensu_handler

* Tidy up batch of sanity checks ignore lines

* missed lines in ignore-2.9.txt

* fixed validation-modules for plugins/modules/clustering/consul/consul_acl.py

* Update ignore-2.9.txt

Removed consul_acl.py from ignore-2.9.txt

* Apply suggestions from code review

Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>

* Update plugins/modules/notification/pushbullet.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update plugins/modules/cloud/oneandone/oneandone_monitoring_policy.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* added changelog fragment

* Update plugins/modules/cloud/oneandone/oneandone_monitoring_policy.py

* Update changelogs/fragments/1885-sanity-check-fixes-batch3.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
2021-02-26 11:37:23 +01:00
Alexei Znamensky
434f383ae9
fixed Python 3 keys() usage (#1861)
* fixed python3 keys()

* added changelog fragment

* Update plugins/modules/cloud/spotinst/spotinst_aws_elastigroup.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update plugins/cache/redis.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* rolledback redis.py per PR

* Update plugins/modules/monitoring/sensu/sensu_check.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* removed unnecessary ignore lines

* adding memcached and one case in redis is indeed necessary

* Update changelogs/fragments/1861-python3-keys.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update changelogs/fragments/1861-python3-keys.yml

* Update changelogs/fragments/1861-python3-keys.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

Co-authored-by: Felix Fontein <felix@fontein.de>
2021-02-23 23:19:27 +01:00
Alexei Znamensky
f33323ca89
Tidy up validate-modules:parameter-list-no-elements (batch 1) (#1795)
* fixed validation-modules for plugins/modules/storage/netapp/na_ontap_gather_facts.py

* fixed validation-modules for plugins/modules/source_control/gitlab/gitlab_runner.py

* fixed validation-modules for plugins/modules/packaging/os/redhat_subscription.py

* fixed validation-modules for plugins/modules/notification/twilio.py

* fixed validation-modules for plugins/modules/notification/slack.py

* fixed validation-modules for plugins/modules/notification/sendgrid.py

* fixed validation-modules for plugins/modules/notification/rocketchat.py

* fixed validation-modules for plugins/modules/notification/office_365_connector_card.py

* fixed validation-modules for plugins/modules/notification/nexmo.py

* fixed validation-modules for plugins/modules/notification/mail.py

* fixed validation-modules for plugins/modules/net_tools/omapi_host.py

* fixed validation-modules for plugins/modules/net_tools/nsupdate.py

* fixed validation-modules for plugins/modules/net_tools/dnsimple.py

* fixed validation-modules for plugins/modules/monitoring/pagerduty.py

* fixed validation-modules for plugins/modules/monitoring/librato_annotation.py

* fixed validation-modules for plugins/modules/identity/onepassword_info.py

* fixed validation-modules for plugins/modules/identity/keycloak/keycloak_client.py

* fixed validation-modules for plugins/modules/files/xml.py

* fixed validation-modules for plugins/modules/cloud/softlayer/sl_vm.py

* fixed validation-modules for plugins/modules/cloud/smartos/vmadm.py

* fixed validation-modules for plugins/modules/cloud/pubnub/pubnub_blocks.py

* fixed validation-modules for plugins/modules/cloud/packet/packet_device.py

* fixed validation-modules for plugins/modules/cloud/lxd/lxd_container.py

* fixed validation-modules for plugins/module_utils/oracle/oci_utils.py

* fixed validation-modules for plugins/doc_fragments/oracle_creatable_resource.py

* Tidy up validate-modules:parameter-list-no-elements for some modules

* fixed validation-modules for plugins/modules/monitoring/statusio_maintenance.py

* Fixed pending issues from CI validation

* Fixed xml module elements for add_children & set_children

* added changelog fragment

* typo

* fix wording in changelog frag
2021-02-16 07:11:37 +01:00
Felix Fontein
e9551df5ed
Update CI (#1782)
* Update targets for CI for devel branch; move some targets to stable-2.10.

* Skipping test on RHEL 8.3 (it is already skipped on RHEL 8.2).

* Linting.

* Shut 2.9/2.10 pylint complaints up.
2021-02-11 10:24:58 +01:00
Felix Fontein
29bd5a9486
Fix a bunch of potential security issues (secret leaking) (#1736)
* Fix a bunch of potential security issues (secret leaking).

* oneandone_server was already ok.

* Add more parameters for pagerduty_alert.

* Add more no_log=True.
2021-02-08 16:33:18 +01:00
Abhijeet Kasurde
d0f097c871
homebrew_tap: Add support for brew search path (#1708)
* homebrew_tap: Add support for brew search path

User can specify search path for brew executable.

Fixes: #1702

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>

* Change version

Co-authored-by: Felix Fontein <felix@fontein.de>

Co-authored-by: Felix Fontein <felix@fontein.de>
2021-02-01 08:42:32 +01:00
Silvie Chlupova
f3e640d5a0
New module: Add copr module (#1592)
* New module: Add copr module

* Update plugins/modules/packaging/os/copr.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>
2021-01-27 19:30:03 +01:00
Anatoly Pugachev
2a53edd9bc
Add default brew search path for non-Intel / Apple silicon hardware (#1679)
* Add default brew search path for non-Intel / Apple silicon hardware

* add changelog fragment

* Update 1679-homebrew_search_path.yml

fix for double-ticks in yaml/rst format

* missing dots and brackets
2021-01-26 06:56:24 +01:00
Abhijeet Kasurde
a9c64655de
npm - handle json decode exception (#1625)
* Provide a user friendly message by handling json decode
  exception rather than providing a stacktrace

Fixes: #1614

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2021-01-14 14:18:41 +01:00
Abhijeet Kasurde
df1fa397db
homebrew_tap: Return error message to user (#1603)
* When module fails return meaningful error message to user
  returned by homebrew-tap command.
* Doc update

Fixes: #1411

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2021-01-12 12:46:19 +01:00
Abhijeet Kasurde
e16029db64
rpm_ostree_pkg: new module (#357)
* rpm_ostree_pkg: new module

Added functionality to manage overlay packages using
rpm-ostree command.

Signed-off-by: Dusty Mabe <dusty@dustymabe.com>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>

* Update plugins/modules/packaging/os/rpm_ostree_pkg.py

Co-authored-by: Felix Fontein <felix@fontein.de>

Co-authored-by: Felix Fontein <felix@fontein.de>
2021-01-11 09:47:22 +03:00
Johannes Petz
df9f0741b5
Legacy Python certificate validation fixed (#470)
* Legacy Python certificate validation fixed

* added changelog fragment

* removed blank line for sanity checks

* Update changelogs/fragments/470-spacewalk-legacy-python-certificate-validation.yaml

Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>

* Update changelogs/fragments/470-spacewalk-legacy-python-certificate-validation.yaml

Co-authored-by: jpe <petz.johannes@afb.de>
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
2021-01-03 11:15:51 +01:00
Jianhao Tan
ed813176ce
updated deprecated homebrew cask commands (#1481)
* updated deprecated homebrew cask commands

* added methods for brew version deprecation check

* added comments and changelog fragment

* added unit test for version comparison

* switch to use disutils LooseVersion for version comparison

* updated changelog message and minor refactor for building brew command based on version

* added caching logic for retrieval of brew version and updated PR changelog yaml

* Update changelogs/fragments/1481-deprecated-brew-cask-command.yaml

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update plugins/modules/packaging/os/homebrew_cask.py

* Update plugins/modules/packaging/os/homebrew_cask.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update plugins/modules/packaging/os/homebrew_cask.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* switch to use subprocess.check_output instead of subprocess.run

* replace subprocess with run_command

* removed unused subprocess import

* removed error handling logic to depend on check_rc=True instead

Co-authored-by: Felix Fontein <felix@fontein.de>
2020-12-31 19:13:21 +01:00
Dr. Nick
68dec29df3
rhn_register: added force option to allow forced registering (#1454) (#1455)
* rhn_register: added force option to allow forced registering (#1454)

* rhn_register: added disable=bad-option-value to pylint disables for backwards compat

* rhn_register: including version_added for force parameter

Co-authored-by: Felix Fontein <felix@fontein.de>

* [1455] added changelog fragment

* removed unnecessary pylint disables

* Updated changelogs/fragments/1455-rhn-register-force.yml to have issue # instead of PR #

Co-authored-by: Amin Vakil <info@aminvakil.com>

Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Amin Vakil <info@aminvakil.com>
2020-12-08 13:12:04 +01:00
Jean-Pierre Matsumoto
b80854ff50
Fix #1435: mas : Fix "invalid literal" when no app (#1436)
* Fix #1435: mas : Fix "invalid literal" when no app

* Add changelog fragment

* Update changelogs/fragments/1436-mas-fix-no-app-installed.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

Co-authored-by: Felix Fontein <felix@fontein.de>
2020-12-04 09:17:42 +01:00
Amin Vakil
47371041c7
yum_versionlock: new module (#1405)
* new module: yum_versionlock

* Removed redundant logic
* Added check_mode support
* Updated examples
* Updated documentation

Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
Co-authored-by: Erik-jan Riemers <riemers@binkey.nl>

* Update plugins/modules/packaging/os/yum_versionlock.py

Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>

* Fix version_added

* Add module symlink

* Fix symlink

* Improve documentation formatting by Anderssoon007

Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>

* Improve documentation formatting by Anderssoon007

Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>

* Improve documentation

* Add notes section

* check_mode is supported

* Initial integration test

* Change pkg to name

* Do the tests only when there is something to update

* Ignore CentOS 6

* Fix

* Do not update obsolete packages

* yum -q versionlock list does not show anything in CentOS 8

* Various suggestions by Andersson007

Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>

* Apply suggestions from felixfontein review

Co-authored-by: Felix Fontein <felix@fontein.de>

* returned always

* Apply felixfontein suggestion

Co-authored-by: Felix Fontein <felix@fontein.de>

* Fix RETUNRED values returned

* Change default from present to locked

* Remove locked, unlocked states

* change locked/unlocked to present/absent in integration tests

Co-authored-by: Felix Fontein <felix@fontein.de>

* Fix module short_description formatting

* Add myself as co-author

Co-authored-by: Erik-jan Riemers <riemers@binkey.nl>
Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
Co-authored-by: Felix Fontein <felix@fontein.de>
2020-12-03 20:00:49 +01:00
Amin Vakil
dc60e71fd5
Add no-optional flag to npm (#1428)
* Add no-optional flag to npm

* Add changelog

* Oops

* Add no_optional to Npm class
2020-12-01 21:13:15 +00:00
Alexei Znamensky
ae0d3cb090
Tidy up validate-modules:no-default-for-required-parameter and other cases (#1423)
* Fixed validate-modules:mutually_exclusive-unknown for plugins/modules/packaging/os/redhat_subscription.py

* fixed validation-modules for plugins/modules/cloud/lxd/lxd_container.py

* fixed validation-modules for plugins/modules/web_infrastructure/sophos_utm/utm_network_interface_address.py

* fixed validation-modules for plugins/modules/cloud/opennebula/one_host.py

* fixed validation-modules for plugins/modules/cloud/opennebula/one_image_info.py

* fixed validation-modules for plugins/modules/cloud/opennebula/one_image.py

* fixed validation-modules for plugins/modules/cloud/opennebula/one_service.py

* fixed validation-modules for plugins/modules/cloud/opennebula/one_vm.py

* fixed validation-modules for plugins/modules/net_tools/cloudflare_dns.py

* fixed validation-modules for plugins/modules/net_tools/ip_netns.py

* fixed validation-modules for plugins/modules/net_tools/ipinfoio_facts.py

* fixed validation-modules for plugins/modules/net_tools/netcup_dns.py

* fixed validation-modules for plugins/modules/remote_management/wakeonlan.py

* added types to plugins/modules/remote_management/stacki/stacki_host.py but still cannot remove ignore line

* added a couple of FIXME comments

* fixed validation-modules for plugins/modules/remote_management/manageiq/manageiq_provider.py

* fixed validation-modules for plugins/modules/notification/rocketchat.py

* fixed validation-modules for plugins/modules/monitoring/bigpanda.py

* fixed validation-modules for plugins/modules/identity/keycloak/keycloak_client.py

* fixed validation-modules for plugins/modules/identity/keycloak/keycloak_clienttemplate.py

* fixed validation-modules for plugins/modules/cloud/univention/udm_user.py

* fixed validation-modules for plugins/modules/cloud/univention/udm_group.py

* fixed validation-modules for plugins/modules/cloud/spotinst/spotinst_aws_elastigroup.py

* fixed validation-modules for plugins/modules/cloud/smartos/imgadm.py

* fixed validation-modules for plugins/modules/cloud/profitbricks/profitbricks_nic.py

* fixed validation-modules for plugins/modules/cloud/ovirt/ovirt_external_provider_facts.py

* Tidy up validate-modules ignores no-default-for-required-parameter + couple of other cases

* Added changelog frag

* fixed validation-modules for plugins/modules/cloud/centurylink/clc_alert_policy.py

* fixed validation-modules for plugins/modules/cloud/centurylink/clc_firewall_policy.py

* fixed validation-modules for plugins/modules/cloud/lxd/lxd_profile.py

* Typos and small fixes

* fixed validation-modules for plugins/modules/net_tools/ldap/ldap_passwd.py

* Typos and small fixes, part 2

* Fixes from PR comments

* Update plugins/modules/cloud/profitbricks/profitbricks_nic.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* Rolled back the mutually-exclusive-unknown in redhat_subscription

* Update changelogs/fragments/1423-valmod_multiple_cases.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

Co-authored-by: Felix Fontein <felix@fontein.de>
2020-12-01 21:28:40 +01:00
Jean-Pierre Matsumoto
db61a899d5
mas : Add example using PATH: /usr/local/bin (#1424)
Use of "environement" is required when mas is installed with
homebrew. I suppose most of people use homebrew.
2020-12-01 20:32:14 +01:00
Dan Jackson
d669e2b60d
Fix macports package present/active detection (#1308)
* Fix typo in redhat_subscription testcase

* Fix macports state=present matching against the wrong package name

Previous implementation returned true if the desired package name occurred anywhere in
the list of all installed packages. For example as a substring of another package name,
or even as a substring of a variant name for a different package.

Instead:

- request macports only list installed packages matching the desired package name, instead of all installed packages.
  - Note `port` exits with 0 regardless of whether any packages match the requested name.
- pass `-q` flag: "Do not print the header line. This is useful when parsing the output of port installed in scripts for further processing."
- eliminate `use_unsafe_shell=True` by searching stdout contents natively in python
instead of using `grep`. This has the added benefit of eliminating any potential
misinterpretation of characters in the package name as regex special characters.

If there are zero matching installed packages, `out` is empty.
If there are one or more matches (due to multiple installed versions), the output format
is: ec8a2bc682/src/port/port.tcl (L3320-L3323)

Notably, two leading spaces, the package name, a space, and then other information.
According to blame via github, those lines haven't changed in 11 years.

* Update macports state=active to eliminate use_unsafe_shell

Similar to previous commit (for macports state=present):

- pass `-q` flag: "Do not print the header line. This is useful when parsing the output of port installed in scripts for further processing."
- search stdout contents natively in python instead of using `grep`.
- added parentheses to search string to eliminate false positives if the package name
or variants contain the word `active`. Still could fail if they contain `(active)`, but
that's less likely

If there are zero matching installed packages, `out` is empty.
If there are one or more matches (due to multiple installed versions), the output format
is: ec8a2bc682/src/port/port.tcl (L3320-L3323)

For "state=active", we're looking for a line that contains `(active)` in the output.

* Basic test case of query_port for present and active

* Attempt to fix lint errors in test

* Different mock module creation, changed test cases indentation/spacing

- picked the wrong mock code to cargo-cult. Thanks to felixfontein for this suggestion
- 4 space indentation on continuation line. I thought I had that originally, but it looks like my editor sabotaged me with mixed tabs/spaces
- Remove leading newline on multi-line test cases. I don't think it would make a difference, but I'd read up on how the python syntax works and want to more accurately represent macports output.

fingers crossed this addresses the known build errors

* Add changelog fragment

* Update tests/unit/plugins/modules/packaging/os/test_macports.py

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update changelogs/fragments/1307-macports-fix-status-check.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

Co-authored-by: Felix Fontein <felix@fontein.de>
2020-11-26 06:59:32 +01:00
Felix Fontein
a96f90ff94
Fix boolean defaults. (#1343) 2020-11-23 11:14:43 +00:00
Martin Migasiewicz
ece0202507
feat(pkgin): add support for installation of full versioned package names (#1256)
* * pkgin query_package(..) understands now also package name with version (my-package-1.2nb123456). * pkgin query_package(..) will distinct between not-installed and not-found packages. * pkgin install_package(..) fails with proper error if a non-existing package is attempted to be installed.

* fixup ansibot comments

* add changelog fragment

* add example

* use more pythonic condition

Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>

* remove extra dot between description and link to PR

Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>

* fix file extension of changelog fragment

* add pkgin unit tests for query_package function

* fix pep8 issues

* use enum Flag instead mix of strings, bools and None as return value

* use IntEnum instead Flag to support Python versions >= 2.6

* fix pep8 and pylint errors

* use regular class instead enum to avoid issues with older Python releases

* fix comment

* remove the combined package state since without an IntFlag or Flag the usage of it would require to use logical operators

Co-authored-by: Erik van Nooijen <eric.vannooijen@tomtom.com>
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
2020-11-21 21:20:27 +01:00
TGuimbert
2be2d30f3b
Add --non-interactive argurment to Flatpak (#1246)
* Add noninteractive argument

* Correct pep8 errors

* Add changelog fragment

* Update changelogs/fragments/1246-flatpak-use-non-interactive-argument.yaml

Co-authored-by: Felix Fontein <felix@fontein.de>

Co-authored-by: Thibault GUIMBERT <tguimbert@leni.fr>
Co-authored-by: Thibault Guimbert <tguimbert@localhost.localdomain>
Co-authored-by: Felix Fontein <felix@fontein.de>
2020-11-19 21:10:54 +01:00
Vinícius Zavam
d95910963b
[pkgng] present the 'ignore_osver' option to pkg (#1243)
* [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>
2020-11-17 07:17:16 +01:00
John Weber
9787e8a6bf
maven_artifact: Adjust path for time stamped SNAPSHOT versions (#713)
* 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>
2020-11-16 21:41:55 +01:00
Alexei Znamensky
deddce02fa
Tidy up validate-modules ignores for packaging modules (#1289)
* fixed validation-modules for plugins/modules/packaging/language/bower.py
2020-11-13 12:41:11 +00:00
Rafael Sadowski
ef49950b96
Add OpenBSD pkg_add(1) snapshot support (#965)
* 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>
2020-11-13 06:33:13 +01:00
MichaelWasher
4c379bd3b2
Resolve homebrew and homebrew_cask package name validation issues (#1038)
Add basic regression tests
Add changelog
Rename _create_regex_group to better suit function
Fix '-' use in Homebrew validation
2020-10-27 22:46:49 +01:00
Laurent G
4842f67da1
Fix lang issue on zypper absent (#1175)
* 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>
2020-10-27 22:45:42 +01:00
Mike Williams
0b13fd2c76
Add getbinpkgonly (-G) to portage (#1169)
* 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>
2020-10-26 19:37:56 +01:00
Jeff Geerling
19fdfcf0b3
Issue #1179: Fix v2 composer require idempotence (#1180)
* Issue #1179: Add new statement to composer require changed check for v2.

* Issue #1179: Add changelog fragment.
2020-10-26 19:31:17 +01:00
mdaves93
18a5330e62
Added client_cert and client_key to the maven_artifact module. (#1127)
* 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>
2020-10-20 18:41:57 +02:00
Jürgen Hötzel
08b81b570e
Improve group expansion speed: query list of pacman groups once (#349) (#349)
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>
2020-10-09 14:18:11 +02:00
Peter Oliver
dd9e999c9f
pkgutil: add update all, check-mode, squashing and examples (#799)
* 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>
2020-09-30 06:19:36 +02:00
Amin Vakil
09d89da0ab
zypper_repository: Proper failure when python-xml is missing (#939)
* Proper error when python-xml is missing

* use missing_required_lib to output error

* Add changelog
2020-09-20 14:09:02 +02:00
Vlad Mencl
6dc98c08fd
gem: Fix get_installed_versions: correctly parse "default" version. (#783)
* 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>
2020-09-03 07:47:34 +02:00
Brandon Boles
8f2b2d9dc6
Fix for error trying to install cask with '@' in the name (#763)
* 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>
2020-09-02 07:52:23 +03:00
Peter Oliver
d4e9b7575c
pkg5: wrap 'to modify' package list (#789)
* pkg5: wrap 'to modify' package list

Moved from https://github.com/ansible/ansible/pull/56378

* Add changelog fragment.

* Correct markup.

* Update changelogs/fragments/789-pkg5-wrap-to-modify-package-list.yaml

Co-authored-by: Felix Fontein <felix@fontein.de>

Co-authored-by: Felix Fontein <felix@fontein.de>
2020-08-25 21:21:51 +02:00
Jan Gaßner
eb2369a934
yarn: Fix handling of empty outdated & scoped packages (#474)
* 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>
2020-07-23 10:19:32 +03:00
Eric G
bc43694ca9
pacman: Treat .zst package names as files (#650)
* 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>
2020-07-19 12:07:38 +02:00
Andrew Klychkov
41cfdda6a3
modules: fix examples to use FQCN (#644)
* modules: fix examples to use FQCN

* fix

* fix

* fix
2020-07-13 21:50:31 +02:00
Davíð Steinn Geirsson
d0b07885f0
pkgng: Add support for upgrading all installed packages (#569)
* 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>
2020-07-07 23:04:35 +02:00
Felix Fontein
097aebadb0
Fix M(). (#591)
* Fix M().

* Break long line.

* Fix the remaining M(...).

* Break long line.
2020-06-29 14:59:15 +02:00
Amin Vakil
72ca27a6ae
Reduce ignored packaging sanity tests (#568)
* 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
2020-06-26 15:17:11 +02:00
Davíð Steinn Geirsson
9142c75c84
pkgng: Add stdout and stderr to response object (#560)
* 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>
2020-06-23 19:55:40 +02:00
Amin Vakil
7e17b55884
apk: Add no-cache option (#548)
* apk: add no_cache option

* Fix indentation
2020-06-23 14:10:05 +02:00
Amin Vakil
650ae65f24
collection: Change default='no's and 'yes's to default=False and default=True (#556)
* Change default={'no','yes'} to default={False,True}

* Add changelog

* Remove changelog
2020-06-22 15:56:35 +02:00
Amin Vakil
004eb6992f
Change default={'no','yes'} to default={False,True} in packaging/os modules (#554) 2020-06-22 07:37:47 +02:00
amleshkov
16ce942448
apt_rpm: support installing a list of packages (Fixes #143) (#169)
* 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>
2020-06-17 18:04:27 +02:00
Jose Angel Munoz
54014529bd
Return correct values when running yarn in check mode (#153)
* Fixes Check Mode

* Adds parenthesis

* Adds changelog and tests
2020-06-17 17:39:24 +02:00
tchernomax
02a032aa45
Pear - Add prompt parameter on pear module that allows to specify one or more prompts (#530)
* 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>
2020-06-17 16:34:26 +02:00
majekw
736f2ecac0
slackpkg: fix matching some special cases in package names. (#505)
* 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>
2020-06-17 09:38:30 +02:00
Felix Fontein
f16a93f976
Adjust removal versions (#521)
* Adjust 2.11 and later Ansible versions to collection versions.

* Remove unnecessary changelog.

* Adjust Ansible 2.10 to community.general 0.2.0 (first 'proper' release).

* Caught some non-properly prefixed versions.

* Update plugins/modules/database/mysql/mysql_replication.py
2020-06-16 21:24:42 +02:00
Felix Fontein
b54ddaa28c
Clean up deprecations (#504)
* 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.
2020-06-16 13:15:19 +02:00
Felix Fontein
f9589d78a8
Add version_added for all new features (#214)
* 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.
2020-06-13 15:01:19 +02:00
Giovanni Sciortino
7bdd78b053
rshm_repository: reduce execution time when changed == False (#458)
Co-authored-by: Giovanni Sciortino <gsciorti@redhat.com>
2020-06-11 11:00:48 +03:00
majekw
519162443f
slackpkg: fix name matching in package installation (#450) (#454)
* 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>
2020-06-11 10:48:10 +03:00
Martin Budsjö
77c29a1542
Added 'extra_install_args' module option to allow extra upgrade/install specific zypper arguments (#382)
* 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>
2020-06-05 08:01:21 +02:00
Andrew Klychkov
a7c830f49d
Fix examples formatting (#345) 2020-05-16 15:07:51 +02:00
Andrew Klychkov
327832dcbb
Fix Ansible documentation in part of example formatting. Part 2 (#333)
* Fix Ansible documentation in part of example formatting

* fix

* Revert osx_defaults.py
2020-05-15 13:27:06 +03:00
Andrew Klychkov
328319b926
Fix Ansible documentation in part of example formatting. Part 1 (#332)
* Fix Ansible documentation in part of example formatting

* Fix
2020-05-15 13:13:45 +03:00
Andrew Klychkov
983d937b7b
Fix Ansible documentation in part of example formatting (#334) 2020-05-15 13:12:41 +03:00
Andrew Klychkov
5d226f86b6
Remove ANSIBLE_METADATA (#339)
* Remove ANSIBLE_METADATA

* remove from other modules

* remove from plugins and scripts
2020-05-14 14:03:42 +01:00
Jürgen Hötzel
43c805f7db
Improve package state detection speed (#326)
Don't query for full details of a package. It is sufficient to output
the name and version. This also simplifies parsing the output.
2020-05-13 08:46:05 +02:00
Jon Dufresne
159e2bb734
flatpak: Build commands as lists instead of strings (#269)
Using a list ensures that all subprocess arguments are correctly
escaped. By building strings and then calling .split(), potential
arguments with a space will be incorrectly split over two arguments.
When a string is needed for presentation, join to the list to build the
string.
2020-05-10 14:46:10 +02:00
Jon Dufresne
f2af41d842
flatpak: Change use of Popen to module.run_command() (#274)
* flatpak: Change use of Popen to module.run_command()

* Update changelogs/fragments/274-flatpak-run-command.yaml

Co-authored-by: Felix Fontein <felix@fontein.de>

Co-authored-by: Felix Fontein <felix@fontein.de>
2020-05-09 10:03:04 +02:00
Felix Fontein
85cbc27427
Improve Ansible 2.9 compatibility (#306)
* Adjust ignore-2.9.txt.

* Workaround for load_file_common_arguments's path option (similar to ansible-collections/community.crypto#14).

* Add changelog.
2020-05-08 14:38:23 +01:00
Jon Dufresne
385d03a629
Document argument types for flatpak and flatpak_remote (#270) 2020-05-04 16:42:15 +02:00
Abhijeet Kasurde
2639d4c023
maven_artifact: Convert MD5 values to lowercase before comparison (#197)
Fixes: ansible-collections/community.general#186

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2020-04-17 11:54:34 +05:30
Cameron Nemo
45b171a064
Xbps various changes (#95)
* fix(modules/xbps): do not upgrade in check mode

Ensure that while in check mode, this module does not upgrade all
packages on the system.

* chore(modules/xbps): refactor update_cache

Pull out the update_cache logic from the main function.

* feat(modules/xbps): upgrade xbps package itself

Perform an upgrade of the xbps package itself, when necessary.
Otherwise, users' playbooks will fail to install or upgrade packages
when the xbps version is out of date.
See https://github.com/void-linux/xbps/issues/229 for more information.
2020-04-10 19:15:02 +01:00
Abhijeet Kasurde
645fe91fa3
homebrew: Honor update_homebrew value (#112)
Added environment variable to honor update_homebrew argument specified
by user.

Fixes: ansible/ansible#56650

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2020-04-05 09:23:56 +01:00
Matt Martz
d9420f88bc
Migrate apt_repo to community.general (#102)
* Migrate apt_repo to community.general

* nuke version_added

Co-Authored-By: Felix Fontein <felix@fontein.de>

Co-authored-by: Felix Fontein <felix@fontein.de>
2020-04-02 17:50:13 +02:00