golden hour
/opt/saltstack/salt/lib/python3.10/site-packages/salt/returners
⬆️ Go Up
Upload
File/Folder
Size
Actions
__init__.py
5.98 KB
Del
OK
__pycache__
-
Del
OK
appoptics_return.py
6.11 KB
Del
OK
carbon_return.py
8.24 KB
Del
OK
cassandra_cql_return.py
15.14 KB
Del
OK
cassandra_return.py
2.41 KB
Del
OK
couchbase_return.py
8.88 KB
Del
OK
couchdb_return.py
10.35 KB
Del
OK
django_return.py
2.57 KB
Del
OK
elasticsearch_return.py
12.18 KB
Del
OK
etcd_return.py
7.9 KB
Del
OK
highstate_return.py
15.59 KB
Del
OK
influxdb_return.py
8.03 KB
Del
OK
kafka_return.py
2.12 KB
Del
OK
librato_return.py
4.29 KB
Del
OK
local.py
541 B
Del
OK
local_cache.py
17.39 KB
Del
OK
mattermost_returner.py
4.08 KB
Del
OK
memcache_return.py
5.72 KB
Del
OK
mongo_future_return.py
10.01 KB
Del
OK
mongo_return.py
6.06 KB
Del
OK
multi_returner.py
2.82 KB
Del
OK
mysql.py
18.81 KB
Del
OK
nagios_nrdp_return.py
4.92 KB
Del
OK
odbc.py
7.77 KB
Del
OK
pgjsonb.py
17.36 KB
Del
OK
postgres.py
10.33 KB
Del
OK
postgres_local_cache.py
10.82 KB
Del
OK
pushover_returner.py
6.55 KB
Del
OK
rawfile_json.py
2.23 KB
Del
OK
redis_return.py
8.55 KB
Del
OK
sentry_return.py
5.24 KB
Del
OK
slack_returner.py
6.02 KB
Del
OK
slack_webhook_return.py
11.22 KB
Del
OK
sms_return.py
2.64 KB
Del
OK
smtp_return.py
8.2 KB
Del
OK
splunk.py
5.84 KB
Del
OK
sqlite3_return.py
7.73 KB
Del
OK
syslog_return.py
5.26 KB
Del
OK
telegram_return.py
1.92 KB
Del
OK
xmpp_return.py
4.81 KB
Del
OK
zabbix_return.py
2.45 KB
Del
OK
Edit: sms_return.py
""" Return data by SMS. .. versionadded:: 2015.5.0 :maintainer: Damian Myerscough :maturity: new :depends: twilio :platform: all To enable this returner the minion will need the python twilio library installed and the following values configured in the minion or master config: .. code-block:: yaml twilio.sid: 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' twilio.token: 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' twilio.to: '+1415XXXXXXX' twilio.from: '+1650XXXXXXX' To use the sms returner, append '--return sms' to the salt command. .. code-block:: bash salt '*' test.ping --return sms """ import logging import salt.returners log = logging.getLogger(__name__) try: import twilio # Grab version, ensure elements are ints twilio_version = tuple(int(x) for x in twilio.__version_info__) if twilio_version > (5,): TWILIO_5 = False from twilio.rest import Client as TwilioRestClient from twilio.rest import TwilioException as TwilioRestException else: TWILIO_5 = True from twilio import TwilioRestException # pylint: disable=no-name-in-module from twilio.rest import TwilioRestClient HAS_TWILIO = True except ImportError: HAS_TWILIO = False __virtualname__ = "sms" def __virtual__(): if HAS_TWILIO: return __virtualname__ return False, "Could not import sms returner; twilio is not installed." def _get_options(ret=None): """ Get the Twilio options from salt. """ attrs = {"sid": "sid", "token": "token", "to": "to", "from": "from"} _options = salt.returners.get_returner_options( __virtualname__, ret, attrs, __salt__=__salt__, __opts__=__opts__ ) return _options def returner(ret): """ Return a response in an SMS message """ _options = _get_options(ret) sid = _options.get("sid", None) token = _options.get("token", None) sender = _options.get("from", None) receiver = _options.get("to", None) if sid is None or token is None: log.error("Twilio sid/authentication token missing") return None if sender is None or receiver is None: log.error("Twilio to/from fields are missing") return None client = TwilioRestClient(sid, token) try: message = client.messages.create( body="Minion: {}\nCmd: {}\nSuccess: {}\n\nJid: {}".format( ret["id"], ret["fun"], ret["success"], ret["jid"] ), to=receiver, from_=sender, ) except TwilioRestException as e: log.error("Twilio [https://www.twilio.com/docs/errors/%s]", e.code) return False return True
Save