blob: 08946490531cec26fad48847f512215eaa5da49a [file] [log] [blame]
Scott Bakerc41914d2017-06-26 14:00:52 -07001#!/usr/bin/python
2
3import json
4import os
5import requests
6import sys
7import traceback
8
9from ansible.module_utils.basic import AnsibleModule
10from auraclienttools import LCDNAPI, LCDNFault
11
12def main():
13 module = AnsibleModule(
14 argument_spec = dict(
15 name = dict(required=True, type='str'),
16 state = dict(required=True, type='str', choices=["present", "absent"]),
17 username = dict(required=True, type='str'),
18 password = dict(required=True, type='str'),
19 hostname = dict(required=True, type='str'),
20 plc_name = dict(required=True, type='str'),
21 )
22 )
23
24 credentials = {"username": module.params["username"],
25 "password": module.params["password"],
26 "hostname": module.params["hostname"],
27 "plc_name": module.params["plc_name"]}
28
29 state = module.params["state"]
30 siteName = module.params["name"]
31
32 api = LCDNAPI(credentials)
33
34 sites = api.ListAll("Site", {"name": siteName})
35
36 if sites and (state=="absent"):
37 api.deleteSite(siteName)
38 module.exit_json(changed=True, msg="site deleted")
39 elif (not sites) and (state=="present"):
40 api.createSite(siteName)
41 module.exit_json(changed=True, msg="site created")
42 else:
43 module.exit_json(changed=False)
44
45
46if __name__ == '__main__':
47 main()