Correctly handle .repo files in zypper_repository module

Before the changes, removing a repository required a repo url. This shouldn't be required since zypper allows removing a repo based on its alias (mapped to name in this module).

The name variable was always required, which is misleading since repofiles provide their own alias. So a runtime check was added to avoid this confusion.

Additionaly, running this module on .repo files weren't idempotent. e.g

Before:
$ ./hacking/test-module -m library/packaging/zypper_repository -a "repo=http://download.opensuse.org/repositories/devel:/languages:/python/SLE_11_SP3/devel:languages:python.repo name=foo"
{"repo": "http://download.opensuse.org/repositories/devel:/languages:/python/SLE_11_SP3/devel:languages:python.repo", "state": "present", "changed": true}
$ ./hacking/test-module -m library/packaging/zypper_repository -a "repo=http://download.opensuse.org/repositories/devel:/languages:/python/SLE_11_SP3/devel:languages:python.repo name=foo"
{"msg": "Repository named 'devel_languages_python' already exists. Please use another alias.\n", "failed": true}

After:
$ ./hacking/test-module -m library/packaging/zypper_repository -a "repo=http://download.opensuse.org/repositories/devel:/languages:/python/SLE_11_SP3/devel:languages:python.repo"
{"repo": "http://download.opensuse.org/repositories/devel:/languages:/python/SLE_11_SP3/devel:languages:python.repo", "state": "present", "changed": true}
$ ./hacking/test-module -m library/packaging/zypper_repository -a "repo=http://download.opensuse.org/repositories/devel:/languages:/python/SLE_11_SP3/devel:languages:python.repo"
{"repo": "http://download.opensuse.org/repositories/devel:/languages:/python/SLE_11_SP3/devel:languages:python.repo", "state": "present", "changed": false}

Signed-off-by: Hector Acosta <hector.acosta@gmail.com>
Fix #8047

Ensure that json is returned when only updating the cache and in check mode
Make 'compress' optional
Ensure version is a string
Correct typo
Fix the name of the package that provides apt-add-repository on Ubuntu
fix get_distribution_version() on amazon linux
Merge pull request #8106 from muff1nman/pacman-update-checkmode-fix

Fix #8047
Merge pull request #8107 from hfinucane/optional-rsync-compress

Make 'compress' optional
Pagerduty has advocated not using ansible for certain sizes of infrastructure.  This module is removed until this is corrected.

http://blog.pagerduty.com/2014/06/10-common-ops-mistakes/?utm_source=twitter&utm_medium=social&utm_campaign=blog
Slight typo fix.
Merge pull request #8111 from hfinucane/gh-8108

Fix pip failure when version is parsed as a float
Merge pull request #8118 from oxyrox/devel

Typo
layman: remove my email address
fix LooseVersion exception with empty distribution_version
Merge pull request #8122 from tgerla/ubuntu-docs-fix

Docs: fix the name of the package that provides apt-add-repository on Ubuntu
Merge pull request #7914 from hacosta/devel

Correctly handle .repo files in zypper_repository module
Merge pull request #8146 from rmarchei/8102

fix get_distribution_version() on amazon linux
Merge pull request #8156 from jirutka/fix-layman

layman: remove my email address