neulab/tldr huggingface dataset:
salt.modules.keystone.user_role_remove(user_id=None, user=None, tenant_id=None, tenant=None, role_id=None, role=None, profile=None, project_id=None, project_name=None, **connection_args) Remove role for user in tenant (keystone user-role-remove)
salt '*' keystone.user_role_remove user_id=298ce377245c4ec9b70e1c639c89e654 tenant_id=7167a092ece84bae8cead4bf9d15bb3b role_id=ce377245c4ec9b70e1c639c89e8cead4 salt '*' keystone.user_role_remove user=admin tenant=admin role=admin
salt.modules.keystone.user_update(user_id=None, name=None, email=None, enabled=None, tenant=None, profile=None, project=None, description=None, **connection_args) Update a user's information (keystone user-update) The following fields may be updated: name, email, enabled, tenant.  Because the name is one of the fields, a valid user id is required.
salt '*' keystone.user_update user_id=c965f79c4f864eaaa9c3b41904e67082 name=newname salt '*' keystone.user_update c965f79c4f864eaaa9c3b41904e67082 name=newname email=newemail@domain.com
salt.modules.keystone.user_verify_password(user_id=None, name=None, password=None, profile=None, **connection_args) Verify a user's password
salt '*' keystone.user_verify_password name=test password=foobar salt '*' keystone.user_verify_password user_id=c965f79c4f864eaaa9c3b41904e67082 password=foobar
salt.modules.keystoneng Keystone module for interacting with OpenStack Keystone
keystone: cloud: default
keystone: auth: username: admin password: password123 user_domain_name: mydomain project_name: myproject project_domain_name: myproject auth_url: https://example.org:5000/v3 identity_api_version: 3
salt.modules.keystoneng.compare_changes(obj, **kwargs) Compare two dicts returning only keys that exist in the first dict and are different in the second one
salt.modules.keystoneng.domain_create(auth=None, **kwargs) Create a domain
salt '*' keystoneng.domain_create name=domain1
salt.modules.keystoneng.domain_delete(auth=None, **kwargs) Delete a domain
salt '*' keystoneng.domain_delete name=domain1 salt '*' keystoneng.domain_delete name=b62e76fbeeff4e8fb77073f591cf211e
salt.modules.keystoneng.domain_get(auth=None, **kwargs) Get a single domain
salt '*' keystoneng.domain_get name=domain1 salt '*' keystoneng.domain_get name=b62e76fbeeff4e8fb77073f591cf211e
salt.modules.keystoneng.domain_list(auth=None, **kwargs) List domains
salt '*' keystoneng.domain_list
salt.modules.keystoneng.domain_search(auth=None, **kwargs) Search domains
salt '*' keystoneng.domain_search salt '*' keystoneng.domain_search name=domain1
salt.modules.keystoneng.domain_update(auth=None, **kwargs) Update a domain
salt '*' keystoneng.domain_update name=domain1 new_name=newdomain salt '*' keystoneng.domain_update name=domain1 enabled=True description='new description'
salt.modules.keystoneng.endpoint_create(auth=None, **kwargs) Create an endpoint
salt '*' keystoneng.endpoint_create interface=admin service=glance url=https://example.org:9292 salt '*' keystoneng.endpoint_create interface=public service=glance region=RegionOne url=https://example.org:9292 salt '*' keystoneng.endpoint_create interface=admin service=glance url=https://example.org:9292 enabled=True
salt.modules.keystoneng.endpoint_delete(auth=None, **kwargs) Delete an endpoint
salt '*' keystoneng.endpoint_delete id=3bee4bd8c2b040ee966adfda1f0bfca9
salt.modules.keystoneng.endpoint_get(auth=None, **kwargs) Get a single endpoint
salt '*' keystoneng.endpoint_get id=02cffaa173b2460f98e40eda3748dae5
salt.modules.keystoneng.endpoint_list(auth=None, **kwargs) List endpoints
salt '*' keystoneng.endpoint_list
salt.modules.keystoneng.endpoint_search(auth=None, **kwargs) Search endpoints
salt '*' keystoneng.endpoint_search salt '*' keystoneng.endpoint_search id=02cffaa173b2460f98e40eda3748dae5
salt.modules.keystoneng.endpoint_update(auth=None, **kwargs) Update an endpoint
salt '*' keystoneng.endpoint_update endpoint_id=4f961ad09d2d48948896bbe7c6a79717 interface=public enabled=False salt '*' keystoneng.endpoint_update endpoint_id=4f961ad09d2d48948896bbe7c6a79717 region=newregion salt '*' keystoneng.endpoint_update endpoint_id=4f961ad09d2d48948896bbe7c6a79717 service_name_or_id=glance url=https://example.org:9292
salt.modules.keystoneng.get_entity(ent_type, **kwargs) Attempt to query Keystone for more information about an entity
salt.modules.keystoneng.get_openstack_cloud(auth=None) Return an openstack_cloud
salt.modules.keystoneng.get_operator_cloud(auth=None) Return an operator_cloud
salt.modules.keystoneng.group_create(auth=None, **kwargs) Create a group
salt '*' keystoneng.group_create name=group1 salt '*' keystoneng.group_create name=group2 domain=domain1 description='my group2'
salt.modules.keystoneng.group_delete(auth=None, **kwargs) Delete a group
salt '*' keystoneng.group_delete name=group1 salt '*' keystoneng.group_delete name=group2 domain_id=b62e76fbeeff4e8fb77073f591cf211e salt '*' keystoneng.group_delete name=0e4febc2a5ab4f2c8f374b054162506d
salt.modules.keystoneng.group_get(auth=None, **kwargs) Get a single group
salt '*' keystoneng.group_get name=group1 salt '*' keystoneng.group_get name=group2 domain_id=b62e76fbeeff4e8fb77073f591cf211e salt '*' keystoneng.group_get name=0e4febc2a5ab4f2c8f374b054162506d
salt.modules.keystoneng.group_list(auth=None, **kwargs) List groups
salt '*' keystoneng.group_list salt '*' keystoneng.group_list domain_id=b62e76fbeeff4e8fb77073f591cf211e
salt.modules.keystoneng.group_search(auth=None, **kwargs) Search for groups
salt '*' keystoneng.group_search name=group1 salt '*' keystoneng.group_search domain_id=b62e76fbeeff4e8fb77073f591cf211e
salt.modules.keystoneng.group_update(auth=None, **kwargs) Update a group
salt '*' keystoneng.group_update name=group1 description='new description' salt '*' keystoneng.group_create name=group2 domain_id=b62e76fbeeff4e8fb77073f591cf211e new_name=newgroupname salt '*' keystoneng.group_create name=0e4febc2a5ab4f2c8f374b054162506d new_name=newgroupname
salt.modules.keystoneng.project_create(auth=None, **kwargs) Create a project
salt '*' keystoneng.project_create name=project1 salt '*' keystoneng.project_create name=project2 domain_id=b62e76fbeeff4e8fb77073f591cf211e salt '*' keystoneng.project_create name=project3 enabled=False description='my project3'
salt.modules.keystoneng.project_delete(auth=None, **kwargs) Delete a project
salt '*' keystoneng.project_delete name=project1 salt '*' keystoneng.project_delete name=project2 domain_id=b62e76fbeeff4e8fb77073f591cf211e salt '*' keystoneng.project_delete name=f315afcf12f24ad88c92b936c38f2d5a
salt.modules.keystoneng.project_get(auth=None, **kwargs) Get a single project
salt '*' keystoneng.project_get name=project1 salt '*' keystoneng.project_get name=project2 domain_id=b62e76fbeeff4e8fb77073f591cf211e salt '*' keystoneng.project_get name=f315afcf12f24ad88c92b936c38f2d5a
salt.modules.keystoneng.project_list(auth=None, **kwargs) List projects
salt '*' keystoneng.project_list salt '*' keystoneng.project_list domain_id=b62e76fbeeff4e8fb77073f591cf211e
salt.modules.keystoneng.project_search(auth=None, **kwargs) Search projects
salt '*' keystoneng.project_search salt '*' keystoneng.project_search name=project1 salt '*' keystoneng.project_search domain_id=b62e76fbeeff4e8fb77073f591cf211e
salt.modules.keystoneng.project_update(auth=None, **kwargs) Update a project
salt '*' keystoneng.project_update name=project1 new_name=newproject salt '*' keystoneng.project_update name=project2 enabled=False description='new description'
salt.modules.keystoneng.role_assignment_list(auth=None, **kwargs) List role assignments
salt '*' keystoneng.role_assignment_list
salt.modules.keystoneng.role_create(auth=None, **kwargs) Create a role
salt '*' keystoneng.role_create name=role1 salt '*' keystoneng.role_create name=role1 domain_id=b62e76fbeeff4e8fb77073f591cf211e
salt.modules.keystoneng.role_delete(auth=None, **kwargs) Delete a role
salt '*' keystoneng.role_delete name=role1 domain_id=b62e76fbeeff4e8fb77073f591cf211e salt '*' keystoneng.role_delete name=1eb6edd5525e4ac39af571adee673559
salt.modules.keystoneng.role_get(auth=None, **kwargs) Get a single role
salt '*' keystoneng.role_get name=role1 salt '*' keystoneng.role_get name=role1 domain_id=b62e76fbeeff4e8fb77073f591cf211e salt '*' keystoneng.role_get name=1eb6edd5525e4ac39af571adee673559
salt.modules.keystoneng.role_grant(auth=None, **kwargs) Grant a role in a project/domain to a user/group
salt '*' keystoneng.role_grant name=role1 user=user1 project=project1 salt '*' keystoneng.role_grant name=ddbe3e0ed74e4c7f8027bad4af03339d group=user1 project=project1 domain=domain1 salt '*' keystoneng.role_grant name=ddbe3e0ed74e4c7f8027bad4af03339d group=19573afd5e4241d8b65c42215bae9704 project=1dcac318a83b4610b7a7f7ba01465548
salt.modules.keystoneng.role_list(auth=None, **kwargs) List roles
salt '*' keystoneng.role_list salt '*' keystoneng.role_list domain_id=b62e76fbeeff4e8fb77073f591cf211e
salt.modules.keystoneng.role_revoke(auth=None, **kwargs) Grant a role in a project/domain to a user/group
salt '*' keystoneng.role_revoke name=role1 user=user1 project=project1 salt '*' keystoneng.role_revoke name=ddbe3e0ed74e4c7f8027bad4af03339d group=user1 project=project1 domain=domain1 salt '*' keystoneng.role_revoke name=ddbe3e0ed74e4c7f8027bad4af03339d group=19573afd5e4241d8b65c42215bae9704 project=1dcac318a83b4610b7a7f7ba01465548
salt.modules.keystoneng.role_search(auth=None, **kwargs) Search roles
salt '*' keystoneng.role_search salt '*' keystoneng.role_search name=role1 salt '*' keystoneng.role_search domain_id=b62e76fbeeff4e8fb77073f591cf211e
salt.modules.keystoneng.role_update(auth=None, **kwargs) Update a role
salt '*' keystoneng.role_update name=role1 new_name=newrole salt '*' keystoneng.role_update name=1eb6edd5525e4ac39af571adee673559 new_name=newrole
salt.modules.keystoneng.service_create(auth=None, **kwargs) Create a service
salt '*' keystoneng.service_create name=glance type=image salt '*' keystoneng.service_create name=glance type=image description="Image"
salt.modules.keystoneng.service_delete(auth=None, **kwargs) Delete a service
salt '*' keystoneng.service_delete name=glance salt '*' keystoneng.service_delete name=39cc1327cdf744ab815331554430e8ec
salt.modules.keystoneng.service_get(auth=None, **kwargs) Get a single service
salt '*' keystoneng.service_get name=glance salt '*' keystoneng.service_get name=75a5804638944b3ab54f7fbfcec2305a
salt.modules.keystoneng.service_list(auth=None, **kwargs) List services
salt '*' keystoneng.service_list
salt.modules.keystoneng.service_search(auth=None, **kwargs) Search services
salt '*' keystoneng.service_search salt '*' keystoneng.service_search name=glance salt '*' keystoneng.service_search name=135f0403f8e544dc9008c6739ecda860
salt.modules.keystoneng.service_update(auth=None, **kwargs) Update a service
salt '*' keystoneng.service_update name=cinder type=volumev2 salt '*' keystoneng.service_update name=cinder description='new description' salt '*' keystoneng.service_update name=ab4d35e269f147b3ae2d849f77f5c88f enabled=False
salt.modules.keystoneng.setup_clouds(auth=None) Call functions to create Shade cloud objects in __context__ to take advantage of Shade's in-memory caching across several states
salt.modules.keystoneng.user_create(auth=None, **kwargs) Create a user
salt '*' keystoneng.user_create name=user1 salt '*' keystoneng.user_create name=user2 password=1234 enabled=False salt '*' keystoneng.user_create name=user3 domain_id=b62e76fbeeff4e8fb77073f591cf211e
salt.modules.keystoneng.user_delete(auth=None, **kwargs) Delete a user
salt '*' keystoneng.user_delete name=user1 salt '*' keystoneng.user_delete name=user2 domain_id=b62e76fbeeff4e8fb77073f591cf211e salt '*' keystoneng.user_delete name=a42cbbfa1e894e839fd0f584d22e321f
salt.modules.keystoneng.user_get(auth=None, **kwargs) Get a single user
salt '*' keystoneng.user_get name=user1 salt '*' keystoneng.user_get name=user1 domain_id=b62e76fbeeff4e8fb77073f591cf211e salt '*' keystoneng.user_get name=02cffaa173b2460f98e40eda3748dae5
salt.modules.keystoneng.user_list(auth=None, **kwargs) List users
salt '*' keystoneng.user_list salt '*' keystoneng.user_list domain_id=b62e76fbeeff4e8fb77073f591cf211e
salt.modules.keystoneng.user_search(auth=None, **kwargs) List users
salt.modules.keystoneng.user_update(auth=None, **kwargs) Update a user
salt '*' keystoneng.user_update name=user1 enabled=False description='new description' salt '*' keystoneng.user_update name=user1 new_name=newuser
salt.modules.keystore Module to interact with keystores
salt.modules.keystore.add(name, keystore, passphrase, certificate, private_key=None) Adds certificates to an existing keystore or creates a new one if necesssary.
• name -- alias for the certificate
• keystore -- The path to the keystore file to query
• passphrase -- The passphrase to use to decode the keystore
• certificate -- The PEM public certificate to add to keystore. Can be a string for file.
• private_key -- (Optional for TrustedCert) The PEM private key to add to the keystore
salt '*' keystore.add aliasname /tmp/test.store changeit /tmp/testcert.crt salt '*' keystore.add aliasname /tmp/test.store changeit certificate="-----BEGIN CERTIFICATE-----SIb...BM=-----END CERTIFICATE-----" salt '*' keystore.add keyname /tmp/test.store changeit /tmp/512.cert private_key=/tmp/512.key
salt.modules.keystore.list(keystore, passphrase, alias=None, return_cert=False) Lists certificates in a keytool managed keystore.
• alias -- (Optional) If found, displays details on only this key
• return_certs -- (Optional) Also return certificate PEM.
WARNING: There are security implications for using return_cert to return decrypted certificates.
salt '*' keystore.list /usr/lib/jvm/java-8/jre/lib/security/cacerts changeit salt '*' keystore.list /usr/lib/jvm/java-8/jre/lib/security/cacerts changeit debian:verisign_-_g5.pem
salt.modules.keystore.remove(name, keystore, passphrase) Removes a certificate from an existing keystore.  Returns True if remove was successful, otherwise False
salt '*' keystore.remove aliasname /tmp/test.store changeit
salt.modules.kmod Module to manage Linux kernel modules
salt.modules.kmod.available() Return a list of all available kernel modules
salt.modules.kmod.check_available(mod) Check to see if the specified kernel module is available
salt '*' kmod.check_available kvm
salt.modules.kmod.is_loaded(mod) Check to see if the specified kernel module is loaded
salt '*' kmod.is_loaded kvm
salt.modules.kmod.load(mod, persist=False) Load the specified kernel module
mod    Name of module to add
persist Write module to /etc/modules to make it load on system reboot
salt '*' kmod.load kvm
salt.modules.kmod.lsmod() Return a dict containing information about currently loaded modules
salt.modules.kmod.mod_list(only_persist=False) Return a list of the loaded module names
only_persist Only return the list of loaded persistent modules
salt.modules.kmod.remove(mod, persist=False, comment=True) Remove the specified kernel module
persist Also remove module from /etc/modules
comment If persist is set don't remove line from /etc/modules but only comment it
salt '*' kmod.remove kvm
salt.modules.kubeadm maintainer Alberto Planas <aplanas@suse.com>
salt.modules.kubeadm.alpha_certs_renew(rootfs=None) New in version 3001.
Renews certificates for a Kubernetes cluster
rootfs The path to the real host root filesystem
salt '*' kubeadm.alpha_certs_renew
salt.modules.kubeadm.alpha_kubeconfig_user(client_name, apiserver_advertise_address=None, apiserver_bind_port=None, cert_dir=None, org=None, token=None, rootfs=None) New in version 3001.
Outputs a kubeconfig file for an additional user
client_name The name of the user. It will be used as the CN if client certificates are created
apiserver_advertise_address The IP address the API server is accessible on
apiserver_bind_port The port the API server is accessible on (default 6443)
cert_dir The path where certificates are stored (default "/etc/kubernetes/pki")
org    The organization of the client certificate
token  The token that show be used as the authentication mechanism for this kubeconfig, instead of client certificates
salt '*' kubeadm.alpha_kubeconfig_user client_name=user
salt.modules.kubeadm.alpha_kubelet_config_download(kubeconfig=None, kubelet_version=None, rootfs=None) New in version 3001.
Downloads the kubelet configuration from the cluster ConfigMap kubelet-config-1.X
kubeconfig The kubeconfig file to use when talking to the cluster. The default values in /etc/kubernetes/admin.conf
kubelet_version The desired version for the kubelet
salt '*' kubeadm.alpha_kubelet_config_download salt '*' kubeadm.alpha_kubelet_config_download kubelet_version='1.14.0'
salt.modules.kubeadm.alpha_kubelet_config_enable_dynamic(node_name, kubeconfig=None, kubelet_version=None, rootfs=None) New in version 3001.
Enables or updates dynamic kubelet configuration for a node
node_name Name of the node that should enable the dynamic kubelet configuration
salt '*' kubeadm.alpha_kubelet_config_enable_dynamic node-1
salt.modules.kubeadm.alpha_selfhosting_pivot(cert_dir=None, config=None, kubeconfig=None, store_certs_in_secrets=False, rootfs=None) New in version 3001.
Converts a static Pod-hosted control plane into a selt-hosted one
config Path to kubeadm configuration file
store_certs_in_secrets Enable storing certs in secrets
salt '*' kubeadm.alpha_selfhost_pivot
salt.modules.kubeadm.config_images_list(config=None, feature_gates=None, kubernetes_version=None, kubeconfig=None, rootfs=None) New in version 3001.
Print a list of images kubeadm will use
feature_gates A set of key=value pairs that describe feature gates for various features
kubernetes_version Choose a specifig Kubernetes version for the control plane (default "stable-1")
salt '*' kubeadm.config_images_list
salt.modules.kubeadm.config_images_pull(config=None, cri_socket=None, feature_gates=None, kubernetes_version=None, kubeconfig=None, rootfs=None) New in version 3001.
Pull images used by kubeadm
cri_socket Path to the CRI socket to connect
salt '*' kubeadm.config_images_pull
salt.modules.kubeadm.config_migrate(old_config, new_config=None, kubeconfig=None, rootfs=None) New in version 3001.
Read an older version of the kubeadm configuration API types from a file, and output the similar config object for the newer version
old_config Path to the kubeadm config file that is usin the old API version and should be converted
new_config Path to the resulting equivalent kubeadm config file using the new API version. If not specified the output will be returned
salt '*' kubeadm.config_migrate /oldconfig.cfg
salt.modules.kubeadm.config_print_init_defaults(component_configs=None, kubeconfig=None, rootfs=None) New in version 3001.
Return default init configuration, that can be used for 'kubeadm init'
component_config A comma-separated list for component config API object to print the default values for (valid values: KubeProxyConfiguration, KubeletConfiguration)
salt '*' kubeadm.config_print_init_defaults
salt.modules.kubeadm.config_print_join_defaults(component_configs=None, kubeconfig=None, rootfs=None) New in version 3001.
Return default join configuration, that can be used for 'kubeadm join'
salt '*' kubeadm.config_print_join_defaults
salt.modules.kubeadm.config_upload_from_file(config, kubeconfig=None, rootfs=None) New in version 3001.
Upload a configuration file to the in-cluster ConfigMap for kubeadm configuration
config Path to a kubeadm configuration file
salt '*' kubeadm.config_upload_from_file /config.cfg
salt.modules.kubeadm.config_upload_from_flags(apiserver_advertise_address=None, apiserver_bind_port=None, apiserver_cert_extra_sans=None, cert_dir=None, cri_socket=None, feature_gates=None, kubernetes_version=None, node_name=None, pod_network_cidr=None, service_cidr=None, service_dns_domain=None, kubeconfig=None, rootfs=None) New in version 3001.
Create the in-cluster configuration file for the first time using flags
apiserver_advertise_address The IP address the API server will advertise it's listening on
apiserver_cert_extra_sans Optional extra Subject Alternative Names (SANs) to use for the API Server serving certificate
cert_dir The path where to save and store the certificates (default "/etc/kubernetes/pki")
node_name Specify the node name
pod_network_cidr Specify range of IP addresses for the pod network
service_cidr Use alternative range of IP address for service VIPs (default "10.96.0.0/12")
service_dns_domain Use alternative domain for services (default "cluster.local")
salt '*' kubeadm.config_upload_from_flags
salt.modules.kubeadm.config_view(kubeconfig=None, rootfs=None) New in version 3001.
View the kubeadm configuration stored inside the cluster
salt '*' kubeadm.config_view
salt.modules.kubeadm.init(apiserver_advertise_address=None, apiserver_bind_port=None, apiserver_cert_extra_sans=None, cert_dir=None, certificate_key=None, config=None, cri_socket=None, experimental_upload_certs=False, feature_gates=None, ignore_preflight_errors=None, image_repository=None, kubernetes_version=None, node_name=None, pod_network_cidr=None, service_cidr=None, service_dns_domain=None, skip_certificate_key_print=False, skip_phases=None, skip_token_print=False, token=None, token_ttl=None, rootfs=None) New in version 3001.
Command to set up the Kubernetes control plane
certificate_key Key used to encrypt the control-plane certificates in the kubeadm-certs Secret
experimental_upload_certs Upload control-plane certificate to the kubeadm-certs Secret
ignore_preflight_errors A list of checks whose errors will be shown as warnings
image_repository Choose a container registry to pull control plane images from
skip_certificate_key_print Don't print the key used to encrypt the control-plane certificates
skip_phases List of phases to be skipped
skip_token_print Skip printing of the default bootstrap token generated by 'kubeadm init'
token  The token to use for establishing bidirectional trust between nodes and control-plane nodes. The token must match a regular expression, that by default is [a-z0-9]{6}.[a-z0-9]{16}
token_ttl The duration defore the token is automatically deleted (1s, 2m, 3h). If set to '0' the token will never expire. Default value is 24h0m0s
salt '*' kubeadm.init pod_network_cidr='10.244.0.0/16'
salt.modules.kubeadm.join(api_server_endpoint=None, apiserver_advertise_address=None, apiserver_bind_port=None, certificate_key=None, config=None, cri_socket=None, discovery_file=None, discovery_token=None, discovery_token_ca_cert_hash=None, discovery_token_unsafe_skip_ca_verification=False, experimental_control_plane=False, ignore_preflight_errors=None, node_name=None, skip_phases=None, tls_bootstrap_token=None, token=None, rootfs=None) New in version 3001.
Command to join to an existing cluster
api_server_endpoint IP address or domain name and port of the API Server
apiserver_advertise_address If the node should host a new control plane instance, the IP address the API Server will advertise it's listening on
apiserver_bind_port If the node should host a new control plane instance, the port the API Server to bind to (default 6443)
certificate_key Use this key to decrypt the certificate secrets uploaded by init
discovery_file For file-based discovery, a file or URL from which to load cluster information
discovery_token For token-based discovery, the token used to validate cluster information fetched from the API Server
discovery_token_ca_cert_hash For token-based discovery, validate that the root CA public key matches this hash (format: "<type>:<value>")
discovery_token_unsafe_skip_ca_verification For token-based discovery, allow joining without 'discovery-token-ca-cert-hash' pinning
experimental_control_plane Create a new control plane instance on this node
tls_bootstrap_token Specify the token used to temporarily authenticate with the Kubernetes Control Plane while joining the node
token  Use this token for both discovery-token and tls-bootstrap-token when those values are not provided
salt '*' kubeadm.join 10.160.65.165:6443 token='token'
salt.modules.kubeadm.join_params(create_if_needed=False) New in version 3001.
Return the parameters required for joining into the cluster
create_if_needed If the token bucket is empty and this parameter is True, a new token will be created.
salt '*' kubeadm.join_params salt '*' kubeadm.join_params create_if_needed=True
salt.modules.kubeadm.reset(cert_dir=None, cri_socket=None, ignore_preflight_errors=None, kubeconfig=None, rootfs=None) New in version 3001.
Revert any changes made to this host by 'kubeadm init' or 'kubeadm join'
cert_dir The path to the directory where the certificates are stored (default "/etc/kubernetes/pki")
salt.modules.kubeadm.token_create(token=None, config=None, description=None, groups=None, ttl=None, usages=None, kubeconfig=None, rootfs=None) New in version 3001.
Create bootstrap tokens on the server
token  Token to write, if None one will be generated. The token must match a regular expression, that by default is [a-z0-9]{6}.[a-z0-9]{16}
description A human friendly description of how this token is used
groups List of extra groups that this token will authenticate, default to ['system:bootstrappers:kubeadm:default-node-token']
ttl    The duration defore the token is automatically deleted (1s, 2m, 3h). If set to '0' the token will never expire. Default value is 24h0m0s
usages Describes the ways in which this token can be used. The default value is ['signing', 'authentication']
salt '*' kubeadm.token_create salt '*' kubeadm.token_create a1b2c.0123456789abcdef salt '*' kubeadm.token_create ttl='6h' salt '*' kubeadm.token_create usages="['signing']"
salt.modules.kubeadm.token_delete(token, kubeconfig=None, rootfs=None) New in version 3001.
Delete bootstrap tokens on the server
salt '*' kubeadm.token_delete a1b2c salt '*' kubeadm.token_create a1b2c.0123456789abcdef
salt.modules.kubeadm.token_generate(kubeconfig=None, rootfs=None) New in version 3001.
Generate and return a bootstrap token, but do not create it on the server
salt '*' kubeadm.token_generate
salt.modules.kubeadm.token_list(kubeconfig=None, rootfs=None) New in version 3001.
List bootstrap tokens on the server
salt '*' kubeadm.token_list
salt.modules.kubeadm.version(kubeconfig=None, rootfs=None) New in version 3001.
Return the version of kubeadm
salt '*' kubeadm.version
salt.modules.kubernetesmod Module for handling kubernetes calls.
• kubernetes Python client
configuration The k8s API settings are provided either in a pillar, in the minion's config file, or in master's config file:
kubernetes.kubeconfig: '/path/to/kubeconfig' kubernetes.kubeconfig-data: '<base64 encoded kubeconfig content' kubernetes.context: 'context'
These settings can be overridden by adding context and `kubeconfig or kubeconfig_data parameters when calling a function.
The data format for kubernetes.kubeconfig-data value is the content of kubeconfig base64 encoded in one line.
Only kubeconfig or kubeconfig-data should be provided. In case both are provided kubeconfig entry is preferred.
salt '*' kubernetes.nodes kubeconfig=/etc/salt/k8s/kubeconfig context=minikube
WARNING: Configuration options changed in 2019.2.0. The following configuration options have been removed:
• kubernetes.user
• kubernetes.password
• kubernetes.api_url
• kubernetes.certificate-authority-data/file
• kubernetes.client-certificate-data/file
• kubernetes.client-key-data/file
Please use now:
• kubernetes.kubeconfig or kubernetes.kubeconfig-data
• kubernetes.context
salt.modules.kubernetesmod.configmaps(namespace='default', **kwargs) Return a list of kubernetes configmaps defined in the namespace
salt '*' kubernetes.configmaps salt '*' kubernetes.configmaps namespace=default
salt.modules.kubernetesmod.create_configmap(name, namespace, data, source=None, template=None, saltenv='base', **kwargs) Creates the kubernetes configmap as defined by the user.
salt 'minion1' kubernetes.create_configmap             settings default '{"example.conf": "# example file"}'
salt 'minion2' kubernetes.create_configmap             name=settings namespace=default data='{"example.conf": "# example file"}'
salt.modules.kubernetesmod.create_deployment(name, namespace, metadata, spec, source, template, saltenv, **kwargs) Creates the kubernetes deployment as defined by the user.
salt.modules.kubernetesmod.create_namespace(name, **kwargs) Creates a namespace with the specified name.
salt '*' kubernetes.create_namespace salt salt '*' kubernetes.create_namespace name=salt
salt.modules.kubernetesmod.create_pod(name, namespace, metadata, spec, source, template, saltenv, **kwargs) Creates the kubernetes deployment as defined by the user.
salt.modules.kubernetesmod.create_secret(name, namespace='default', data=None, source=None, template=None, saltenv='base', **kwargs) Creates the kubernetes secret as defined by the user.
salt 'minion1' kubernetes.create_secret             passwords default '{"db": "letmein"}'
salt 'minion2' kubernetes.create_secret             name=passwords namespace=default data='{"db": "letmein"}'
salt.modules.kubernetesmod.create_service(name, namespace, metadata, spec, source, template, saltenv, **kwargs) Creates the kubernetes service as defined by the user.
salt.modules.kubernetesmod.delete_configmap(name, namespace='default', **kwargs) Deletes the kubernetes configmap defined by name and namespace
salt '*' kubernetes.delete_configmap settings default salt '*' kubernetes.delete_configmap name=settings namespace=default
salt.modules.kubernetesmod.delete_deployment(name, namespace='default', **kwargs) Deletes the kubernetes deployment defined by name and namespace
salt '*' kubernetes.delete_deployment my-nginx salt '*' kubernetes.delete_deployment name=my-nginx namespace=default
salt.modules.kubernetesmod.delete_namespace(name, **kwargs) Deletes the kubernetes namespace defined by name
salt '*' kubernetes.delete_namespace salt salt '*' kubernetes.delete_namespace name=salt
salt.modules.kubernetesmod.delete_pod(name, namespace='default', **kwargs) Deletes the kubernetes pod defined by name and namespace
salt '*' kubernetes.delete_pod guestbook-708336848-5nl8c default salt '*' kubernetes.delete_pod name=guestbook-708336848-5nl8c namespace=default
salt.modules.kubernetesmod.delete_secret(name, namespace='default', **kwargs) Deletes the kubernetes secret defined by name and namespace
salt '*' kubernetes.delete_secret confidential default salt '*' kubernetes.delete_secret name=confidential namespace=default
salt.modules.kubernetesmod.delete_service(name, namespace='default', **kwargs) Deletes the kubernetes service defined by name and namespace
salt '*' kubernetes.delete_service my-nginx default salt '*' kubernetes.delete_service name=my-nginx namespace=default
salt.modules.kubernetesmod.deployments(namespace='default', **kwargs) Return a list of kubernetes deployments defined in the namespace
salt '*' kubernetes.deployments salt '*' kubernetes.deployments namespace=default
salt.modules.kubernetesmod.namespaces(**kwargs) Return the names of the available namespaces
salt '*' kubernetes.namespaces salt '*' kubernetes.namespaces kubeconfig=/etc/salt/k8s/kubeconfig context=minikube
salt.modules.kubernetesmod.node(name, **kwargs) Return the details of the node identified by the specified name
salt '*' kubernetes.node name='minikube'
salt.modules.kubernetesmod.node_add_label(node_name, label_name, label_value, **kwargs) Set the value of the label identified by label_name to label_value on the node identified by the name node_name.  Creates the label if not present.
salt '*' kubernetes.node_add_label node_name="minikube"             label_name="foo" label_value="bar"
salt.modules.kubernetesmod.node_labels(name, **kwargs) Return the labels of the node identified by the specified name
salt '*' kubernetes.node_labels name="minikube"
salt.modules.kubernetesmod.node_remove_label(node_name, label_name, **kwargs) Removes the label identified by label_name from the node identified by the name node_name.
salt '*' kubernetes.node_remove_label node_name="minikube"             label_name="foo"
salt.modules.kubernetesmod.nodes(**kwargs) Return the names of the nodes composing the kubernetes cluster
salt '*' kubernetes.nodes salt '*' kubernetes.nodes kubeconfig=/etc/salt/k8s/kubeconfig context=minikube
salt.modules.kubernetesmod.ping(**kwargs) Checks connections with the kubernetes API server.  Returns True if the connection can be established, False otherwise.
salt '*' kubernetes.ping
salt.modules.kubernetesmod.pods(namespace='default', **kwargs) Return a list of kubernetes pods defined in the namespace
salt '*' kubernetes.pods salt '*' kubernetes.pods namespace=default
salt.modules.kubernetesmod.replace_configmap(name, data, source=None, template=None, saltenv='base', namespace='default', **kwargs) Replaces an existing configmap with a new one defined by name and namespace with the specified data.
salt 'minion1' kubernetes.replace_configmap             settings default '{"example.conf": "# example file"}'
salt 'minion2' kubernetes.replace_configmap             name=settings namespace=default data='{"example.conf": "# example file"}'
salt.modules.kubernetesmod.replace_deployment(name, metadata, spec, source, template, saltenv, namespace='default', **kwargs) Replaces an existing deployment with a new one defined by name and namespace, having the specificed metadata and spec.
salt.modules.kubernetesmod.replace_secret(name, data, source=None, template=None, saltenv='base', namespace='default', **kwargs) Replaces an existing secret with a new one defined by name and namespace, having the specificed data.
salt 'minion1' kubernetes.replace_secret             name=passwords data='{"db": "letmein"}'
salt 'minion2' kubernetes.replace_secret             name=passwords namespace=saltstack data='{"db": "passw0rd"}'
salt.modules.kubernetesmod.replace_service(name, metadata, spec, source, template, old_service, saltenv, namespace='default', **kwargs) Replaces an existing service with a new one defined by name and namespace, having the specificed metadata and spec.
salt.modules.kubernetesmod.secrets(namespace='default', **kwargs) Return a list of kubernetes secrets defined in the namespace
salt '*' kubernetes.secrets salt '*' kubernetes.secrets namespace=default
salt.modules.kubernetesmod.services(namespace='default', **kwargs) Return a list of kubernetes services defined in the namespace
salt '*' kubernetes.services salt '*' kubernetes.services namespace=default
salt.modules.kubernetesmod.show_configmap(name, namespace='default', **kwargs) Return the kubernetes configmap defined by name and namespace.
salt '*' kubernetes.show_configmap game-config default salt '*' kubernetes.show_configmap name=game-config namespace=default
salt.modules.kubernetesmod.show_deployment(name, namespace='default', **kwargs) Return the kubernetes deployment defined by name and namespace
salt '*' kubernetes.show_deployment my-nginx default salt '*' kubernetes.show_deployment name=my-nginx namespace=default
salt.modules.kubernetesmod.show_namespace(name, **kwargs) Return information for a given namespace defined by the specified name
salt '*' kubernetes.show_namespace kube-system
salt.modules.kubernetesmod.show_pod(name, namespace='default', **kwargs) Return POD information for a given pod name defined in the namespace
salt '*' kubernetes.show_pod guestbook-708336848-fqr2x salt '*' kubernetes.show_pod guestbook-708336848-fqr2x namespace=default
salt.modules.kubernetesmod.show_secret(name, namespace='default', decode=False, **kwargs) Return the kubernetes secret defined by name and namespace.  The secrets can be decoded if specified by the user. Warning: this has security implications.
salt '*' kubernetes.show_secret confidential default salt '*' kubernetes.show_secret name=confidential namespace=default salt '*' kubernetes.show_secret name=confidential decode=True
salt.modules.kubernetesmod.show_service(name, namespace='default', **kwargs) Return the kubernetes service defined by name and namespace
salt '*' kubernetes.show_service my-nginx default salt '*' kubernetes.show_service name=my-nginx namespace=default
salt.modules.launchctl_service Module for the management of MacOS systems that use launchd/launchctl
• plistlib Python module
salt.modules.launchctl_service.available(job_label) Check that the given service is available.
salt '*' service.available com.openssh.sshd
salt.modules.launchctl_service.disabled(job_label, runas=None) Return True if the named service is disabled, false otherwise
salt '*' service.disabled <service label>
salt.modules.launchctl_service.enabled(job_label, runas=None) Return True if the named service is enabled, false otherwise
salt '*' service.enabled <service label>
salt.modules.launchctl_service.get_all() Return all installed services
salt.modules.launchctl_service.missing(job_label) The inverse of service.available Check that the given service is not available.
salt '*' service.missing com.openssh.sshd
salt.modules.launchctl_service.restart(job_label, runas=None) Restart the named service
salt '*' service.restart <service label>
salt.modules.launchctl_service.start(job_label, runas=None) Start the specified service
salt '*' service.start <service label> salt '*' service.start org.ntp.ntpd salt '*' service.start /System/Library/LaunchDaemons/org.ntp.ntpd.plist
salt.modules.launchctl_service.status(name, runas=None) Return the status for a service via systemd.  If the name contains globbing, a dict mapping service name to True/False values is returned.
• runas (str) -- User to run launchctl commands
salt.modules.launchctl_service.stop(job_label, runas=None) Stop the specified service
salt '*' service.stop <service label> salt '*' service.stop org.ntp.ntpd salt '*' service.stop /System/Library/LaunchDaemons/org.ntp.ntpd.plist
salt.modules.layman Support for Layman
salt.modules.layman.add(overlay) Add the given overlay from the cached remote list to your locally installed overlays. Specify 'ALL' to add all overlays from the remote list.
Return a list of the new overlay(s) added:
salt '*' layman.add <overlay name>
salt.modules.layman.delete(overlay) Remove the given overlay from the your locally installed overlays. Specify 'ALL' to remove all overlays.
Return a list of the overlays(s) that were removed:
salt '*' layman.delete <overlay name>
salt.modules.layman.list_all() List all overlays, including remote ones.
Return a list of available overlays:
salt '*' layman.list_all
salt.modules.layman.list_local() List the locally installed overlays.
Return a list of installed overlays:
salt '*' layman.list_local
salt.modules.layman.sync(overlay='ALL') Update the specified overlay. Use 'ALL' to synchronize all overlays.  This is the default if no overlay is specified.
overlay Name of the overlay to sync. (Defaults to 'ALL')
salt '*' layman.sync
salt.modules.ldap3 Query and modify an LDAP database (alternative interface) New in version 2016.3.0.
This is an alternative to the ldap interface provided by the ldapmod execution module.
exception salt.modules.ldap3.LDAPError(message, cause=None) Base class of all LDAP exceptions raised by backends.
This is only used for errors encountered while interacting with the LDAP server; usage errors (e.g., invalid backend name) will have a different type.
Variables cause -- backend exception object, if applicable
salt.modules.ldap3.add(connect_spec, dn, attributes) Add an entry to an LDAP database.
• connect_spec -- See the documentation for the connect_spec parameter for connect().
• dn -- Distinguished name of the entry.
• attributes -- Non-empty dict mapping each of the new entry's attributes to a non-empty iterable of values.
Returns True if successful, raises an exception otherwise.
salt '*' ldap3.add "{ 'url': 'ldaps://ldap.example.com/', 'bind': { 'method': 'simple', 'password': 'secret', }, }" "dn='dc=example,dc=com'" "attributes={'example': 'values'}"
salt.modules.ldap3.change(connect_spec, dn, before, after) Modify an entry in an LDAP database.
This does the same thing as modify(), but with a simpler interface.  Instead of taking a list of directives, it takes a before and after view of an entry, determines the differences between the two, computes the directives, and executes them.
Any attribute value present in before but missing in after is deleted.  Any attribute value present in after but missing in before is added.  Any attribute value in the database that is not mentioned in either before or after is not altered.  Any attribute value that is present in both before and after is ignored, regardless of whether that attribute value exists in the database.
• before -- The expected state of the entry before modification.  This is a dict mapping each attribute name to an iterable of values.
• after -- The desired state of the entry after modification.  This is a dict mapping each attribute name to an iterable of values.
salt '*' ldap3.change "{ 'url': 'ldaps://ldap.example.com/', 'bind': { 'method': 'simple', 'password': 'secret'} }" dn='cn=admin,dc=example,dc=com' before="{'example_value': 'before_val'}" after="{'example_value': 'after_val'}"
salt.modules.ldap3.connect(connect_spec=None) Connect and optionally bind to an LDAP server.
Parameters connect_spec --
This can be an LDAP connection object returned by a previous call to connect() (in which case the argument is simply returned), None (in which case an empty dict is used), or a dict with the following keys:
'backend' Optional; default depends on which Python LDAP modules are installed.  Name of the Python LDAP module to use.  Only 'ldap' is supported at the moment.
'url'  Optional; defaults to 'ldapi:///'.  URL to the LDAP server.
'bind' Optional; defaults to None.  Describes how to bind an identity to the LDAP connection.  If None, an anonymous connection is made.  Valid keys:
'method' Optional; defaults to None.  The authentication method to use.  Valid values include but are not necessarily limited to 'simple', 'sasl', and None. If None, an anonymous connection is made. Available methods depend on the chosen backend.
'mechanism' Optional; defaults to 'EXTERNAL'.  The SASL mechanism to use.  Ignored unless the method is 'sasl'.  Available methods depend on the chosen backend and the server's capabilities.
'credentials' Optional; defaults to None.  An object specific to the chosen SASL mechanism and backend that represents the authentication credentials.  Ignored unless the method is 'sasl'.
For the 'ldap' backend, this is a dictionary.  If None, an empty dict is used.  Keys:
'args' Optional; defaults to an empty list.  A list of arguments to pass to the SASL mechanism constructor.  See the SASL mechanism constructor documentation in the ldap.sasl Python module.
'kwargs' Optional; defaults to an empty dict.  A dict of keyword arguments to pass to the SASL mechanism constructor.  See the SASL mechanism constructor documentation in the ldap.sasl Python module.
'dn'   Optional; defaults to an empty string. The distinguished name to bind.
'password' Optional; defaults to an empty string. Password for binding.  Ignored if the method is 'sasl'.
'tls'  Optional; defaults to None.  A backend-specific object containing settings to override default TLS behavior.
For the 'ldap' backend, this is a dictionary.  Not all settings in this dictionary are supported by all versions of python-ldap or the underlying TLS library.  If None, an empty dict is used. Possible keys:
'starttls' If present, initiate a TLS connection using StartTLS.  (The value associated with this key is ignored.)
'cacertdir' Set the path of the directory containing CA certificates.
'cacertfile' Set the pathname of the CA certificate file.
'certfile' Set the pathname of the certificate file.
'cipher_suite' Set the allowed cipher suite.
'crlcheck' Set the CRL evaluation strategy.  Valid values are 'none', 'peer', and 'all'.
'crlfile' Set the pathname of the CRL file.
'dhfile' Set the pathname of the file containing the parameters for Diffie-Hellman ephemeral key exchange.
'keyfile' Set the pathname of the certificate key file.
'newctx' If present, instruct the underlying TLS library to create a new TLS context. (The value associated with this key is ignored.)
'protocol_min' Set the minimum protocol version.
'random_file' Set the pathname of the random file when /dev/random and /dev/urandom are not available.
'require_cert' Set the certificate validation policy. Valid values are 'never', 'hard', 'demand', 'allow', and 'try'.
'opts' Optional; defaults to None.  A backend-specific object containing options for the backend.
For the 'ldap' backend, this is a dictionary of OpenLDAP options to set.  If None, an empty dict is used.  Each key is a the name of an OpenLDAP option constant without the 'LDAP_OPT_' prefix, then converted to lower case.
Returns an object representing an LDAP connection that can be used as the connect_spec argument to any of the functions in this module (to avoid the overhead of making and terminating multiple connections).
This object should be used as a context manager.  It is safe to nest with statements.
salt '*' ldap3.connect "{ 'url': 'ldaps://ldap.example.com/', 'bind': { 'method': 'simple', 'dn': 'cn=admin,dc=example,dc=com', 'password': 'secret'} }"
salt.modules.ldap3.delete(connect_spec, dn) Delete an entry from an LDAP database.
salt '*' ldap3.delete "{ 'url': 'ldaps://ldap.example.com/', 'bind': { 'method': 'simple', 'password': 'secret'} }" dn='cn=admin,dc=example,dc=com'
salt.modules.ldap3.modify(connect_spec, dn, directives) Modify an entry in an LDAP database.
• directives --
Iterable of directives that indicate how to modify the entry.  Each directive is a tuple of the form (op, attr, vals), where:
• op identifies the modification operation to perform. One of:
• 'add' to add one or more values to the attribute
• 'delete' to delete some or all of the values from the attribute.  If no values are specified with this operation, all of the attribute's values are deleted. Otherwise, only the named values are deleted.
• 'replace' to replace all of the attribute's values with zero or more new values
• attr names the attribute to modify
• vals is an iterable of values to add or delete
salt '*' ldap3.modify "{ 'url': 'ldaps://ldap.example.com/', 'bind': { 'method': 'simple', 'password': 'secret'} }" dn='cn=admin,dc=example,dc=com' directives="('add', 'example', ['example_val'])"
salt.modules.ldap3.search(connect_spec, base, scope='subtree', filterstr='(objectClass=*)', attrlist=None, attrsonly=0) Search an LDAP database.
• base -- Distinguished name of the entry at which to start the search.
• scope --
One of the following:
'subtree' Search the base and all of its descendants.
'base' Search only the base itself.
'onelevel' Search only the base's immediate children.
• filterstr -- String representation of the filter to apply in the search.
• attrlist -- Limit the returned attributes to those in the specified list.  If None, all attributes of each entry are returned.
• attrsonly -- If non-zero, don't return any attribute values.
Returns a dict of results.  The dict is empty if there are no results.  The dict maps each returned entry's distinguished name to a dict that maps each of the matching attribute names to a list of its values.
salt '*' ldap3.search "{ 'url': 'ldaps://ldap.example.com/', 'bind': { 'method': 'simple', 'dn': 'cn=admin,dc=example,dc=com', 'password': 'secret', }, }" "base='dc=example,dc=com'"
salt.modules.ldapmod Salt interface to LDAP commands
configuration In order to connect to LDAP, certain configuration is required in the minion config on the LDAP server. The minimum configuration items that must be set are:
ldap.basedn: dc=acme,dc=com (example values, adjust to suit)
If your LDAP server requires authentication then you must also set:
ldap.anonymous: False ldap.binddn: admin ldap.bindpw: password
In addition, the following optional values may be set:
ldap.server: localhost (default=localhost, see warning below) ldap.port: 389 (default=389, standard port) ldap.tls: False (default=False, no TLS) ldap.no_verify: False (default=False, verify TLS) ldap.anonymous: True (default=True, bind anonymous) ldap.scope: 2 (default=2, ldap.SCOPE_SUBTREE) ldap.attrs: [saltAttr] (default=None, return all attributes)
WARNING: At the moment this module only recommends connection to LDAP services listening on localhost. This is deliberate to avoid the potentially dangerous situation of multiple minions sending identical update commands to the same LDAP server. It's easy enough to override this behavior, but badness may ensue - you have been warned.
salt.modules.ldapmod.search(filter, dn=None, scope=None, attrs=None, **kwargs) Run an arbitrary LDAP query and return the results.
salt 'ldaphost' ldap.search "filter=cn=myhost"
Return data:
{'myhost': {'count': 1, 'results': [['cn=myhost,ou=hosts,o=acme,c=gb', {'saltKeyValue': ['ntpserver=ntp.acme.local', 'foo=myfoo'], 'saltState': ['foo', 'bar']}]], 'time': {'human': '1.2ms', 'raw': '0.00123'}}}