From bd50f2355502263970419213c1b33bcca8cc48de Mon Sep 17 00:00:00 2001 From: binary Date: Thu, 12 Nov 2020 14:30:12 +0100 Subject: Start some experiments with modules --- plugins/modules/repology.py | 51 +++++++++++++++++++++++++++++++++++++++++++++ plugins/tests/repology.json | 5 +++++ plugins/tests/repology.yml | 6 ++++++ 3 files changed, 62 insertions(+) create mode 100644 plugins/modules/repology.py create mode 100644 plugins/tests/repology.json create mode 100644 plugins/tests/repology.yml (limited to 'plugins') diff --git a/plugins/modules/repology.py b/plugins/modules/repology.py new file mode 100644 index 0000000..c8d9508 --- /dev/null +++ b/plugins/modules/repology.py @@ -0,0 +1,51 @@ +#!/bin/python + +from __future__ import (absolute_import, division, print_function) +import requests + +__metaclass__ = type + + +from ansible.module_utils.basic import AnsibleModule + + +API_ENDPOINT="https://repology.org/api/v1/project/" + + +def main(): + # Available arguments + module_args = dict( + package=dict(type="str", required=True), + repository=dict(type="str", required=False) + ) + + # Result to return + result = dict( + changed=False, + message="" + ) + + # Object for manipulating argument + module = AnsibleModule( + argument_spec=module_args, + supports_check_mode=True + ) + + print("aa") + if module.check_mode: + module.exit_json(**result) + + response = requests.get(f"{API_ENDPOINT}/{module.params['package']}") + print(response) + for res in response.json(): + try: + #print(res["name"]) + result.message = (res["name"]) + except Exception: + pass + + + module.exit_json(**result) + +if __name__ == "__main__": + main() diff --git a/plugins/tests/repology.json b/plugins/tests/repology.json new file mode 100644 index 0000000..fabd124 --- /dev/null +++ b/plugins/tests/repology.json @@ -0,0 +1,5 @@ +{ + "ANSIBLE_MODULE_ARGS": { + "package": "firefox" + } +} diff --git a/plugins/tests/repology.yml b/plugins/tests/repology.yml new file mode 100644 index 0000000..fabf019 --- /dev/null +++ b/plugins/tests/repology.yml @@ -0,0 +1,6 @@ +- name: Test repology + hosts: localhost + tasks: + + - repology: + package: "firefox" -- cgit v1.2.3