003 File Manager
Current Path:
/usr/local/lib/python3.8/site-packages/salt/pillar
usr
/
local
/
lib
/
python3.8
/
site-packages
/
salt
/
pillar
/
📁
..
📄
__init__.py
(48.72 KB)
📁
__pycache__
📄
azureblob.py
(13.88 KB)
📄
cmd_json.py
(787 B)
📄
cmd_yaml.py
(893 B)
📄
cmd_yamlex.py
(674 B)
📄
cobbler.py
(1.64 KB)
📄
confidant.py
(3.29 KB)
📄
consul_pillar.py
(11.61 KB)
📄
csvpillar.py
(1.85 KB)
📄
digicert.py
(1007 B)
📄
django_orm.py
(7.74 KB)
📄
ec2_pillar.py
(10.12 KB)
📄
etcd_pillar.py
(2.36 KB)
📄
extra_minion_data_in_pillar.py
(2.18 KB)
📄
file_tree.py
(18.03 KB)
📄
foreman.py
(3.66 KB)
📄
git_pillar.py
(19.61 KB)
📄
gpg.py
(560 B)
📄
hg_pillar.py
(3.19 KB)
📄
hiera.py
(846 B)
📄
http_json.py
(2.43 KB)
📄
http_yaml.py
(2.43 KB)
📄
libvirt.py
(5.78 KB)
📄
makostack.py
(21.99 KB)
📄
mongo.py
(5.6 KB)
📄
mysql.py
(3.76 KB)
📄
nacl.py
(744 B)
📄
netbox.py
(29.5 KB)
📄
neutron.py
(2.41 KB)
📄
nodegroups.py
(1.7 KB)
📄
pepa.py
(20.98 KB)
📄
pillar_ldap.py
(10.95 KB)
📄
postgres.py
(2.82 KB)
📄
puppet.py
(846 B)
📄
reclass_adapter.py
(4 KB)
📄
redismod.py
(3.28 KB)
📄
rethinkdb_pillar.py
(4.71 KB)
📄
s3.py
(14.4 KB)
📄
saltclass.py
(1.49 KB)
📄
sql_base.py
(15.38 KB)
📄
sqlcipher.py
(3.42 KB)
📄
sqlite3.py
(2.67 KB)
📄
stack.py
(22.07 KB)
📄
svn_pillar.py
(5.74 KB)
📄
varstack_pillar.py
(1.1 KB)
📄
vault.py
(4.03 KB)
📄
venafi.py
(966 B)
📄
virtkey.py
(586 B)
📄
vmware_pillar.py
(16.83 KB)
Editing: nodegroups.py
""" Nodegroups Pillar ================= Introspection: to which nodegroups does my minion belong? Provides a pillar with the default name of `nodegroups` which contains a list of nodegroups which match for a given minion. .. versionadded:: 2016.11.0 Command Line ------------ .. code-block:: bash salt-call pillar.get nodegroups local: - class_infra - colo_sj - state_active - country_US - type_saltmaster Configuring Nodegroups Pillar ----------------------------- .. code-block:: yaml extension_modules: /srv/salt/ext ext_pillar: - nodegroups: pillar_name: 'nodegroups' """ # Import futures from salt.utils.minions import CkMinions __version__ = "0.0.2" def ext_pillar(minion_id, pillar, pillar_name=None): """ A salt external pillar which provides the list of nodegroups of which the minion is a member. :param minion_id: used for compound matching nodegroups :param pillar: provided by salt, but not used by nodegroups ext_pillar :param pillar_name: optional name to use for the pillar, defaults to 'nodegroups' :return: a dictionary which is included by the salt master in the pillars returned to the minion """ pillar_name = pillar_name or "nodegroups" all_nodegroups = __opts__["nodegroups"] nodegroups_minion_is_in = [] ckminions = None for nodegroup_name in all_nodegroups.keys(): ckminions = ckminions or CkMinions(__opts__) _res = ckminions.check_minions(all_nodegroups[nodegroup_name], "compound") match = _res["minions"] if minion_id in match: nodegroups_minion_is_in.append(nodegroup_name) return {pillar_name: nodegroups_minion_is_in}
Upload File
Create Folder