From 675b17bc0964faa99a9610a59e83e8e2aa90d032 Mon Sep 17 00:00:00 2001 From: Valentin Gurmeza Date: Wed, 11 Jan 2017 11:20:55 -0800 Subject: [PATCH] base work - added MikrotikModule class - added a task for testing - add main function for the module --- library/__init__.py | 0 library/mikrotik.py | 50 +++++++++++++++++++++++++++++++++++++++++++++ tasks/main.yml | 5 +++++ 3 files changed, 55 insertions(+) create mode 100644 library/__init__.py create mode 100644 library/mikrotik.py create mode 100644 tasks/main.yml diff --git a/library/__init__.py b/library/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/library/mikrotik.py b/library/mikrotik.py new file mode 100644 index 0000000..31223f2 --- /dev/null +++ b/library/mikrotik.py @@ -0,0 +1,50 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +__author__ = 'Valentin Gurmeza' +__version__ = "0.1.1" + +DOCUMENTATION = ''' +module = mikrotik +''' + + +class MikrotikModule(): + def __init__(self, module): + self.module = module + # Variables + # Init attributes + # Get Key name 1st from params if not check env variable + self.user_name = self.module.params["user_name"] + self.ip_addr = self.module.params["ip_addr"] + self.password = self.module.params["password"] + # self.name = self.module.params["name"] + # self.time_out = self.module.params["time_out"] + self.fail_on_warning = self.module.params["fail_on_warning"] + +def main(): + module = AnsibleModule( + argument_spec=dict( + password=dict(default=None), + user_name=dict(default=None), + ip_addr=dict(default=None), + # tags=dict(default=None, type="dict"), + # fail_on_warning=dict(default=True, choices=BOOLEANS, type="bool"), + # fire_forget=dict(default=True, choices=BOOLEANS, type="bool"), + # time_out=dict(default=500, typ="int"), + ), + supports_check_mode=True + ) + if not rosapi_found: + module.fail_json(msg="The ansible mikrotik module requires rosapi library. use 'pip install rosapi' ") + +try: + import rosapi +except ImportError: + rosapi_found = False +else: + rosapi_found = True + MikrotikModule(module).main() + +from ansible.module_utils.basic import AnsibleModule +main() diff --git a/tasks/main.yml b/tasks/main.yml new file mode 100644 index 0000000..08eaac7 --- /dev/null +++ b/tasks/main.yml @@ -0,0 +1,5 @@ +--- +- name: set ip + mikrotik: + interface: "ether6-master" + ip_addr: "192.168.50.1"