From 8b42de29fac4093c976478ee893845c06ed4bcd6 Mon Sep 17 00:00:00 2001 From: Andrey Klychkov Date: Wed, 11 Sep 2019 22:33:03 +0300 Subject: [PATCH] hall: remove the module for supporting nonexistent messenger (#62152) --- lib/ansible/modules/notification/hall.py | 99 ------------------------ 1 file changed, 99 deletions(-) delete mode 100644 lib/ansible/modules/notification/hall.py diff --git a/lib/ansible/modules/notification/hall.py b/lib/ansible/modules/notification/hall.py deleted file mode 100644 index c1f11222b0a..00000000000 --- a/lib/ansible/modules/notification/hall.py +++ /dev/null @@ -1,99 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- - -# (c) 2015, Billy Kimble -# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt) - -from __future__ import absolute_import, division, print_function -__metaclass__ = type - - -ANSIBLE_METADATA = {'metadata_version': '1.1', - 'status': ['preview'], - 'supported_by': 'community'} - - -DOCUMENTATION = """ -module: hall -short_description: Send notification to Hall -description: - - "The C(hall) module connects to the U(https://hall.com) messaging API and allows you to deliver notication messages to rooms." -version_added: "2.0" -author: Billy Kimble (@bkimble) -options: - room_token: - description: - - "Room token provided to you by setting up the Ansible room integation on U(https://hall.com)" - required: true - msg: - description: - - The message you wish to deliver as a notification - required: true - title: - description: - - The title of the message - required: true - picture: - description: - - > - The full URL to the image you wish to use for the Icon of the message. Defaults to - U(http://cdn2.hubspot.net/hub/330046/file-769078210-png/Official_Logos/ansible_logo_black_square_small.png?t=1421076128627) - required: false -""" - -EXAMPLES = """ -- name: Send Hall notifiation - hall: - room_token: - title: Nginx - msg: 'Created virtual host file on {{ inventory_hostname }}' - delegate_to: loclahost - -- name: Send Hall notification if EC2 servers were created. - hall: - room_token: - title: Server Creation - msg: 'Created instance {{ item.id }} of type {{ item.instance_type }}.\\nInstance can be reached at {{ item.public_ip }} in the {{ item.region }} region.' - delegate_to: loclahost - when: ec2.instances|length > 0 - with_items: '{{ ec2.instances }}' -""" -from ansible.module_utils.basic import AnsibleModule -from ansible.module_utils.urls import fetch_url - - -HALL_API_ENDPOINT = 'https://hall.com/api/1/services/generic/%s' - - -def send_request_to_hall(module, room_token, payload): - headers = {'Content-Type': 'application/json'} - payload = module.jsonify(payload) - api_endpoint = HALL_API_ENDPOINT % (room_token) - response, info = fetch_url(module, api_endpoint, data=payload, headers=headers) - if info['status'] != 200: - secure_url = HALL_API_ENDPOINT % ('[redacted]') - module.fail_json(msg=" failed to send %s to %s: %s" % (payload, secure_url, info['msg'])) - - -def main(): - module = AnsibleModule( - argument_spec=dict( - room_token=dict(type='str', required=True), - msg=dict(type='str', required=True), - title=dict(type='str', required=True), - picture=dict(type='str', - default='http://cdn2.hubspot.net/hub/330046/file-769078210-png/Official_Logos/ansible_logo_black_square_small.png?t=1421076128627'), - ) - ) - - room_token = module.params['room_token'] - message = module.params['msg'] - title = module.params['title'] - picture = module.params['picture'] - payload = {'title': title, 'message': message, 'picture': picture} - send_request_to_hall(module, room_token, payload) - module.exit_json(msg="OK") - - -if __name__ == '__main__': - main()