diff --git a/doc/man/salt-call.1 b/doc/man/salt-call.1 index 97b99faca1..deba077374 100644 --- a/doc/man/salt-call.1 +++ b/doc/man/salt-call.1 @@ -1,6 +1,6 @@ .\" Man page generated from reStructuredText. . -.TH "SALT-CALL" "1" "March 09, 2015" "2015.2.0rc1-133-g24fa806" "Salt" +.TH "SALT-CALL" "1" "April 14, 2015" "2014.7.4-180-gc0d1bdd" "Salt" .SH NAME salt-call \- salt-call Documentation . @@ -70,14 +70,19 @@ on most systems is \fB/etc/salt\fP\&. .UNINDENT .INDENT 0.0 .TP +.B \-\-hard\-crash +Raise any original exception rather than exiting gracefully Default: False +.UNINDENT +.INDENT 0.0 +.TP .B \-g, \-\-grains Return the information generated by the Salt grains .UNINDENT .INDENT 0.0 .TP .B \-m MODULE_DIRS, \-\-module\-dirs=MODULE_DIRS -Specify an additional directories to pull modules from, multiple -directories can be delimited by commas +Specify an additional directory to pull modules from. Multiple directories +can be provided by passing \-m /\-\-module\-dirs multiple times. .UNINDENT .INDENT 0.0 .TP @@ -105,6 +110,43 @@ returners. .B \-\-local Run salt\-call locally, as if there was no master running. .UNINDENT +.INDENT 0.0 +.TP +.B \-\-file\-root=FILE_ROOT +Set this directory as the base file root. +.UNINDENT +.INDENT 0.0 +.TP +.B \-\-pillar\-root=PILLAR_ROOT +Set this directory as the base pillar root. +.UNINDENT +.INDENT 0.0 +.TP +.B \-\-retcode\-passthrough +Exit with the salt call retcode and not the salt binary retcode +.UNINDENT +.INDENT 0.0 +.TP +.B \-\-metadata +Print out the execution metadata as well as the return. This will print out +the outputter data, the return code, etc. +.UNINDENT +.INDENT 0.0 +.TP +.B \-\-id=ID +Specify the minion id to use. If this option is omitted, the id option from +the minion config will be used. +.UNINDENT +.INDENT 0.0 +.TP +.B \-\-skip\-grains +Do not load grains. +.UNINDENT +.INDENT 0.0 +.TP +.B \-\-refresh\-grains\-cache +Force a refresh of the grains cache +.UNINDENT .SS Logging Options .sp Logging options which override any settings defined on the configuration files. diff --git a/doc/man/salt.7 b/doc/man/salt.7 index 3ec880e5de..61a4703835 100644 --- a/doc/man/salt.7 +++ b/doc/man/salt.7 @@ -1,6 +1,6 @@ .\" Man page generated from reStructuredText. . -.TH "SALT" "7" "March 27, 2015" "2015.2.0rc1-246-g596dbc3" "Salt" +.TH "SALT" "7" "April 14, 2015" "2014.7.4-180-gc0d1bdd" "Salt" .SH NAME salt \- Salt Documentation . @@ -321,8 +321,8 @@ systemctl start salt\-master Now go to the \fBConfiguring Salt\fP page. .SS Debian Installation .sp -Currently the latest packages for Debian Old Stable, Stable, and -Unstable (Squeeze, Wheezy, and Sid) are published in our +Currently the latest packages for Debian Old Stable, Stable and +Unstable (Squeeze, Wheezy and Sid) are published in our (saltstack.com) Debian repository. .SS Configure Apt .SS Squeeze (Old Stable) @@ -587,7 +587,7 @@ Now go to the \fBConfiguring Salt\fP page. .SS FreeBSD .sp Salt was added to the FreeBSD ports tree Dec 26th, 2011 by Christer Edwards -<\fI\%christer.edwards@gmail.com\fP>. It has been tested on FreeBSD 7.4, 8.2, 9.0, and 9.1 +<\fI\%christer.edwards@gmail.com\fP>. It has been tested on FreeBSD 7.4, 8.2, 9.0 and 9.1 releases. .sp Salt is dependent on the following additional ports. These will be installed as @@ -739,14 +739,7 @@ Now go to the \fBConfiguring Salt\fP page. .SS OS X .SS Dependency Installation .sp -It should be noted that Homebrew explicitly discourages the \fI\%use of sudo\fP: -.INDENT 0.0 -.INDENT 3.5 -Homebrew is designed to work without using sudo. You can decide to use it but we strongly recommend not to do so. If you have used sudo and run into a bug then it is likely to be the cause. Please don’t file a bug report unless you can reproduce it after reinstalling Homebrew from scratch without using sudo -.UNINDENT -.UNINDENT -.sp -So when using Homebrew, if you want support from the Homebrew community, install this way: +When installing via Homebrew, dependency resolution is handled for you. .INDENT 0.0 .INDENT 3.5 .sp @@ -758,19 +751,24 @@ brew install saltstack .UNINDENT .UNINDENT .sp -When using MacPorts, install this way: +When using macports, zmq, swig, and pip may need to be installed this way: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C -sudo port install salt +sudo port install py\-zmq +sudo port install py27\-m2crypto +sudo port install py27\-crypto +sudo port install py27\-msgpack +sudo port install swig\-python +sudo port install py\-pip .ft P .fi .UNINDENT .UNINDENT .sp -When only using the OS X system\(aqs pip, install this way: +For installs using the OS X system python, pip install needs to use \(aqsudo\(aq: .INDENT 0.0 .INDENT 3.5 .sp @@ -813,7 +811,7 @@ Now the salt\-master should run without errors: .sp .nf .ft C -sudo salt\-master \-\-log\-level=all +sudo /usr/local/share/python/salt\-master \-\-log\-level=all .ft P .fi .UNINDENT @@ -938,16 +936,6 @@ If this repo is added \fIbefore\fP Salt is installed, then installing either \fBsalt\-master\fP or \fBsalt\-minion\fP will automatically pull in ZeroMQ 4.0.4, and additional states to upgrade ZeroMQ and pyzmq are unnecessary. .sp -\fBWARNING:\fP -.INDENT 0.0 -.INDENT 3.5 -RHEL/CentOS 5 Users -Using COPR repos on RHEL/CentOS 5 requires that the \fBpython\-hashlib\fP -package be installed. Not having it present will result in checksum errors -because YUM will not be able to process the SHA256 checksums used by COPR. -.UNINDENT -.UNINDENT -.sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 @@ -1248,18 +1236,6 @@ sudo apt\-get install python\-software\-properties .UNINDENT .UNINDENT .sp -The following may be required as well: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -sudo apt\-get install software\-properties\-common -.ft P -.fi -.UNINDENT -.UNINDENT -.sp Note that since Ubuntu 12.10 (Raring Ringtail), \fBadd\-apt\-repository\fP is found in the \fIsoftware\-properties\-common\fP package, and is part of the base install. Thus, \fBadd\-apt\-repository\fP should be able to be used @@ -1403,6 +1379,12 @@ minion exe>\fP should match the contents of the corresponding md5 file. .IP "Download here" .INDENT 0.0 .IP \(bu 2 +2014.7.4 +.IP \(bu 2 +\fI\%Salt\-Minion\-2014.7.4\-x86\-Setup.exe\fP | \fI\%md5\fP +.IP \(bu 2 +\fI\%Salt\-Minion\-2014.7.4\-AMD64\-Setup.exe\fP | \fI\%md5\fP +.IP \(bu 2 2014.7.2 .IP \(bu 2 \fI\%Salt\-Minion\-2014.7.2\-x86\-Setup.exe\fP | \fI\%md5\fP @@ -1574,7 +1556,7 @@ The 2014.7.0 installers have been removed because of a regression. Please use th \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 -The executables above will install all dependencies that the Salt minion +The executables above will install dependencies that the Salt minion requires. .UNINDENT .UNINDENT @@ -1743,42 +1725,6 @@ pip install wmi .UNINDENT .UNINDENT .IP 20. 4 -Install requests -.INDENT 4.0 -.INDENT 3.5 -.sp -.nf -.ft C -pip install requests -.ft P -.fi -.UNINDENT -.UNINDENT -.IP 21. 4 -Install markupsafe -.INDENT 4.0 -.INDENT 3.5 -.sp -.nf -.ft C -pip install markupsafe -.ft P -.fi -.UNINDENT -.UNINDENT -.IP 22. 4 -Install six -.INDENT 4.0 -.INDENT 3.5 -.sp -.nf -.ft C -pip install six -.ft P -.fi -.UNINDENT -.UNINDENT -.IP 23. 4 Install esky .INDENT 4.0 .INDENT 3.5 @@ -1790,7 +1736,7 @@ pip install esky .fi .UNINDENT .UNINDENT -.IP 24. 4 +.IP 21. 4 Install Salt .INDENT 4.0 .INDENT 3.5 @@ -1803,7 +1749,7 @@ python setup.py install .fi .UNINDENT .UNINDENT -.IP 25. 4 +.IP 22. 4 Build a frozen binary distribution of Salt .INDENT 4.0 .INDENT 3.5 @@ -1934,7 +1880,7 @@ For more info check \fI\%http://csa\-net.dk/salt\fP .sp On windows Server 2003, you need to install optional component "wmi windows installer provider" to have full list of installed packages. If you don\(aqt have -this, salt\-minion can\(aqt report some installed packages. +this, salt\-minion can\(aqt report some installed softwares. .SS SUSE Installation .sp With openSUSE 13.1, Salt 0.16.4 has been available in the primary repositories. @@ -2395,15 +2341,6 @@ apache: # ID declaration .UNINDENT .UNINDENT .sp -\fBNOTE:\fP -.INDENT 0.0 -.INDENT 3.5 -The apache package has different names on different platforms, for -instance on Debian/Ubuntu it is apache2, on Fedora/RHEL it is httpd -and on Arch it is apache -.UNINDENT -.UNINDENT -.sp The only thing left is to provision our minion using salt\-call and the highstate command. .SS Salt\-call @@ -2449,6 +2386,415 @@ The minion should now have Apache installed, and the next step is to begin learning how to write \fBmore complex states\fP\&. .SS Basics +.SS Salt Bootstrap +.sp +The Salt Bootstrap script allows for a user to install the Salt Minion or +Master on a variety of system distributions and versions. This shell script +known as \fBbootstrap\-salt.sh\fP runs through a series of checks to determine +the operating system type and version. It then installs the Salt binaries +using the appropriate methods. The Salt Bootstrap script installs the +minimum number of packages required to run Salt. This means that in the event +you run the bootstrap to install via package, Git will not be installed. +Installing the minimum number of packages helps ensure the script stays as +lightweight as possible, assuming the user will install any other required +packages after the Salt binaries are present on the system. The script source +is available on GitHub: \fI\%https://github.com/saltstack/salt\-bootstrap\fP +.SS Supported Operating Systems +.INDENT 0.0 +.IP \(bu 2 +Amazon Linux 2012.09 +.IP \(bu 2 +Arch +.IP \(bu 2 +CentOS 5/6 +.IP \(bu 2 +Debian 6.x/7.x/8(git installations only) +.IP \(bu 2 +Fedora 17/18 +.IP \(bu 2 +FreeBSD 9.1/9.2/10 +.IP \(bu 2 +Gentoo +.IP \(bu 2 +Linaro +.IP \(bu 2 +Linux Mint 13/14 +.IP \(bu 2 +OpenSUSE 12.x +.IP \(bu 2 +Oracle Linux 5/5 +.IP \(bu 2 +Red Hat 5/6 +.IP \(bu 2 +Red Hat Enterprise 5/6 +.IP \(bu 2 +Scientific Linux 5/6 +.IP \(bu 2 +SmartOS +.IP \(bu 2 +SuSE 11 SP1/11 SP2 +.IP \(bu 2 +Ubuntu 10.x/11.x/12.x/13.04/13.10 +.IP \(bu 2 +Elementary OS 0.2 +.UNINDENT +.sp +\fBNOTE:\fP +.INDENT 0.0 +.INDENT 3.5 +In the event you do not see your distribution or version available please +review the develop branch on Github as it main contain updates that are +not present in the stable release: +\fI\%https://github.com/saltstack/salt\-bootstrap/tree/develop\fP +.UNINDENT +.UNINDENT +.SS Example Usage +.sp +If you\(aqre looking for the \fIone\-liner\fP to install salt, please scroll to the +bottom and use the instructions for \fI\%Installing via an Insecure One\-Liner\fP +.sp +\fBNOTE:\fP +.INDENT 0.0 +.INDENT 3.5 +In every two\-step example, you would be well\-served to examine the downloaded file and examine +it to ensure that it does what you expect. +.UNINDENT +.UNINDENT +.sp +Using \fBcurl\fP to install latest git: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +curl \-L https://bootstrap.saltstack.com \-o install_salt.sh +sudo sh install_salt.sh git develop +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +Using \fBwget\fP to install your distribution\(aqs stable packages: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +wget \-O install_salt.sh https://bootstrap.saltstack.com +sudo sh install_salt.sh +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +Install a specific version from git using \fBwget\fP: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +wget \-O install_salt.sh https://bootstrap.saltstack.com +sudo sh install_salt.sh \-P git v0.16.4 +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +If you already have python installed, \fBpython 2.6\fP, then it\(aqs as easy as: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +python \-m urllib "https://bootstrap.saltstack.com" > install_salt.sh +sudo sh install_salt.sh git develop +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +All python versions should support the following one liner: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +python \-c \(aqimport urllib; print urllib.urlopen("https://bootstrap.saltstack.com").read()\(aq > install_salt.sh +sudo sh install_salt.sh git develop +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +On a FreeBSD base system you usually don\(aqt have either of the above binaries available. You \fBdo\fP +have \fBfetch\fP available though: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +fetch \-o install_salt.sh https://bootstrap.saltstack.com +sudo sh install_salt.sh +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +If all you want is to install a \fBsalt\-master\fP using latest git: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +curl \-o install_salt.sh.sh \-L https://bootstrap.saltstack.com +sudo sh install_salt.sh.sh \-M \-N git develop +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +If you want to install a specific release version (based on the git tags): +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +curl \-o install_salt.sh.sh \-L https://bootstrap.saltstack.com +sudo sh install_salt.sh.sh git v0.16.4 +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +To install a specific branch from a git fork: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +curl \-o install_salt.sh.sh \-L https://bootstrap.saltstack.com +sudo sh install_salt.sh.sh \-g https://github.com/myuser/salt.git git mybranch +.ft P +.fi +.UNINDENT +.UNINDENT +.SS Installing via an Insecure One\-Liner +.sp +The following examples illustrate how to install Salt via a one\-liner. +.sp +\fBNOTE:\fP +.INDENT 0.0 +.INDENT 3.5 +Warning! These methods do not involve a verification step and assume that +the delivered file is trustworthy. +.UNINDENT +.UNINDENT +.SS Examples +.sp +Installing the latest develop branch of Salt: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +curl \-L https://bootstrap.saltstack.com | sudo sh \-s \-\- git develop +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +Any of the example above which use two\-lines can be made to run in a single\-line +configuration with minor modifications. +.SS Example Usage +.sp +The Salt Bootstrap script has a wide variety of options that can be passed as +well as several ways of obtaining the bootstrap script itself. +.sp +For example, using \fBcurl\fP to install your distribution\(aqs stable packages: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +curl \-L https://bootstrap.saltstack.com | sudo sh +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +Using \fBwget\fP to install your distribution\(aqs stable packages: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +wget \-O \- https://bootstrap.saltstack.com | sudo sh +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +Installing the latest version available from git with \fBcurl\fP: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +curl \-L https://bootstrap.saltstack.com | sudo sh \-s \-\- git develop +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +Install a specific version from git using \fBwget\fP: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +wget \-O \- https://bootstrap.saltstack.com | sh \-s \-\- \-P git v0.16.4 +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +If you already have python installed, \fBpython 2.6\fP, then it\(aqs as easy as: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +python \-m urllib "https://bootstrap.saltstack.com" | sudo sh \-s \-\- git develop +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +All python versions should support the following one liner: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +python \-c \(aqimport urllib; print urllib.urlopen("https://bootstrap.saltstack.com").read()\(aq | \e +sudo sh \-s \-\- git develop +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +On a FreeBSD base system you usually don\(aqt have either of the above binaries +available. You \fBdo\fP have \fBfetch\fP available though: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +fetch \-o \- https://bootstrap.saltstack.com | sudo sh +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +If all you want is to install a \fBsalt\-master\fP using latest git: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +curl \-L https://bootstrap.saltstack.com | sudo sh \-s \-\- \-M \-N git develop +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +If you want to install a specific release version (based on the git tags): +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +curl \-L https://bootstrap.saltstack.com | sudo sh \-s \-\- git v0.16.4 +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +Downloading the develop branch (from here standard command line options may be +passed): +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +wget https://bootstrap.saltstack.com/develop +.ft P +.fi +.UNINDENT +.UNINDENT +.SS Command Line Options +.sp +Here\(aqs a summary of the command line options: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +$ sh bootstrap\-salt.sh \-h + + Usage : bootstrap\-salt.sh [options] + + Installation types: + \- stable (default) + \- daily (ubuntu specific) + \- git + + Examples: + $ bootstrap\-salt.sh + $ bootstrap\-salt.sh stable + $ bootstrap\-salt.sh daily + $ bootstrap\-salt.sh git + $ bootstrap\-salt.sh git develop + $ bootstrap\-salt.sh git v0.17.0 + $ bootstrap\-salt.sh git 8c3fadf15ec183e5ce8c63739850d543617e4357 + + Options: + \-h Display this message + \-v Display script version + \-n No colours. + \-D Show debug output. + \-c Temporary configuration directory + \-g Salt repository URL. (default: git://github.com/saltstack/salt.git) + \-k Temporary directory holding the minion keys which will pre\-seed + the master. + \-M Also install salt\-master + \-S Also install salt\-syndic + \-N Do not install salt\-minion + \-X Do not start daemons after installation + \-C Only run the configuration function. This option automatically + bypasses any installation. + \-P Allow pip based installations. On some distributions the required salt + packages or its dependencies are not available as a package for that + distribution. Using this flag allows the script to use pip as a last + resort method. NOTE: This only works for functions which actually + implement pip based installations. + \-F Allow copied files to overwrite existing(config, init.d, etc) + \-U If set, fully upgrade the system prior to bootstrapping salt + \-K If set, keep the temporary files in the temporary directories specified + with \-c and \-k. + \-I If set, allow insecure connections while downloading any files. For + example, pass \(aq\-\-no\-check\-certificate\(aq to \(aqwget\(aq or \(aq\-\-insecure\(aq to \(aqcurl\(aq + \-A Pass the salt\-master DNS name or IP. This will be stored under + ${BS_SALT_ETC_DIR}/minion.d/99\-master\-address.conf + \-i Pass the salt\-minion id. This will be stored under + ${BS_SALT_ETC_DIR}/minion_id + \-L Install the Apache Libcloud package if possible(required for salt\-cloud) + \-p Extra\-package to install while installing salt dependencies. One package + per \-p flag. You\(aqre responsible for providing the proper package name. +.ft P +.fi +.UNINDENT +.UNINDENT .SS Standalone Minion .sp Since the Salt minion contains such extensive functionality it can be useful @@ -2554,9 +2900,9 @@ salt\-call state.highstate \-\-local .SS Opening the Firewall up for Salt .sp The Salt master communicates with the minions using an AES\-encrypted ZeroMQ -connection. These communications are done over TCP ports \fB4505\fP and \fB4506\fP, -which need to be accessible on the master only. This document outlines suggested -firewall rules for allowing these incoming connections to the master. +connection. These communications are done over TCP ports 4505 and 4506, which need +to be accessible on the master only. This document outlines suggested firewall +rules for allowing these incoming connections to the master. .sp \fBNOTE:\fP .INDENT 0.0 @@ -2565,42 +2911,12 @@ No firewall configuration needs to be done on Salt minions. These changes refer to the master only. .UNINDENT .UNINDENT -.SS Fedora 18 and beyond / RHEL 7 / CentOS 7 -.sp -Starting with Fedora 18 \fI\%FirewallD\fP is the tool that is used to dynamically -manage the firewall rules on a host. It has support for IPv4/6 settings and -the separation of runtime and permanent configurations. To interact with -FirewallD use the command line client \fBfirewall\-cmd\fP\&. -.sp -\fBfirewall\-cmd example\fP: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -firewall\-cmd \-\-permanent \-\-zone= \-\-add\-port=4505\-4506/tcp -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Please choose the desired zone according to your setup. Don\(aqt forget to reload -after you made your changes. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -firewall\-cmd \-\-reload -.ft P -.fi -.UNINDENT -.UNINDENT .SS RHEL 6 / CentOS 6 .sp The \fBlokkit\fP command packaged with some Linux distributions makes opening iptables firewall ports very simple via the command line. Just be careful -to not lock out access to the server by neglecting to open the ssh port. +to not lock out access to the server by neglecting to open the ssh +port. .sp \fBlokkit example\fP: .INDENT 0.0 @@ -2614,8 +2930,8 @@ lokkit \-p 22:tcp \-p 4505:tcp \-p 4506:tcp .UNINDENT .UNINDENT .sp -The \fBsystem\-config\-firewall\-tui\fP command provides a text\-based interface to -modifying the firewall. +The \fBsystem\-config\-firewall\-tui\fP command provides a text\-based interface to modifying +the firewall. .sp \fBsystem\-config\-firewall\-tui\fP: .INDENT 0.0 @@ -2644,9 +2960,8 @@ SuSEfirewall2 start .UNINDENT .UNINDENT .sp -If you have an older package of Salt where the above configuration file is -not included, the \fBSuSEfirewall2\fP command makes opening iptables firewall -ports very simple via the command line. +If you have an older package of Salt where the above configuration file is not included, the \fBSuSEfirewall2\fP command makes opening iptables firewall ports +very simple via the command line. .sp \fBSuSEfirewall example\fP: .INDENT 0.0 @@ -2661,8 +2976,7 @@ SuSEfirewall2 open EXT TCP 4506 .UNINDENT .UNINDENT .sp -The firewall module in YaST2 provides a text\-based interface to modifying the -firewall. +The firewall module in YaST2 provides a text\-based interface to modifying the firewall. .sp \fBYaST2\fP: .INDENT 0.0 @@ -3171,13 +3485,13 @@ to them asking that they fetch their pillars from the master: .sp .nf .ft C -salt \(aq*\(aq saltutil.refresh_pillar +salt \(aq*\(aq saltutil.pillar_refresh .ft P .fi .UNINDENT .UNINDENT .sp -Now that the minions have the new pillar, it can be retrieved: +Now that the minions have the new pillar, it can be retreived: .INDENT 0.0 .INDENT 3.5 .sp @@ -3998,7 +4312,7 @@ This example shows much more of the available power of Jinja. Multiple for loops are used to dynamically detect available hard drives and set them up to be mounted, and the \fBsalt\fP object is used multiple times to call shell commands to gather data. -.SS Introducing the Python, PyDSL, and the Pyobjects Renderers +.SS Introducing the Python, PyDSL and the Pyobjects Renderers .sp Sometimes the chosen default renderer might not have enough logical power to accomplish the needed task. When this happens, the Python renderer can be @@ -4513,7 +4827,7 @@ Verify that Apache is now serving your custom HTML. .INDENT 3.5 .IP "\fBrequire\fP vs. \fBwatch\fP" .sp -There are two \fIrequisite\-declaration\fP, “require”, and “watch”. Not +There are two \fIrequisite\-declaration\fP, “require” and “watch”. Not every state supports “watch”. The \fBservice state\fP does support “watch” and will restart a service based on the watch condition. .sp @@ -4548,7 +4862,7 @@ in \fBPart 3\fP\&. .UNINDENT .SS Next steps .sp -In \fBpart 3\fP we will discuss how to use includes, extends, and +In \fBpart 3\fP we will discuss how to use includes, extends and templating to make a more complete State Tree configuration. .SS States tutorial, part 3 \- Templating, Includes, Extends .sp @@ -5336,7 +5650,7 @@ stage executes without any failures. The \fBwebservers\fP stage will execute a \fBstate.highstate\fP on all minions whose minion IDs start with "web". .IP 3. 3 -Finally, the \fBall\fP stage will execute, running \fBstate.highstate\fP on all systems, if, and only if the \fBmysql\fP +Finally, the \fBall\fP stage will execute, running \fBstate.highstate\fP on all systems, if and only if the \fBmysql\fP and \fBwebservers\fP stages completed without any failures. .UNINDENT .sp @@ -5419,9 +5733,8 @@ Remember, salt\-run is always executed on the master. .UNINDENT .UNINDENT .SS Syslog\-ng usage -.SS Overview .sp -Syslog_ng state module is for generating syslog\-ng +The syslog_ng state modul is to generate syslog\-ng configurations. You can do the following things: .INDENT 0.0 .IP \(bu 2 @@ -5436,32 +5749,36 @@ There is also an execution module, which can check the syntax of the configuration, get the version and other information about syslog\-ng. .SS Configuration .sp -Users can create syslog\-ng configuration statements with the -\fBsyslog_ng.config\fP function. It requires -a \fIname\fP and a \fIconfig\fP parameter. The \fIname\fP parameter determines the name of -the generated statement and the \fIconfig\fP parameter holds a parsed YAML structure. -.sp -A statement can be declared in the following forms (both are equivalent): +The following configuration is an example, how a complete syslog\-ng +state configuration looks like: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C -source.s_localhost: +# Set the location of the configuration file +"/home/tibi/install/syslog\-ng/etc/syslog\-ng.conf": + syslog_ng.set_config_file + +# The syslog\-ng and syslog\-ng\-ctl binaries are here. You needn\(aqt use +# this method if these binaries can be found in a directory in your PATH. +"/home/tibi/install/syslog\-ng/sbin": + syslog_ng.set_binary_path + +# Writes the first lines into the config file, also erases its previous +# content +"3.6": + syslog_ng.write_version + +# Some global options +global_options: syslog_ng.config: \- config: - \- tcp: - \- ip: "127.0.0.1" - \- port: 1233 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C + options: + \- time_reap: 30 + \- mark_freq: 10 + \- keep_hostname: "yes" + s_localhost: syslog_ng.config: \- config: @@ -5469,112 +5786,61 @@ s_localhost: \- tcp: \- ip: "127.0.0.1" \- port: 1233 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The first one is called short form, because it needs less typing. Users can use lists -and dictionaries to specify their configuration. The format is quite self describing and -there are more examples [at the end](#examples) of this document. -.SS Quotation -.INDENT 0.0 -.TP -.B The quotation can be tricky sometimes but here are some rules to follow: -.INDENT 7.0 -.IP \(bu 2 -when a string meant to be \fB"string"\fP in the generated configuration, it should be like \fB\(aq"string"\(aq\fP in the YAML document -.IP \(bu 2 -similarly, users should write \fB"\(aqstring\(aq"\fP to get \fB\(aqstring\(aq\fP in the generated configuration -.UNINDENT -.UNINDENT -.SS Full example -.sp -The following configuration is an example, how a complete syslog\-ng configuration looks like: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -# Set the location of the configuration file -set_location: - module.run: - \- name: syslog_ng.set_config_file - \- m_name: "/home/tibi/install/syslog\-ng/etc/syslog\-ng.conf" -# The syslog\-ng and syslog\-ng\-ctl binaries are here. You needn\(aqt use -# this method if these binaries can be found in a directory in your PATH. -set_bin_path: - module.run: - \- name: syslog_ng.set_binary_path - \- m_name: "/home/tibi/install/syslog\-ng/sbin" - -# Writes the first lines into the config file, also erases its previous -# content -write_version: - module.run: - \- name: syslog_ng.write_version - \- m_name: "3.6" - -# There is a shorter form to set the above variables -set_variables: - module.run: - \- name: syslog_ng.set_parameters - \- version: "3.6" - \- binary_path: "/home/tibi/install/syslog\-ng/sbin" - \- config_file: "/home/tibi/install/syslog\-ng/etc/syslog\-ng.conf" - - -# Some global options -options.global_options: +d_log_server: syslog_ng.config: \- config: - \- time_reap: 30 - \- mark_freq: 10 - \- keep_hostname: "yes" + destination: + \- tcp: + \- "127.0.0.1" + \- port: 1234 -source.s_localhost: +l_log_to_central_server: syslog_ng.config: \- config: - \- tcp: - \- ip: "127.0.0.1" - \- port: 1233 - -destination.d_log_server: - syslog_ng.config: - \- config: - \- tcp: - \- "127.0.0.1" - \- port: 1234 - -log.l_log_to_central_server: - syslog_ng.config: - \- config: - \- source: s_localhost - \- destination: d_log_server + log: + \- source: s_localhost + \- destination: d_log_server some_comment: - module.run: - \- name: syslog_ng.write_config + syslog_ng.write_config: \- config: | # Multi line # comment -# An other mode to use comments or existing configuration snippets -config.other_comment_form: - syslog_ng.config: - \- config: | - # Multi line - # comment +auto_start_or_reload: + {% set pids = salt["ps.pgrep"]("syslog\-ng") %} + {% if pids == None or pids|length == 0 %} + syslog_ng.started: + \- user: tibi + {% else %} + syslog_ng.reloaded + {% endif %} + +#auto_stop: +# syslog_ng.stopped .ft P .fi .UNINDENT .UNINDENT .sp -The \fBsyslog_ng.reloaded\fP function can generate syslog\-ng configuration from YAML. If the statement (source, destination, parser, +The \fB3.6\fP, \fBs_devlog\fP, \fBd_log_server\fP, etc. are identifiers. The +second lines in each block are functions and their first parameter is +their id. The \fB\- config\fP is the second named parameter of the +\fBsyslog_ng.config\fP function. This function can generate the syslog\-ng +configuration from YAML. If the statement (source, destination, parser, etc.) has a name, this function uses the id as the name, otherwise (log statement) it\(aqs purpose is like a mandatory comment. .sp +You can use \fBset_binary_path\fP to set the directory which contains the +syslog\-ng and syslog\-ng\-ctl binaries. If this directory is in your PATH, +you don\(aqt need to use this function. +.sp +Under \fBauto_start_or_reload\fP you can see a Jinja template. If +syslog\-ng isn\(aqt running it will start it, otherwise reload it. It uses +the process name \fBsyslog\-ng\fP to determine its running state. I suggest +that you use \fBservice\fP state if it\(aqs available on your system. +.sp After execution this example the syslog_ng state will generate this file: .INDENT 0.0 @@ -5582,58 +5848,34 @@ file: .sp .nf .ft C -#Generated by Salt on 2014\-08\-18 00:11:11 +#Generated by Salt on 2014\-06\-19 16:53:11 @version: 3.6 options { - time_reap( - 30 - ); - mark_freq( - 10 - ); - keep_hostname( - yes - ); + time_reap(30); + mark_freq(10); + keep_hostname(yes); }; - source s_localhost { - tcp( - ip( - 127.0.0.1 - ), - port( - 1233 - ) - ); + tcp( + ip("127.0.0.1"), + port(1233) + ); }; - destination d_log_server { - tcp( - 127.0.0.1, - port( - 1234 - ) - ); + tcp( + "127.0.0.1", + port(1234) + ); }; - log { - source( - s_localhost - ); - destination( - d_log_server - ); + source(s_localhost); + destination(d_log_server); }; - -# Multi line -# comment - - # Multi line # comment .ft P @@ -5642,14 +5884,7 @@ log { .UNINDENT .sp Users can include arbitrary texts in the generated configuration with -using the \fBconfig\fP statement (see the example above). -.SS Syslog_ng module functions -.sp -You can use \fBsyslog_ng.set_binary_path\fP -to set the directory which contains the -syslog\-ng and syslog\-ng\-ctl binaries. If this directory is in your PATH, -you don\(aqt need to use this function. There is also a \fBsyslog_ng.set_config_file\fP -function to set the location of the configuration file. +using the \fBwrite_config\fP function. .SS Examples .SS Simple source .INDENT 0.0 @@ -5679,7 +5914,7 @@ s_tail: \- config: source: \- file: - \- file: \(aq\(aq"/var/log/apache/access.log"\(aq\(aq + \- file: "/var/log/apache/access.log" \- follow_freq : 1 \- flags: \- no\-parse @@ -5700,7 +5935,7 @@ s_tail: \- config: source: \- file: - \- \(aq\(aq"/var/log/apache/access.log"\(aq\(aq + \- "/var/log/apache/access.log" \- follow_freq : 1 \- flags: \- no\-parse @@ -5709,26 +5944,6 @@ s_tail: .fi .UNINDENT .UNINDENT -.sp -OR -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -source.s_tail: - syslog_ng.config: - \- config: - \- file: - \- \(aq\(aq"/var/log/apache/access.log"\(aq\(aq - \- follow_freq : 1 - \- flags: - \- no\-parse - \- validate\-utf8 -.ft P -.fi -.UNINDENT -.UNINDENT .SS Complex source .INDENT 0.0 .INDENT 3.5 @@ -5788,7 +6003,7 @@ f_json: \- config: filter: \- match: - \- \(aq\(aq"@json:"\(aq\(aq + \- "@json:" .ft P .fi .UNINDENT @@ -5821,7 +6036,7 @@ t_demo_filetemplate: \-config: template: \- template: - \- \(aq"$ISODATE $HOST $MSG\en"\(aq + \- "$ISODATE $HOST $MSG\en" \- template_escape: \- "no" .ft P @@ -5854,8 +6069,8 @@ r_set_message_to_MESSAGE: \- config: rewrite: \- set: - \- \(aq"${.json.message}"\(aq - \- value : \(aq"$MESSAGE"\(aq + \- "${.json.message}" + \- value : "$MESSAGE" .ft P .fi .UNINDENT @@ -5953,7 +6168,7 @@ l_gsoc2014: \- rewrite: r_set_message_to_MESSAGE \- destination: \- file: - \- \(aq"/tmp/json\-input.log"\(aq + \- "/tmp/json\-input.log" \- template: t_gsoc2014 \- flags: final \- channel: @@ -6001,7 +6216,7 @@ that can solve many specific problems in an infrastructure. .sp The backbone of Salt is the remote execution engine, which creates a high\-speed, secure and bi\-directional communication net for groups of systems. On top of this -communication system, Salt provides an extremely fast, flexible, and easy\-to\-use +communication system, Salt provides an extremely fast, flexible and easy\-to\-use configuration management system called \fBSalt States\fP\&. .SS Installing Salt .sp @@ -6210,7 +6425,7 @@ salt\-key \-L .UNINDENT .UNINDENT .sp -The keys that have been rejected, accepted, and pending acceptance are listed. +The keys that have been rejected, accepted and pending acceptance are listed. The easiest way to accept the minion key is to accept all pending keys: .INDENT 0.0 .INDENT 3.5 @@ -6232,32 +6447,8 @@ public key. This fingerprint can then be compared against the fingerprint generated on the minion. .sp On the master: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -# salt\-key \-f foo.domain.com -Unaccepted Keys: -foo.domain.com: 39:f9:e4:8a:aa:74:8d:52:1a:ec:92:03:82:09:c8:f9 -.ft P -.fi -.UNINDENT -.UNINDENT .sp On the minion: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -# salt\-call key.finger \-\-local -local: - 39:f9:e4:8a:aa:74:8d:52:1a:ec:92:03:82:09:c8:f9 -.ft P -.fi -.UNINDENT -.UNINDENT .sp If they match, approve the key with \fBsalt\-key \-a foo.domain.com\fP\&. .UNINDENT @@ -6327,7 +6518,7 @@ targeted minions: .sp .nf .ft C -salt \(aq*\(aq disk.usage +salt \(aq*\(aq disk.percent .ft P .fi .UNINDENT @@ -6477,7 +6668,7 @@ function. .sp Salt allows for minions to be targeted based on a wide range of criteria. The default targeting system uses globular expressions to match minions, hence if -there are minions named \fBlarry1\fP, \fBlarry2\fP, \fBcurly1\fP, and \fBcurly2\fP, a +there are minions named \fBlarry1\fP, \fBlarry2\fP, \fBcurly1\fP and \fBcurly2\fP, a glob of \fBlarry*\fP will match \fBlarry1\fP and \fBlarry2\fP, and a glob of \fB*1\fP will match \fBlarry1\fP and \fBcurly1\fP\&. .sp @@ -6995,92 +7186,66 @@ tool. This tool allows one to build a complete zipfile out of the salt scripts and all their dependencies \- including shared objects / DLLs. .SS Getting Started .sp -To build frozen applications, suitable build environment will be needed for -each platform. You should probably set up a virtualenv in order to limit the -scope of Q/A. +To build frozen applications, you\(aqll need a suitable build environment for each +of your platforms. You should probably set up a virtualenv in order to limit +the scope of Q/A. .sp -This process does work on Windows. Directions are available at +This process does work on Windows. Follow the directions at \fI\%https://github.com/saltstack/salt\-windows\-install\fP for details on installing Salt in Windows. Only the 32\-bit Python and dependencies have been tested, but they have been tested on 64\-bit Windows. .sp -Install \fBbbfreeze\fP, and then \fBesky\fP from PyPI in order to enable the -\fBbdist_esky\fP command in \fBsetup.py\fP\&. Salt itself must also be installed, in -addition to its dependencies. +You will need to install \fBesky\fP and \fBbbfreeze\fP from PyPI in order to enable +the \fBbdist_esky\fP command in \fBsetup.py\fP\&. .SS Building and Freezing .sp -Once you have your tools installed and the environment configured, use -\fBsetup.py\fP to prepare the distribution files. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -python setup.py sdist -python setup.py bdist -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Once the distribution files are in place, Esky can be used traverse the module -tree and pack all the scripts up into a redistributable. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -python setup.py bdist_esky -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -There will be an appropriately versioned \fBsalt\-VERSION.zip\fP in \fBdist/\fP if -everything went smoothly. +Once you have your tools installed and the environment configured, you can then +\fBpython setup.py bdist\fP to get the eggs prepared. After that is done, run +\fBpython setup.py bdist_esky\fP to have Esky traverse the module tree and pack +all the scripts up into a redistributable. There will be an appropriately +versioned \fBsalt\-VERSION.zip\fP in \fBdist/\fP if everything went smoothly. .SS Windows .sp -\fBC:\ePython27\elib\esite\-packages\ezmq\fP will need to be added to the PATH +You will need to add \fBC:\ePython27\elib\esite\-packages\ezmq\fP to your PATH variable. This helps bbfreeze find the zmq DLL so it can pack it up. .SS Using the Frozen Build .sp -Unpack the zip file in the desired install location. Scripts like +Unpack the zip file in your desired install location. Scripts like \fBsalt\-minion\fP and \fBsalt\-call\fP will be in the root of the zip file. The associated libraries and bootstrapping will be in the directories at the same level. (Check the \fI\%Esky\fP documentation for more information) .sp -To support updating your minions in the wild, put the builds on a web server -that the minions can reach. \fBsalt.modules.saltutil.update()\fP will +To support updating your minions in the wild, put your builds on a web server +that your minions can reach. \fBsalt.modules.saltutil.update()\fP will trigger an update and (optionally) a restart of the minion service under the new version. -.SS Troubleshooting -.SS A Windows minion isn\(aqt responding +.SS Gotchas +.SS My Windows minion isn\(aqt responding .sp -The process dispatch on Windows is slower than it is on *nix. It may be -necessary to add \(aq\-t 15\(aq to salt commands to give minions plenty of time to -return. +The process dispatch on Windows is slower than it is on *nix. You may need to +add \(aq\-t 15\(aq to your salt calls to give them plenty of time to return. .SS Windows and the Visual Studio Redist .sp -The Visual C++ 2008 32\-bit redistributable will need to be installed on all +You will need to install the Visual C++ 2008 32\-bit redistributable on all Windows minions. Esky has an option to pack the library into the zipfile, -but OpenSSL does not seem to acknowledge the new location. If a -\fBno OPENSSL_Applink\fP error appears on the console when trying to start a -frozen minion, the redistributable is not installed. +but OpenSSL does not seem to acknowledge the new location. If you get a +\fBno OPENSSL_Applink\fP error on the console when trying to start your +frozen minion, you have forgotten to install the redistributable. .SS Mixed Linux environments and Yum .sp The Yum Python module doesn\(aqt appear to be available on any of the standard -Python package mirrors. If RHEL/CentOS systems need to be supported, the frozen -build should created on that platform to support all the Linux nodes. Remember -to build the virtualenv with \fB\-\-system\-site\-packages\fP so that the \fByum\fP -module is included. +Python package mirrors. If you need to support RHEL/CentOS systems, you +should build on that platform to support all your Linux nodes. Also remember +to build your virtualenv with \fB\-\-system\-site\-packages\fP so that the +\fByum\fP module is included. .SS Automatic (Python) module discovery .sp -Automatic (Python) module discovery does not work with the late\-loaded scheme -that Salt uses for (Salt) modules. Any misbehaving modules will need to be -explicitly added to the \fBfreezer_includes\fP in Salt\(aqs \fBsetup.py\fP\&. Always -check the zipped application to make sure that the necessary modules were -included. +Automatic (Python) module discovery does not work with the late\-loaded scheme that +Salt uses for (Salt) modules. You will need to explicitly add any +misbehaving modules to the \fBfreezer_includes\fP in Salt\(aqs \fBsetup.py\fP\&. +Always check the zipped application to make sure that the necessary modules +were included. .SS Multi Master Tutorial .sp As of Salt 0.16.0, the ability to connect minions to multiple masters has been @@ -7124,7 +7289,7 @@ already running, stop it. There is only one requirement when preparing a redundant master, which is that masters share the same private key. When the first master was created, the master\(aqs identifying key pair was generated and placed in the master\(aqs \fBpki_dir\fP\&. The default location of the master\(aqs key -pair is \fB/etc/salt/pki/master/\fP\&. Take the private key, \fBmaster.pem\fP, and +pair is \fB/etc/salt/pki/master/\fP\&. Take the private key, \fBmaster.pem\fP and copy it to the same location on the redundant master. Do the same for the master\(aqs public key, \fBmaster.pub\fP\&. Assuming that no minions have yet been connected to the new redundant master, it is safe to delete any existing key @@ -7161,20 +7326,6 @@ Now the minion can be safely restarted. .sp Now the minions will check into the original master and also check into the new redundant master. Both masters are first\-class and have rights to the minions. -.sp -\fBNOTE:\fP -.INDENT 0.0 -.INDENT 3.5 -Minions can automatically detect failed masters and attempt to reconnect -to reconnect to them quickly. To enable this functionality, set -\fImaster_alive_interval\fP in the minion config and specify a number of -seconds to poll the masters for connection status. -.sp -If this option is not set, minions will still reconnect to failed masters -but the first command sent after a master comes back up may be lost while -the minion authenticates. -.UNINDENT -.UNINDENT .SS Sharing Files Between Masters .sp Salt does not automatically share files between multiple masters. A number of @@ -8030,8 +8181,8 @@ If all you want is to install a \fBsalt\-master\fP using latest git: .sp .nf .ft C -curl \-o install_salt.sh \-L https://bootstrap.saltstack.com -sudo sh install_salt.sh \-M \-N git develop +curl \-o install_salt.sh.sh \-L https://bootstrap.saltstack.com +sudo sh install_salt.sh.sh \-M \-N git develop .ft P .fi .UNINDENT @@ -8043,8 +8194,8 @@ If you want to install a specific release version (based on the git tags): .sp .nf .ft C -curl \-o install_salt.sh \-L https://bootstrap.saltstack.com -sudo sh install_salt.sh git v0.16.4 +curl \-o install_salt.sh.sh \-L https://bootstrap.saltstack.com +sudo sh install_salt.sh.sh git v0.16.4 .ft P .fi .UNINDENT @@ -8056,8 +8207,8 @@ To install a specific branch from a git fork: .sp .nf .ft C -curl \-o install_salt.sh \-L https://bootstrap.saltstack.com -sudo sh install_salt.sh \-g https://github.com/myuser/salt.git git mybranch +curl \-o install_salt.sh.sh \-L https://bootstrap.saltstack.com +sudo sh install_salt.sh.sh \-g https://github.com/myuser/salt.git git mybranch .ft P .fi .UNINDENT @@ -8339,11 +8490,7 @@ be used to install it: If \fI\%pygit2\fP is not packaged for the platform on which the Master is running, the \fI\%pygit2\fP website has installation instructions \fI\%here\fP\&. Keep in mind however that following these instructions will install libgit2 and \fI\%pygit2\fP without system -packages. Also, while this is not explicitly mentioned in the \fI\%pygit2\fP -installation instructions, libssh2 development headers must be installed before -building libgit2 in order to enable access to SSH\-protected git repositories. -Luckily, these are available in most distros\(aq repositories, usually as either -\fBlibssh2\-devel\fP or \fBlibssh2\-dev\fP, depending on platform. +packages. .SS GitPython .sp \fI\%GitPython\fP 0.3.0 or newer is required to use GitPython for gitfs. For @@ -8811,9 +8958,9 @@ fileserver_backend: Then the \fBroots\fP backend (the default backend of files in \fB/srv/salt\fP) will be searched first for the requested file; then, if it is not found on the master, each configured git remote will be searched. -.SS Branches, Environments, and Top Files +.SS Branches, Environments and Top Files .sp -When using the gitfs backend, branches, and tags will be mapped to environments +When using the gitfs backend, branches and tags will be mapped to environments using the branch/tag name as an identifier. .sp There is one exception to this rule: the \fBmaster\fP branch is implicitly mapped @@ -9347,7 +9494,7 @@ have to do it all over again. It also lets you \fIuninstall\fP things easily. .INDENT 0.0 .INDENT 3.5 Brew is a Ruby program (Ruby is installed by default with your Mac). Brew -downloads, compiles, and links software. The linking phase is when compiled +downloads, compiles and links software. The linking phase is when compiled software is deployed on your machine. It may conflict with manually installed software, especially in the /usr/local directory. It\(aqs ok, remove the manually installed version then refresh the link by typing @@ -9984,7 +10131,7 @@ deployed. The main goal of Salt Virt is to facilitate a very fast and simple cloud. The cloud that can scale and fully featured. Salt Virt comes with the ability to set up and manage complex virtual machine networking, powerful -image, and disk management, as well as virtual machine migration with and without +image and disk management, as well as virtual machine migration with and without shared storage. .sp This means that Salt Virt can be used to create a cloud from a blade center @@ -10572,7 +10719,8 @@ Currently Halite allows, but does not require, any wheel modules. .SS Configuring Halite Settings .sp Once you\(aqve configured the permissions for Halite, you\(aqll need to set up the -Halite settings in the /etc/salt/master file. Halite supports CherryPy, Paste, and Gevent out of the box. +Halite settings in the /etc/salt/master file. Halite supports CherryPy, Paste +and Gevent out of the box. .sp To configure cherrypy, add the following to the bottom of your /etc/salt/master file: .INDENT 0.0 @@ -10673,8 +10821,8 @@ recognize and prompt to accept the self\-signed certificate. Once you\(aqve configured the halite section of your /etc/salt/master, you can restart the salt\-master service, and your halite instance will be available. Depending on your configuration, the instance will be available either at -\fI\%https://localhost:8080/app\fP, \fI\%https://domain:8080/app\fP, or -\fI\%https://123.456.789.012:8080/app\fP . +\fI\%http://localhost:8080/app\fP, \fI\%http://domain:8080/app\fP, or +\fI\%http://123.456.789.012:8080/app\fP . .sp \fBNOTE:\fP .INDENT 0.0 @@ -10692,10 +10840,9 @@ large numbers of minions. This will include tuning, topology, and best practices .sp For how to install the saltmaster please go here: \fI\%Installing saltstack\fP -.sp -\fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 +Note This tutorial is intended for large installations, although these same settings won\(aqt hurt, it may not be worth the complexity to smaller installations. .sp @@ -10845,11 +10992,7 @@ and 60000ms (or between 1 and 60 seconds). The generated random\-value will be doubled after each attempt to reconnect (ZeroMQ default behavior). .sp Lets say the generated random value is 11 seconds (or 11000ms). -.INDENT 0.0 -.INDENT 3.5 .sp -.nf -.ft C reconnect 1: wait 11 seconds reconnect 2: wait 22 seconds reconnect 3: wait 33 seconds @@ -10860,10 +11003,6 @@ reconnect 7: wait 11 seconds reconnect 8: wait 22 seconds reconnect 9: wait 33 seconds reconnect x: etc. -.ft P -.fi -.UNINDENT -.UNINDENT .sp With a thousand minions this will mean .INDENT 0.0 @@ -11207,7 +11346,7 @@ operating system. \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 -Grains resolve to lowercase letters. For example, \fBFOO\fP, and \fBfoo\fP +Grains resolve to lowercase letters. For example, \fBFOO\fP and \fBfoo\fP target the same grain. .UNINDENT .UNINDENT @@ -11355,7 +11494,7 @@ the following configuration: For this example to work, you would need to have defined the grain \fBnode_type\fP for the minions you wish to match. This simple example is nice, but too much of the code is similar. To go one step further, Jinja templating -can be used to simplify the \fItop file\fP\&. +can be used to simplify the the \fItop file\fP\&. .INDENT 0.0 .INDENT 3.5 .sp @@ -11385,7 +11524,7 @@ set. .UNINDENT .SS Writing Grains .sp -The grains interface is derived by executing +Grains are easy to write. The grains interface is derived by executing all of the "public" functions found in the modules located in the grains package or the custom grains directory. The functions in the modules of the grains must return a Python \fI\%dict\fP, where the @@ -11393,8 +11532,7 @@ keys in the \fI\%dict\fP are the names of the grains and the values are the values. .sp Custom grains should be placed in a \fB_grains\fP directory located under the -\fBfile_roots\fP specified by the master config file. The default path -would be \fB/srv/salt/_grains\fP\&. Custom grains will be +\fBfile_roots\fP specified by the master config file. They will be distributed to the minions when \fBstate.highstate\fP is run, or by executing the \fBsaltutil.sync_grains\fP or \fBsaltutil.sync_all\fP functions. @@ -11759,7 +11897,7 @@ on writing YAML range files is here: .sp \fI\%https://github.com/ytoolshed/range/wiki/%22yamlfile%22\-module\-file\-spec\fP .sp -Additionally, the Python seco range libraries must be installed on the salt +Additionally, the Python seco range libraries must be instaled on the salt master. One can verify that they have been installed correctly via the following command: .INDENT 0.0 @@ -11825,7 +11963,7 @@ salt \-\-range %test:CLUSTER test.ping .UNINDENT .UNINDENT .sp -The following salt command would target three hosts: \fBfrontend\fP, \fBbackend\fP, and \fBmysql\fP: +The following salt command would target three hosts: \fBfrontend\fP, \fBbackend\fP and \fBmysql\fP: .INDENT 0.0 .INDENT 3.5 .sp @@ -11900,17 +12038,16 @@ base: .UNINDENT .UNINDENT .sp -In the above top file, it is declared that in the \fBbase\fP environment, the -glob matching all minions will have the pillar data found in the \fBpackages\fP -pillar available to it. Assuming the \fBpillar_roots\fP value of \fB/srv/pillar\fP -taken from above, the \fBpackages\fP pillar would be located at -\fB/srv/pillar/packages.sls\fP\&. +In the above top file, it is declared that in the \(aqbase\(aq environment, the glob +matching all minions will have the pillar data found in the \(aqpackages\(aq pillar +available to it. Assuming the \(aqpillar_roots\(aq value of \(aq/srv/salt\(aq taken from +above, the \(aqpackages\(aq pillar would be located at \(aq/srv/salt/packages.sls\(aq. .sp Another example shows how to use other standard top matching types to deliver specific salt pillar data to minions with different properties. .sp -Here is an example using the \fBgrains\fP matcher to target pillars to minions -by their \fBos\fP grain: +Here is an example using the \(aqgrains\(aq matcher to target pillars to minions +by their \(aqos\(aq grain: .INDENT 0.0 .INDENT 3.5 .sp @@ -11946,14 +12083,13 @@ company: Foo Industries .UNINDENT .sp The above pillar sets two key/value pairs. If a minion is running RedHat, then -the \fBapache\fP key is set to \fBhttpd\fP and the \fBgit\fP key is set to the value -of \fBgit\fP\&. If the minion is running Debian, those values are changed to -\fBapache2\fP and \fBgit\-core\fP respctively. All minions that have this pillar -targeting to them via a top file will have the key of \fBcompany\fP with a value -of \fBFoo Industries\fP\&. +the \(aqapache\(aq key is set to \(aqhttpd\(aq and the \(aqgit\(aq key is set to the value of +\(aqgit\(aq. If the minion is running Debian, those values are changed to \(aqapache2\(aq +and \(aqgit\-core\(aq respctively. All minions that have this pillar targeting to them +via a top file will have the key of \(aqcompany\(aq with a value of \(aqFoo Industries\(aq. .sp -Consequently this data can be used from within modules, renderers, State SLS -files, and more via the shared pillar \fI\%dict\fP: +Consequently this data can be used from within modules, renderers, State SLS files, and +more via the shared pillar \fI\%dict\fP: .INDENT 0.0 .INDENT 3.5 .sp @@ -12000,7 +12136,7 @@ base: .UNINDENT .UNINDENT .sp -And the actual pillar file at \(aq/srv/pillar/common_pillar.sls\(aq: +And the actual pillar file at \(aq/srv/salt/common_pillar.sls\(aq: .INDENT 0.0 .INDENT 3.5 .sp @@ -12053,9 +12189,9 @@ bind: named .UNINDENT .UNINDENT .sp -Then a request for the \fBbind\fP pillar will only return \fBnamed\fP; the -\fBbind9\fP value is not available. It is better to structure your pillar files -with more hierarchy. For example your \fBpackage.sls\fP file could look like: +Then a request for the \fBbind\fP pillar will only return \(aqnamed\(aq; the \(aqbind9\(aq +value is not available. It is better to structure your pillar files with more +hierarchy. For example your \fBpackage.sls\fP file could look like: .INDENT 0.0 .INDENT 3.5 .sp @@ -12188,8 +12324,8 @@ as a template variable to users.sls. .SS Viewing Minion Pillar .sp Once the pillar is set up the data can be viewed on the minion via the -\fBpillar\fP module, the pillar module comes with functions, -\fBpillar.items\fP and \fBpillar.raw\fP\&. \fBpillar.items\fP +\fBpillar\fP module, the pillar module comes with two functions, +\fBpillar.items\fP and and \fBpillar.raw\fP\&. \fBpillar.items\fP will return a freshly reloaded pillar and \fBpillar.raw\fP will return the current pillar without a refresh: .INDENT 0.0 .INDENT 3.5 @@ -12367,36 +12503,6 @@ pillar_opts: False .fi .UNINDENT .UNINDENT -.SS Master Provided Pillar Error -.sp -By default if there is an error rendering a pillar, the detailed error is -hidden and replaced with: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -Rendering SLS \(aqmy.sls\(aq failed. Please see master log for details. -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The error is protected because it\(aqs possible to contain templating data -which would give that minion information it shouldn\(aqt know, like a password! -.sp -To have the master provide the detailed error that could potentially carry -protected data set \fBpillar_safe_render_error\fP to \fBFalse\fP: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -pillar_safe_render_error: True -.ft P -.fi -.UNINDENT -.UNINDENT .SH REACTOR SYSTEM .sp Salt version 0.11.0 introduced the reactor system. The premise behind the @@ -12453,7 +12559,7 @@ reactor: # Master config section "reactor" .UNINDENT .sp Reactor sls files are similar to state and pillar sls files. They are -by default yaml + Jinja templates and are passed familiar context variables. +by default yaml + Jinja templates and are passed familar context variables. .sp They differ because of the addition of the \fBtag\fP and \fBdata\fP variables. .INDENT 0.0 @@ -12604,68 +12710,42 @@ salt\-master \-l debug .UNINDENT .SS Understanding the Structure of Reactor Formulas .sp -While the reactor system uses the same data structure as the state system, this -data does not translate the same way to function calls. +\fBI.e., when to use \(gaarg\(ga and \(gakwarg\(ga and when to specify the function +arguments directly.\fP +.sp +While the reactor system uses the same basic data structure as the state +system, the functions that will be called using that data structure are +different functions than are called via Salt\(aqs state system. The Reactor can +call Runner modules using the \fIrunner\fP prefix, Wheel modules using the \fIwheel\fP +prefix, and can also cause minions to run Execution modules using the \fIlocal\fP +prefix. .sp Changed in version 2014.7.0: The \fBcmd\fP prefix was renamed to \fBlocal\fP for consistency with other parts of Salt. A backward\-compatible alias was added for \fBcmd\fP\&. .sp -In state files the minion generates the data structure locally and uses that to -call local state functions. In the reactor system the master generates a data -structure that is used to call methods on one of Salt\(aqs client interfaces -described in \fIthe Python API documentation\fP\&. -.INDENT 0.0 -.IP \(bu 2 -\fBLocalClient\fP is used to call Execution modules -remotely on minions. (The \fBsalt\fP CLI program uses this also.) -.IP \(bu 2 -\fBRunnerClient\fP calls Runner modules locally on the -master. -.IP \(bu 2 -\fBWheelClient\fP calls Wheel modules locally on the -master. -.UNINDENT +The Reactor runs on the master and calls functions that exist on the master. In +the case of Runner and Wheel functions the Reactor can just call those +functions directly since they exist on the master and are run on the master. .sp -The \fBstate declaration\fP field takes a reference to the function to call -in each interface. So to trigger a salt\-run call the \fBstate -declaration\fP field will start with \fBrunner\fP, followed by the runner -function to call. This means that a call to what would be on the command line -\fBsalt\-run manage.up\fP will be \fBrunner.manage.up\fP\&. An example of -this in a reactor formula would look like this: -.INDENT 0.0 -.INDENT 3.5 +In the case of functions that exist on minions and are run on minions, the +Reactor still needs to call a function on the master in order to send the +necessary data to the minion so the minion can execute that function. .sp -.nf -.ft C -manage_up: - runner.manage.up -.ft P -.fi -.UNINDENT -.UNINDENT +The Reactor calls functions exposed in \fISalt\(aqs Python API documentation\fP\&. and thus the structure of Reactor files very transparently +reflects the function signatures of those functions. +.SS Calling Execution modules on Minions .sp -If the runner takes arguments then they can be specified as well: -.INDENT 0.0 -.INDENT 3.5 +The Reactor sends commands down to minions in the exact same way Salt\(aqs CLI +interface does. It calls a function locally on the master that sends the name +of the function as well as a list of any arguments and a dictionary of any +keyword arguments that the minion should use to execute that function. .sp -.nf -.ft C -overstate_dev_env: - runner.state.over: - \- env: dev -.ft P -.fi -.UNINDENT -.UNINDENT +Specifically, the Reactor calls the async version of \fBthis function\fP\&. You can see that function has \(aqarg\(aq and \(aqkwarg\(aq +parameters which are both values that are sent down to the minion. .sp -Executing remote commands maps to the \fBLocalClient\fP interface which is -used by the \fBsalt\fP command. This interface more specifically maps to -the \fBcmd_async\fP method inside of the \fBLocalClient\fP class. This -means that the arguments passed are being passed to the \fBcmd_async\fP -method, not the remote method. A field starts with \fBlocal\fP to use the -\fBLocalClient\fP subsystem. The result is, to execute a remote command, -a reactor formula would look like this: +The result is, to execute a remote command, a reactor formula would look like +this: .INDENT 0.0 .INDENT 3.5 .sp @@ -12720,6 +12800,47 @@ clean_tmp: .UNINDENT .UNINDENT .sp +Any other parameters in the \fBLocalClient().cmd()\fP method can be specified as well. +.SS Calling Runner modules and Wheel modules +.sp +Calling Runenr modules and wheel modules from the Reactor uses a more direct +syntax since the function is being executed locally instead of sending a +command to a remote system to be executed there. There are no \(aqarg\(aq or \(aqkwarg\(aq +parameters (unless the Runenr function or Wheel function accepts a paramter +with either of those names.) +.sp +For example: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +clear_the_grains_cache_for_all_minions: + runner.cache.clear_grains +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +If \fBthe runner takes arguments\fP then +they can be specified as well: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +spin_up_more_web_machines: + runner.cloud.profile: + \- prof: centos_6 + \- instances: + \- web11 # These VM names would be generated via Jinja in a + \- web12 # real\-world example. +.ft P +.fi +.UNINDENT +.UNINDENT +.SS Passing event data to Minions or Orchestrate as Pillar +.sp An interesting trick to pass data from the Reactor script to \fBstate.highstate\fP or \fBstate.sls\fP is to pass it as inline Pillar data since both functions take a keyword argument named \fBpillar\fP\&. @@ -12778,6 +12899,34 @@ salt \(aqhaproxy*\(aq state.sls haproxy.refresh_pool \(aqpillar={new_minion: min .UNINDENT .UNINDENT .sp +This works with Orchestrate files as well: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +call_some_orchestrate_file: + runner.state.orchestrate: + \- mods: some_orchestrate_file + \- pillar: + stuff: things +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +Which is equivalent to the following command at the CLI: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +salt\-run state.orchestrate some_orchestrate_file pillar=\(aq{stuff: things}\(aq +.ft P +.fi +.UNINDENT +.UNINDENT +.sp Finally, that data is available in the state file using the normal Pillar lookup syntax. The following example is grabbing web server names and IP addresses from \fISalt Mine\fP\&. If this state is invoked from the @@ -12887,16 +13036,10 @@ Ink servers in the master configuration. highstate_run: local.state.highstate: \- tgt: {{ data[\(aqid\(aq] }} - \- ret: smtp_return .ft P .fi .UNINDENT .UNINDENT -.sp -The above will also return the highstate result data using the \fIsmtp_return\fP -returner. The returner needs to be configured on the minion for this to -work. See \fBsalt.returners.smtp_return\fP documentation for -that. .SS Syncing Custom Types on Minion Start .sp Salt will sync all custom types (by running a \fBsaltutil.sync_all\fP) on every highstate. However, there is a @@ -13011,54 +13154,6 @@ mine_interval: 60 .fi .UNINDENT .UNINDENT -.SS Mine in Salt\-SSH -.sp -As of the 2015.2.0 release of salt, salt\-ssh supports \fBmine.get\fP\&. -.sp -Because the minions cannot provide their own \fBmine_functions\fP configuration, -we retrieve the args for specified mine functions in one of three places, -searched in the following order: -.INDENT 0.0 -.IP 1. 3 -Roster data -.IP 2. 3 -Pillar -.IP 3. 3 -Master config -.UNINDENT -.sp -The \fBmine_functions\fP are formatted exactly the same as in normal salt, just -stored in a different location. Here is an example of a flat roster containing -\fBmine_functions\fP: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -test: - host: 104.237.131.248 - user: root - mine_functions: - cmd.run: [\(aqecho "hello!"\(aq] - network.ip_addrs: - interface: eth0 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -\fBNOTE:\fP -.INDENT 0.0 -.INDENT 3.5 -Because of the differences in the architecture of salt\-ssh, \fBmine.get\fP -calls are somewhat inefficient. Salt must make a new salt\-ssh call to each -of the minions in question to retrieve the requested data, much like a -publish call. However, unlike publish, it must run the requested function -as a wrapper function, so we can retrieve the function args from the pillar -of the minion in question. This results in a non\-trivial delay in -retrieving the requested data. -.UNINDENT -.UNINDENT .SS Example .sp One way to use data from Salt Mine is in a State. The values can be retrieved @@ -13144,6 +13239,70 @@ Salt\(aqs External Authentication System (eAuth) allows for Salt to pass throug command authorization to any external authentication system, such as PAM or LDAP. .SS Access Control System .sp +New in version 0.10.4. + +.sp +Salt maintains a standard system used to open granular control to non +administrative users to execute Salt commands. The access control system +has been applied to all systems used to configure access to non administrative +control interfaces in Salt.These interfaces include, the \fBpeer\fP system, the +\fBexternal auth\fP system and the \fBclient acl\fP system. +.sp +The access control system mandated a standard configuration syntax used in +all of the three aforementioned systems. While this adds functionality to the +configuration in 0.10.4, it does not negate the old configuration. +.sp +Now specific functions can be opened up to specific minions from specific users +in the case of external auth and client ACLs, and for specific minions in the +case of the peer system. +.sp +The access controls are manifested using matchers in these configurations: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +client_acl: + fred: + \- web\e*: + \- pkg.list_pkgs + \- test.* + \- apache.* +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +In the above example, fred is able to send commands only to minions which match +the specified glob target. This can be expanded to include other functions for +other minions based on standard targets. +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +external_auth: + pam: + dave: + \- test.ping + \- mongo\e*: + \- network.* + \- log\e*: + \- network.* + \- pkg.* + \- \(aqG@os:RedHat\(aq: + \- kmod.* + steve: + \- .* +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +The above allows for all minions to be hit by test.ping by dave, and adds a +few functions that dave can execute on other minions. It also allows steve +unrestricted access to salt commands. +.sp The external authentication system allows for specific users to be granted access to execute specific functions on specific minions. Access is configured in the master configuration file and uses the \fIaccess control system\fP: @@ -13448,7 +13607,7 @@ Salt Minions maintain a \fIproc\fP directory in the Salt \fBcachedir\fP\&. The \ directory maintains files named after the executed job ID. These files contain the information about the current running jobs on the minion and allow for jobs to be looked up. This is located in the \fIproc\fP directory under the -cachedir, with a default configuration it is under \fB/var/cache/salt/proc\fP\&. +cachedir, with a default configuration it is under \fI/var/cache/salt/proc\fP\&. .SS Functions in the saltutil Module .sp Salt 0.9.7 introduced a few new functions to the @@ -13538,10 +13697,7 @@ executions on minions or the master. The schedule system exposes the execution of any execution function on minions or any runner on the master. .sp Scheduling is enabled via the \fBschedule\fP option on either the master or minion -config files, or via a minion\(aqs pillar data. Schedules that are impletemented via -pillar data, only need to refresh the minion\(aqs pillar data, for example by using -\fBsaltutil.refresh_pillar\fP\&. Schedules implemented in the master or minion config -have to restart the application in order for the schedule to be implemented. +config files, or via a minion\(aqs pillar data. .sp \fBNOTE:\fP .INDENT 0.0 @@ -13552,9 +13708,6 @@ running on the minion the functions specify execution functions. .UNINDENT .UNINDENT .sp -A scheduled run has no output on the minion unless the config is set to info level -or higher. Refer to \fBminion logging settings\fP\&. -.sp Specify \fBmaxrunning\fP to ensure that there are no more than N copies of a particular routine running. Use this for jobs that may be long\-running and could step on each other or otherwise double execute. The default for @@ -13631,8 +13784,7 @@ New in version 2014.7.0. .sp Frequency of jobs can also be specified using date strings supported by -the python dateutil library. This requires python\-dateutil to be installed on -the minion. +the python dateutil library. .INDENT 0.0 .INDENT 3.5 .sp @@ -13676,8 +13828,8 @@ schedule: .UNINDENT .UNINDENT .sp -This will schedule the command: state.sls httpd test=True at 5pm on Monday, -Wednesday, and Friday, and 3pm on Tuesday and Thursday. +This will schedule the command: state.sls httpd test=True at 5pm on Monday, Wednesday +and Friday, and 3pm on Tuesday and Thursday. .INDENT 0.0 .INDENT 3.5 .sp @@ -13701,8 +13853,7 @@ schedule: .sp This will schedule the command: state.sls httpd test=True every 3600 seconds (every hour) between the hours of 8am and 5pm. The range parameter must be a -dictionary with the date strings using the dateutil format. This requires -python\-dateutil to be installed on the minion. +dictionary with the date strings using the dateutil format. .sp New in version 2014.7.0. @@ -13739,7 +13890,7 @@ schedule: \- \(aqlogger \-t salt < /proc/loadavg\(aq kwargs: stateful: False - shell: \ebin\esh + shell: True .ft P .fi .UNINDENT @@ -13817,10 +13968,7 @@ executions on minions or the master. The schedule system exposes the execution of any execution function on minions or any runner on the master. .sp Scheduling is enabled via the \fBschedule\fP option on either the master or minion -config files, or via a minion\(aqs pillar data. Schedules that are impletemented via -pillar data, only need to refresh the minion\(aqs pillar data, for example by using -\fBsaltutil.refresh_pillar\fP\&. Schedules implemented in the master or minion config -have to restart the application in order for the schedule to be implemented. +config files, or via a minion\(aqs pillar data. .sp \fBNOTE:\fP .INDENT 0.0 @@ -13831,9 +13979,6 @@ running on the minion the functions specify execution functions. .UNINDENT .UNINDENT .sp -A scheduled run has no output on the minion unless the config is set to info level -or higher. Refer to \fBminion logging settings\fP\&. -.sp Specify \fBmaxrunning\fP to ensure that there are no more than N copies of a particular routine running. Use this for jobs that may be long\-running and could step on each other or otherwise double execute. The default for @@ -13910,8 +14055,7 @@ New in version 2014.7.0. .sp Frequency of jobs can also be specified using date strings supported by -the python dateutil library. This requires python\-dateutil to be installed on -the minion. +the python dateutil library. .INDENT 0.0 .INDENT 3.5 .sp @@ -13955,8 +14099,8 @@ schedule: .UNINDENT .UNINDENT .sp -This will schedule the command: state.sls httpd test=True at 5pm on Monday, -Wednesday, and Friday, and 3pm on Tuesday and Thursday. +This will schedule the command: state.sls httpd test=True at 5pm on Monday, Wednesday +and Friday, and 3pm on Tuesday and Thursday. .INDENT 0.0 .INDENT 3.5 .sp @@ -13980,8 +14124,7 @@ schedule: .sp This will schedule the command: state.sls httpd test=True every 3600 seconds (every hour) between the hours of 8am and 5pm. The range parameter must be a -dictionary with the date strings using the dateutil format. This requires -python\-dateutil to be installed on the minion. +dictionary with the date strings using the dateutil format. .sp New in version 2014.7.0. @@ -14018,7 +14161,7 @@ schedule: \- \(aqlogger \-t salt < /proc/loadavg\(aq kwargs: stateful: False - shell: \ebin\esh + shell: True .ft P .fi .UNINDENT @@ -14497,9 +14640,9 @@ data = event.get_event() .UNINDENT .UNINDENT .sp -Events will also use a "tag". Tags allow for events to be filtered by prefix. -By default all events will be returned. If only authentication events are -desired, then pass the tag "salt/auth". +Events will also use a "tag". Tags allow for events to be filtered. By +default all events will be returned. If only authentication events are +desired, then pass the tag "auth". .sp The \fBget_event\fP method has a default poll time assigned of 5 seconds. To change this time set the "wait" option. @@ -14540,6 +14683,8 @@ The iter_events method also accepts a tag but not a wait time: .sp .nf .ft C +import salt.utils.event + for data in event.iter_events(tag=\(aqsalt/auth\(aq): print(data) .ft P @@ -14617,23 +14762,7 @@ master to fire an event to it: .sp .nf .ft C -# Job on minion -import salt.utils.event - -event = salt.utils.event.MinionEvent(**__opts__) - -for evdata in event.iter_events(tag=\(aqcustomtag/\(aq): - return evdata # do your processing here... -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt minionname event.fire \(aq{"data": "message for the minion"}\(aq \(aqcustomtag/african/unladen\(aq +salt minionname event.fire \(aq{"data": "message for the minion"}\(aq \(aqtag\(aq .ft P .fi .UNINDENT @@ -15015,7 +15144,7 @@ sure it is really available. .sp Here is an example proxytype used to interface to Juniper Networks devices that run the Junos operating system. Note the additional library requirements\-\-most of the -"hard part" of talking to these devices is handled by the jnpr.junos, jnpr.junos.utils, +"hard part" of talking to these devices is handled by the jnpr.junos, jnpr.junos.utils and jnpr.junos.cfg modules. .INDENT 0.0 .INDENT 3.5 @@ -15076,7 +15205,7 @@ place inside it the different functions that need to be run to collect the data you are interested in. Here\(aqs an example: .SS The __proxyenabled__ directive .sp -Salt states and execution modules, by, and large, cannot "automatically" work +Salt states and execution modules, by and large, cannot "automatically" work with proxied devices. Execution modules like \fBpkg\fP or \fBsqlite3\fP have no meaning on a network switch or a housecat. For a state/execution module to be available to a proxy\-minion, the \fB__proxyenabled__\fP variable must be defined @@ -15756,14 +15885,14 @@ management tools as well as version control systems. rhel_ec2: provider: ec2 image: ami\-e565ba8c - size: t1.micro + size: Micro Instance minion: cheese: edam ubuntu_ec2: provider: ec2 image: ami\-7e2da54e - size: t1.micro + size: Micro Instance minion: cheese: edam @@ -16056,6 +16185,9 @@ joyent: .fi .UNINDENT .UNINDENT +.sp +Another useful reference for viewing more salt\-cloud actions is the +:ref:Salt Cloud Feature Matrix .SS Cloud Functions .sp Cloud functions work much the same way as cloud actions, except that they don\(aqt @@ -16072,6 +16204,40 @@ $ salt\-cloud \-f show_image ec2 image=ami\-fd20ad94 .fi .UNINDENT .UNINDENT +.sp +There are three universal salt\-cloud functions that are extremely useful for +gathering information about instances on a provider basis: +.sp + +.nf +* +.fi +\fBlist_nodes\fP: Returns some general information about the instances for the given provider. + +.nf +* +.fi +\fBlist_nodes_full\fP: Returns all information about the instances for the given provider. + +.nf +* +.fi +\fBlist_nodes_select\fP: Returns select information about the instances for the given provider. +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +$ salt\-cloud \-f list_nodes linode +$ salt\-cloud \-f list_nodes_full linode +$ salt\-cloud \-f list_nodes_select linode +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +Another useful reference for viewing salt\-cloud functions is the +:ref:Salt Cloud Feature Matrix .SS Core Configuration .SS Core Configuration .sp @@ -16116,48 +16282,18 @@ minion: .sp In particular, this is the location to specify the location of the salt master and its listening port, if the port is not set to the default. -.SS New Cloud Configuration Syntax +.SS Cloud Configuration Syntax .sp The data specific to interacting with public clouds is set up here. .sp -\fBATTENTION\fP: Since version 0.8.7 a new cloud provider configuration syntax -was implemented. It will allow for multiple configurations of the same cloud -provider where only minor details can change, for example, the region for an -EC2 instance. While the old format is still supported and automatically -migrated every time salt\-cloud configuration is parsed, a choice was made to -warn the user or even exit with an error if both formats are mixed. -.SS Migrating Configurations -.sp -If you wish to migrate, there are several alternatives. Since the old syntax -was mainly done on the main cloud configuration file, see the next before and -after migration example. -.INDENT 0.0 -.IP \(bu 2 -Before migration in \fB/etc/salt/cloud\fP: -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -AWS.id: HJGRYCILJLKJYG -AWS.key: \(aqkdjgfsgm;woormgl/aserigjksjdhasdfgn\(aq -AWS.keyname: test -AWS.securitygroup: quick\-start -AWS.private_key: /root/test.pem -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP \(bu 2 -After migration in \fB/etc/salt/cloud\fP: -.UNINDENT +Cloud provider configuration syntax can live in several places. The first is in +\fB/etc/salt/cloud\fP: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C +# /etc/salt/cloud providers: my\-aws\-migrated\-config: id: HJGRYCILJLKJYG @@ -16171,28 +16307,19 @@ providers: .UNINDENT .UNINDENT .sp -Notice that it\(aqs no longer required to name a cloud provider\(aqs configuration -after its provider; it can be an alias, though an additional configuration -key is added, \fBprovider\fP\&. This allows for multiple configuration for the same -cloud provider to coexist. +Cloud provider configuration data can also be housed in \fB/etc/salt/cloud.providers\fP +or any file matching \fB/etc/salt/cloud.providers.d/*.conf\fP\&. All files in any of these +locations will be parsed for cloud provider data. .sp -While moving towards an improved and extensible configuration handling -regarding the cloud providers, \fB\-\-providers\-config\fP, which defaults to -\fB/etc/salt/cloud.providers\fP, was added to the cli parser. It allows for the -cloud providers configuration to be provided in a different file, and/or even -any matching file on a sub\-directory, \fBcloud.providers.d/*.conf\fP which is -relative to the providers configuration file(with the above configuration file -as an example, \fB/etc/salt/cloud.providers.d/*.conf\fP). -.sp -So, using the example configuration above, after migration in -\fB/etc/salt/cloud.providers\fP or -\fB/etc/salt/cloud.providers.d/aws\-migrated.conf\fP: +Using the example configuration above: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C -my\-aws\-migrated\-config: +# /etc/salt/cloud.providers +# or could be /etc/salt/cloud.providers.d/*.conf +my\-aws\-config: id: HJGRYCILJLKJYG key: \(aqkdjgfsgm;woormgl/aserigjksjdhasdfgn\(aq keyname: test @@ -16204,50 +16331,20 @@ my\-aws\-migrated\-config: .UNINDENT .UNINDENT .sp -Notice that on this last migrated example, it \fBno longer\fP includes the -\fBproviders\fP starting key. -.sp -While migrating the cloud providers configuration, if the provider alias (from -the above example \fBmy\-aws\-migrated\-config\fP) changes from what you had (from -the above example \fBaws\fP), you will also need to change the \fBprovider\fP -configuration key in the defined profiles. -.INDENT 0.0 -.IP \(bu 2 -From: -.UNINDENT +\fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 -.sp -.nf -.ft C -rhel_aws: - provider: aws - image: ami\-e565ba8c - size: t1.micro -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP \(bu 2 -To: -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -rhel_aws: - provider: my\-aws\-migrated\-config - image: ami\-e565ba8c - size: t1.micro -.ft P -.fi +Salt Cloud provider configurations within \fB/etc/cloud.provider.d/ should not +specify the \(ga\(gaproviders\fP starting key. .UNINDENT .UNINDENT .sp -This new configuration syntax even allows you to have multiple cloud -configurations under the same alias, for example: +To allow for a more extensible configuration, \fB\-\-providers\-config\fP, which defaults to +\fB/etc/salt/cloud.providers\fP, was added to the cli parser. It allows for the providers\(aq +configuration to be added on a per\-file basis. +.sp +It is also possible to have multiple cloud configuration blocks within the same alias block. +For example: .INDENT 0.0 .INDENT 3.5 .sp @@ -16259,6 +16356,7 @@ production\-config: keyname: test securitygroup: quick\-start private_key: /root/test.pem + provider: aws \- user: example_user apikey: 123984bjjas87034 @@ -16268,10 +16366,8 @@ production\-config: .UNINDENT .UNINDENT .sp -\fBNotice the dash and indentation on the above example.\fP -.sp -Having multiple entries for a configuration alias also makes the \fBprovider\fP -key on any defined profile to change, see the example: +However, using this configuration method requires a change with profile configuration blocks. +The provider alias needs to have the provider key value appended as in the following example: .INDENT 0.0 .INDENT 3.5 .sp @@ -16287,7 +16383,6 @@ rhel_aws_prod: image: ami\-e565ba8c size: High\-CPU Extra Large Instance - database_prod: provider: production\-config:rackspace image: Ubuntu 12.04 LTS @@ -16297,23 +16392,19 @@ database_prod: .UNINDENT .UNINDENT .sp -Notice that because of the multiple entries, one has to be explicit about the -provider alias and name, from the above example, \fBproduction\-config:aws\fP\&. +Notice that because of the multiple entries, one has to be explicit about the provider alias and +name, from the above example, \fBproduction\-config: aws\fP\&. .sp -This new syntax also changes the interaction with the \fBsalt\-cloud\fP binary. -\fB\-\-list\-location\fP, \fB\-\-list\-images\fP, and \fB\-\-list\-sizes\fP which needs a cloud -provider as an argument. Since 0.8.7 the argument used should be the configured -cloud provider alias. If the provider alias only has a single entry, use -\fB\fP\&. If it has multiple entries, -\fB:\fP should be used. +This data interactions with the \fBsalt\-cloud\fP binary regarding its \fB\-\-list\-location\fP, +\fB\-\-list\-images\fP, and \fB\-\-list\-sizes\fP which needs a cloud provider as an argument. The argument +used should be the configured cloud provider alias. If the provider alias has multiple entries, +\fB: \fP should be used. .SS Pillar Configuration .sp -It is possible to configure cloud providers using pillars. This is only used -when inside the cloud module. You can setup a variable called \fBcloud\fP that -contains your profile and provider to pass that information to the cloud -servers instead of having to copy the full configuration to every minion. -.sp -In your pillar file, you would use something like this. +It is possible to configure cloud providers using pillars. This is only used when inside the cloud +module. You can setup a variable called \fBcloud\fP that contains your profile and provider to pass +that information to the cloud servers instead of having to copy the full configuration to every +minion. In your pillar file, you would use something like this: .INDENT 0.0 .INDENT 3.5 .sp @@ -16350,44 +16441,20 @@ cloud: size: performance1\-8 image: bb02b1a3\-bc77\-4d17\-ab5b\-421d89850fca script_args: git develop - flush_mine_on_destroy: True ubuntu\-openstack: provider: my\-openstack size: performance1\-8 image: bb02b1a3\-bc77\-4d17\-ab5b\-421d89850fca script_args: git develop - flush_mine_on_destroy: True .ft P .fi .UNINDENT .UNINDENT -.sp -\fBNOTE\fP: This is only valid in the cloud module, so also in the cloud state. -This does not work with the salt\-cloud binary. .SS Cloud Configurations .SS Rackspace .sp -Rackspace cloud requires two configuration options: -.INDENT 0.0 -.IP \(bu 2 -Using the old format: -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -RACKSPACE.user: example_user -RACKSPACE.apikey: 123984bjjas87034 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP \(bu 2 -Using the new configuration format: -.UNINDENT +Rackspace cloud requires two configuration options; a \fBuser\fP and an \fBapikey\fP: .INDENT 0.0 .INDENT 3.5 .sp @@ -16396,40 +16463,23 @@ Using the new configuration format: my\-rackspace\-config: user: example_user apikey: 123984bjjas87034 - provider: rackspace + provider: rackspace\-config .ft P .fi .UNINDENT .UNINDENT .sp -\fBNOTE\fP: With the new providers configuration syntax you would have \fBprovider: -rackspace\-config\fP instead of \fBprovider: rackspace\fP on a profile -configuration. -.SS Amazon AWS -.sp -A number of configuration options are required for Amazon AWS: -.INDENT 0.0 -.IP \(bu 2 -Using the old format: -.UNINDENT +\fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 +In the cloud profile that uses this provider configuration, the syntax for the +\fBprovider\fP required field would be \fBprovider: my\-rackspace\-config\fP\&. +.UNINDENT +.UNINDENT +.SS Amazon AWS .sp -.nf -.ft C -AWS.id: HJGRYCILJLKJYG -AWS.key: \(aqkdjgfsgm;woormgl/aserigjksjdhasdfgn\(aq -AWS.keyname: test -AWS.securitygroup: quick\-start -AWS.private_key: /root/test.pem -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP \(bu 2 -Using the new configuration format: -.UNINDENT +A number of configuration options are required for Amazon AWS including \fBid\fP, +\fBkey\fP, \fBkeyname\fP, \fBsercuritygroup\fP, and \fBprivate_key\fP: .INDENT 0.0 .INDENT 3.5 .sp @@ -16455,33 +16505,19 @@ my\-aws\-default: .UNINDENT .UNINDENT .sp -\fBNOTE\fP: With the new providers configuration syntax you would have -\fBprovider: my\-aws\-quick\-start\fP or \fBprovider: my\-aws\-default\fP instead of -\fBprovider: aws\fP on a profile configuration. +\fBNOTE:\fP +.INDENT 0.0 +.INDENT 3.5 +In the cloud profile that uses this provider configuration, the syntax for the +\fBprovider\fP required field would be either \fBprovider: my\-aws\-quick\-start\fP +or \fBprovider: my\-aws\-default\fP\&. +.UNINDENT +.UNINDENT .SS Linode .sp Linode requires a single API key, but the default root password also needs to be set: .INDENT 0.0 -.IP \(bu 2 -Using the old format: -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -LINODE.apikey: asldkgfakl;sdfjsjaslfjaklsdjf;askldjfaaklsjdfhasldsadfghdkf -LINODE.password: F00barbaz -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP \(bu 2 -Using the new configuration format: -.UNINDENT -.INDENT 0.0 .INDENT 3.5 .sp .nf @@ -16489,93 +16525,59 @@ Using the new configuration format: my\-linode\-config: apikey: asldkgfakl;sdfjsjaslfjaklsdjf;askldjfaaklsjdfhasldsadfghdkf password: F00barbaz - ssh_pubkey: ssh\-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKHEOLLbeXgaqRQT9NBAopVz366SdYc0KKX33vAnq+2R user@host - ssh_key_file: ~/.ssh/id_ed25519 provider: linode .ft P .fi .UNINDENT .UNINDENT .sp -\fBNOTE\fP: With the new providers configuration syntax you would have -\fBprovider: my\-linode\-config\fP instead of \fBprovider: linode\fP on a profile -configuration. -.sp -The password needs to be 8 characters and contain lowercase, uppercase, and +The password needs to be 8 characters and contain lowercase, uppercase and numbers. -.SS Joyent Cloud .sp -The Joyent cloud requires three configuration parameters. The username and -password that are used to log into the Joyent system, and the location of the -private SSH key associated with the Joyent account. The SSH key is needed to -send the provisioning commands up to the freshly created virtual machine. -.INDENT 0.0 -.IP \(bu 2 -Using the old format: -.UNINDENT +\fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 +In the cloud profile that uses this provider configuration, the syntax for the +\fBprovider\fP required field would be \fBprovider: my\-linode\-config\fP +.UNINDENT +.UNINDENT +.SS Joyent Cloud .sp -.nf -.ft C -JOYENT.user: fred -JOYENT.password: saltybacon -JOYENT.private_key: /root/joyent.pem -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP \(bu 2 -Using the new configuration format: -.UNINDENT +The Joyent cloud requires three configuration parameters: The username and +password that are used to log into the Joyent system, as well as the location +of the private SSH key associated with the Joyent account. The SSH key is needed +to send the provisioning commands up to the freshly created virtual machine. .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C my\-joyent\-config: - user: fred - password: saltybacon - private_key: /root/mykey.pem - keyname: mykey - provider: joyent + user: fred + password: saltybacon + private_key: /root/joyent.pem + provider: joyent .ft P .fi .UNINDENT .UNINDENT .sp -\fBNOTE\fP: With the new providers configuration syntax you would have -\fBprovider: my\-joyent\-config\fP instead of \fBprovider: joyent\fP on a profile -configuration. +\fBNOTE:\fP +.INDENT 0.0 +.INDENT 3.5 +In the cloud profile that uses this provider configuration, the syntax for the +\fBprovider\fP required field would be \fBprovider: my\-joyent\-config\fP +.UNINDENT +.UNINDENT .SS GoGrid .sp -To use Salt Cloud with GoGrid log into the GoGrid web interface and create an +To use Salt Cloud with GoGrid, log into the GoGrid web interface and create an API key. Do this by clicking on "My Account" and then going to the API Keys tab. .sp -The GOGRID.apikey and the GOGRID.sharedsecret configuration parameters need to +The \fBapikey\fP and the \fBsharedsecret\fP configuration parameters need to be set in the configuration file to enable interfacing with GoGrid: .INDENT 0.0 -.IP \(bu 2 -Using the old format: -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -GOGRID.apikey: asdff7896asdh789 -GOGRID.sharedsecret: saltybacon -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP \(bu 2 -Using the new configuration format: -.UNINDENT -.INDENT 0.0 .INDENT 3.5 .sp .nf @@ -16589,9 +16591,13 @@ my\-gogrid\-config: .UNINDENT .UNINDENT .sp -\fBNOTE\fP: With the new providers configuration syntax you would have -\fBprovider: my\-gogrid\-config\fP instead of \fBprovider: gogrid\fP on a profile -configuration. +\fBNOTE:\fP +.INDENT 0.0 +.INDENT 3.5 +In the cloud profile that uses this provider configuration, the syntax for the +\fBprovider\fP required field would be \fBprovider: my\-gogrid\-config\fP\&. +.UNINDENT +.UNINDENT .SS OpenStack .sp OpenStack configuration differs between providers, and at the moment several @@ -16599,55 +16605,6 @@ options need to be specified. This module has been officially tested against the HP and the Rackspace implementations, and some examples are provided for both. .INDENT 0.0 -.IP \(bu 2 -Using the old format: -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -# For HP -OPENSTACK.identity_url: \(aqhttps://region\-a.geo\-1.identity.hpcloudsvc.com:35357/v2.0/\(aq -OPENSTACK.compute_name: Compute -OPENSTACK.compute_region: \(aqaz\-1.region\-a.geo\-1\(aq -OPENSTACK.tenant: myuser\-tenant1 -OPENSTACK.user: myuser -OPENSTACK.ssh_key_name: mykey -OPENSTACK.ssh_key_file: \(aq/etc/salt/hpcloud/mykey.pem\(aq -OPENSTACK.password: mypass - -# For Rackspace -OPENSTACK.identity_url: \(aqhttps://identity.api.rackspacecloud.com/v2.0/tokens\(aq -OPENSTACK.compute_name: cloudServersOpenStack -OPENSTACK.protocol: ipv4 -OPENSTACK.compute_region: DFW -OPENSTACK.protocol: ipv4 -OPENSTACK.user: myuser -OPENSTACK.tenant: 5555555 -OPENSTACK.password: mypass -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -If you have an API key for your provider, it may be specified instead of a -password: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -OPENSTACK.apikey: 901d3f579h23c8v73q9 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP \(bu 2 -Using the new configuration format: -.UNINDENT -.INDENT 0.0 .INDENT 3.5 .sp .nf @@ -16698,29 +16655,21 @@ my\-openstack\-rackspace\-config: .UNINDENT .UNINDENT .sp -\fBNOTE\fP: With the new providers configuration syntax you would have -\fBprovider: my\-openstack\-hp\-config\fP or \fBprovider: -my\-openstack\-rackspace\-config\fP instead of \fBprovider: openstack\fP on a profile -configuration. +\fBNOTE:\fP +.INDENT 0.0 +.INDENT 3.5 +In the cloud profile that uses this provider configuration, the syntax for the +\fBprovider\fP required field would be either \fBprovider: my\-openstack\-hp\-config\fP +or \fBprovider: my\-openstack\-rackspace\-config\fP\&. +.UNINDENT +.UNINDENT .sp -You will certainly need to configure the \fBuser\fP, \fBtenant\fP, and either +You will certainly need to configure the \fBuser\fP, \fBtenant\fP and either \fBpassword\fP or \fBapikey\fP\&. .sp If your OpenStack instances only have private IP addresses and a CIDR range of private addresses are not reachable from the salt\-master, you may set your -preference to have Salt ignore it. Using the old could configurations syntax: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -OPENSTACK.ignore_cidr: 192.168.0.0/16 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Using the new syntax: +preference to have Salt ignore it: .INDENT 0.0 .INDENT 3.5 .sp @@ -16749,69 +16698,34 @@ my\-openstack\-config: .UNINDENT .SS DigitalOcean .sp -Using Salt for DigitalOcean requires a client_key and an api_key. These can be -found in the DigitalOcean web interface, in the "My Settings" section, under -the API Access tab. -.INDENT 0.0 -.IP \(bu 2 -Using the old format: -.UNINDENT +Using Salt for DigitalOcean requires a \fBclient_key\fP and an \fBapi_key\fP\&. These +can be found in the DigitalOcean web interface, in the "My Settings" section, +under the API Access tab. +.. code\-block:: yaml .INDENT 0.0 .INDENT 3.5 -.sp -.nf -.ft C -DIGITAL_OCEAN.client_key: wFGEwgregeqw3435gDger -DIGITAL_OCEAN.api_key: GDE43t43REGTrkilg43934t34qT43t4dgegerGEgg -.ft P -.fi -.UNINDENT -.UNINDENT .INDENT 0.0 -.IP \(bu 2 -Using the new configuration format: +.TP +.B my\-digitalocean\-config: +provider: digital_ocean +client_key: wFGEwgregeqw3435gDger +api_key: GDE43t43REGTrkilg43934t34qT43t4dgegerGEgg +location: New York 1 .UNINDENT +.UNINDENT +.UNINDENT +.sp +\fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 -.sp -.nf -.ft C -my\-digitalocean\-config: - provider: digital_ocean - personal_access_token: xxx - location: New York 1 -.ft P -.fi +In the cloud profile that uses this provider configuration, the syntax for the +\fBprovider\fP required field would be \fBprovider: my\-digital\-ocean\-config\fP\&. .UNINDENT .UNINDENT -.sp -\fBNOTE\fP: With the new providers configuration syntax you would have -\fBprovider: my\-digitalocean\-config\fP instead of \fBprovider: digital_ocean\fP on a -profile configuration. .SS Parallels .sp -Using Salt with Parallels requires a user, password, and URL. These can be -obtained from your cloud provider. -.INDENT 0.0 -.IP \(bu 2 -Using the old format: -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -PARALLELS.user: myuser -PARALLELS.password: xyzzy -PARALLELS.url: https://api.cloud.xmission.com:4465/paci/v1.0/ -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP \(bu 2 -Using the new configuration format: -.UNINDENT +Using Salt with Parallels requires a \fBuser\fP, \fBpassword\fP and \fBURL\fP\&. These +can be obtained from your cloud provider. .INDENT 0.0 .INDENT 3.5 .sp @@ -16827,18 +16741,18 @@ my\-parallels\-config: .UNINDENT .UNINDENT .sp -\fBNOTE\fP: With the new providers configuration syntax you would have -\fBprovider: my\-parallels\-config\fP instead of \fBprovider: parallels\fP on a -profile configuration. +\fBNOTE:\fP +.INDENT 0.0 +.INDENT 3.5 +In the cloud profile that uses this provider configuration, the syntax for the +\fBprovider\fP required field would be \fBprovider: my\-parallels\-config\fP\&. +.UNINDENT +.UNINDENT .SS Proxmox .sp -Using Salt with Proxmox requires a user, password, and URL. These can be +Using Salt with Proxmox requires a \fBuser\fP, \fBpassword\fP, and \fBURL\fP\&. These can be obtained from your cloud provider. Both PAM and PVE users can be used. .INDENT 0.0 -.IP \(bu 2 -Using the new configuration format: -.UNINDENT -.INDENT 0.0 .INDENT 3.5 .sp .nf @@ -16852,13 +16766,19 @@ my\-proxmox\-config: .fi .UNINDENT .UNINDENT -.SS lxc .sp -The lxc driver is a new, experimental driver for installing Salt on -newly provisioned (via saltcloud) lxc containers. It will in turn use saltify -to install salt and reattach the lxc container as a new lxc minion. -As soon as we can, we manage baremetal operation over SSH. -You can also destroy those containers via this driver. +\fBNOTE:\fP +.INDENT 0.0 +.INDENT 3.5 +In the cloud profile that uses this provider configuration, the syntax for the +\fBprovider\fP required field would be \fBprovider: my\-proxmox\-config\fP\&. +.UNINDENT +.UNINDENT +.SS LXC +.sp +The lxc driver uses saltify to install salt and attach the lxc container as a new lxc +minion. As soon as we can, we manage baremetal operation over SSH. You can also destroy +those containers via this driver. .INDENT 0.0 .INDENT 3.5 .sp @@ -16894,6 +16814,18 @@ devhost10\-lxc: .fi .UNINDENT .UNINDENT +.sp +\fBNOTE:\fP +.INDENT 0.0 +.INDENT 3.5 +In the cloud profile that uses this provider configuration, the syntax for the +\fBprovider\fP required field would be +.nf +\(ga\(ga +.fi +provdier: devhost10\-lxc\(ga. +.UNINDENT +.UNINDENT .SS Saltify .sp The Saltify driver is a new, experimental driver for installing Salt on @@ -16932,6 +16864,14 @@ make_salty: .fi .UNINDENT .UNINDENT +.sp +\fBNOTE:\fP +.INDENT 0.0 +.INDENT 3.5 +In the cloud profile that uses this provider configuration, the syntax for the +\fBprovider\fP required field would be \fBprovider: make_salty\fP\&. +.UNINDENT +.UNINDENT .SS Extending Profiles and Cloud Providers Configuration .sp As of 0.8.7, the option to extend both the profiles and cloud providers @@ -16965,7 +16905,7 @@ Some example usage on how to use \fBextends\fP with profiles. Consider .ft C development\-instances: provider: my\-ec2\-config - size: t1.micro + size: Micro Instance ssh_username: ec2_user securitygroup: \- default @@ -17000,27 +16940,27 @@ data: \(aqprofile\(aq: \(aqFedora\-17\(aq, \(aqprovider\(aq: \(aqmy\-ec2\-config\(aq, \(aqsecuritygroup\(aq: [\(aqdefault\(aq], - \(aqsize\(aq: \(aqt1.micro\(aq, + \(aqsize\(aq: \(aqMicro Instance\(aq, \(aqssh_username\(aq: \(aqec2_user\(aq}, {\(aqdeploy\(aq: False, \(aqimage\(aq: \(aqami\-09b61d60\(aq, \(aqprofile\(aq: \(aqCentOS\-5\(aq, \(aqprovider\(aq: \(aqmy\-aws\-config\(aq, \(aqsecuritygroup\(aq: [\(aqdefault\(aq], - \(aqsize\(aq: \(aqt1.micro\(aq, + \(aqsize\(aq: \(aqMicro Instance\(aq, \(aqssh_username\(aq: \(aqec2_user\(aq}, {\(aqdeploy\(aq: False, \(aqimage\(aq: \(aqami\-54cf5c3d\(aq, \(aqprofile\(aq: \(aqAmazon\-Linux\-AMI\-2012.09\-64bit\(aq, \(aqprovider\(aq: \(aqmy\-ec2\-config\(aq, \(aqsecuritygroup\(aq: [\(aqdefault\(aq], - \(aqsize\(aq: \(aqt1.micro\(aq, + \(aqsize\(aq: \(aqMicro Instance\(aq, \(aqssh_username\(aq: \(aqec2_user\(aq}, {\(aqdeploy\(aq: False, \(aqprofile\(aq: \(aqdevelopment\-instances\(aq, \(aqprovider\(aq: \(aqmy\-ec2\-config\(aq, \(aqsecuritygroup\(aq: [\(aqdefault\(aq], - \(aqsize\(aq: \(aqt1.micro\(aq, + \(aqsize\(aq: \(aqMicro Instance\(aq, \(aqssh_username\(aq: \(aqec2_user\(aq}] .ft P .fi @@ -17115,20 +17055,11 @@ supported by Salt Cloud. However, it may not necessarily be available on all Windows images. .SS Requirements .sp -Salt Cloud makes use of \fIimpacket\fP and \fIwinexe\fP to set up the Windows Salt -Minion installer. -.sp -\fIimpacket\fP is usually available as either the \fIimpacket\fP or the -\fIpython\-impacket\fP package, depending on the distribution. More information on -\fIimpacket\fP can be found at the project home: -.INDENT 0.0 -.IP \(bu 2 -\fI\%impacket project home\fP -.UNINDENT -.sp -\fIwinexe\fP is less commonly available in distribution\-specific repositories. -However, it is currently being built for various distributions in 3rd party -channels: +Salt Cloud makes use of \fIsmbclient\fP and \fIwinexe\fP to set up the Windows Salt +Minion installer. \fIsmbclient\fP may be part of either the \fIsamba\fP package, or its +own \fIsmbclient\fP package, depending on the distribution. \fIwinexe\fP is less +commonly available in distribution\-specific repositories. However, it is +currently being built for various distributions in 3rd party channels: .INDENT 0.0 .IP \(bu 2 \fI\%RPMs at pbone.net\fP @@ -17151,37 +17082,6 @@ Because Salt Cloud makes use of \fIsmbclient\fP and \fIwinexe\fP, port 445 must on the target image. This port is not generally open by default on a standard Windows distribution, and care must be taken to use an image in which this port is open, or the Windows firewall is disabled. -.sp -If supported by the cloud provider, a PowerShell script may be used to open up -this port automatically, using the cloud provider\(aqs \fIuserdata\fP\&. The following -script would open up port 445, and apply the changes: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C - -New\-NetFirewallRule \-Name "SMB445" \-DisplayName "SMB445" \-Protocol TCP \-LocalPort 445 -Set\-Item (dir wsman:\elocalhost\eListener\e*\ePort \-Recurse).pspath 445 \-Force -Restart\-Service winrm - -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -For EC2, this script may be saved as a file, and specified in the provider or -profile configuration as \fIuserdata_file\fP\&. For instance: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -userdata_file: /etc/salt/windows\-firewall.ps1 -.ft P -.fi -.UNINDENT -.UNINDENT .SS Configuration .sp Configuration is set as usual, with some extra configuration settings. The @@ -17201,7 +17101,7 @@ my\-softlayer: apikey: \(aqe3b68aa711e6deadc62d5b76355674beef7cc3116062ddbacafe5f7e465bfdc9\(aq minion: master: saltmaster.example.com - win_installer: /root/Salt\-Minion\-2014.7.0\-AMD64\-Setup.exe + win_installer: /root/Salt\-Minion\-0.17.0\-AMD64\-Setup.exe win_username: Administrator win_password: letmein .ft P @@ -17211,36 +17111,6 @@ my\-softlayer: .sp The default Windows user is \fIAdministrator\fP, and the default Windows password is blank. -.SS Auto\-Generated Passwords on EC2 -.sp -On EC2, when the \fIwin_password\fP is set to \fIauto\fP, Salt Cloud will query EC2 for -an auto\-generated password. This password is expected to take at least 4 minutes -to generate, adding additional time to the deploy process. -.sp -When the EC2 API is queried for the auto\-generated password, it will be returned -in a message encrypted with the specified \fIkeyname\fP\&. This requires that the -appropriate \fIprivate_key\fP file is also specified. Such a profile configuration -might look like: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -windows\-server\-2012: - provider: my\-ec2\-config - image: ami\-c49c0dac - size: m1.small - securitygroup: windows - keyname: mykey - private_key: /root/mykey.pem - userdata_file: /etc/salt/windows\-firewall.ps1 - win_installer: /root/Salt\-Minion\-2014.7.0\-AMD64\-Setup.exe - win_username: Administrator - win_password: auto -.ft P -.fi -.UNINDENT -.UNINDENT .SS Cloud Provider Specifics .SS Getting Started With Aliyun ECS .sp @@ -17474,6 +17344,8 @@ my\-azure\-config: minion: master: saltmaster.example.com + provider: azure + # Optional management_host: management.core.windows.net .ft P @@ -17665,10 +17537,10 @@ salt\-cloud \-a show_instance myinstance DigitalOcean is a public cloud provider that specializes in Linux instances. .SS Configuration .sp -Using Salt for DigitalOcean requires a personal_access_token, an ssh_key_file, -and at least one SSH key name in ssh_key_names, more can be added by comma\-separating them. -The personal_access_token can be found in the Digital Ocean web interface, -in the "Apps & API" section. The SSH key name can be found under the "SSH Keys" section. +Using Salt for DigitalOcean requires a client_key, an api_key, an ssh_key_file, +and an ssh_key_name. The client_key and api_key can be found in the Digital +Ocean web interface, in the "My Settings" section, under the API Access tab. +The ssh_key_name can be found under the "SSH Keys" section. .INDENT 0.0 .INDENT 3.5 .sp @@ -17679,9 +17551,10 @@ in the "Apps & API" section. The SSH key name can be found under the "SSH Keys" my\-digitalocean\-config: provider: digital_ocean - personal_access_token: xxx + client_key: wFGEwgregeqw3435gDger + api_key: GDE43t43REGTrkilg43934t34qT43t4dgegerGEgg ssh_key_file: /path/to/ssh/key/file - ssh_key_names: my\-key\-name,my\-key\-name\-2 + ssh_key_name: my\-key\-name location: New York 1 .ft P .fi @@ -17704,7 +17577,6 @@ digitalocean\-ubuntu: location: New York 1 private_networking: True backups_enabled: True - ipv6: True .ft P .fi .UNINDENT @@ -17791,16 +17663,6 @@ profile configuration. \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 -If your domain\(aqs DNS is managed with DigitalOcean, you can automatically -create A\-records for newly created droplets. Use \fBcreate_dns_record: True\fP -in your config to enable this. Add \fBdelete_dns_record: True\fP to also -delete records when a droplet is destroyed. -.UNINDENT -.UNINDENT -.sp -\fBNOTE:\fP -.INDENT 0.0 -.INDENT 3.5 Additional documentation is available from \fI\%DigitalOcean\fP\&. .UNINDENT .UNINDENT @@ -17843,17 +17705,11 @@ my\-ec2\-southeast\-public\-ips: # Specify whether to use public or private IP for deploy script. # # Valid options are: - # private_ips \- The salt\-cloud command is run inside the EC2 - # public_ips \- The salt\-cloud command is run outside of EC2 + # private_ips \- The salt\-master is also hosted with EC2 + # public_ips \- The salt\-master is hosted outside of EC2 # ssh_interface: public_ips - # Optionally configure the Windows credential validation number of - # retries and delay between retries. This defaults to 10 retries - # with a one second delay betwee retries - win_deploy_auth_retries: 10 - win_deploy_auth_retry_delay: 1 - # Set the EC2 access credentials (see below) # id: HJGRYCILJLKJYG @@ -17903,12 +17759,6 @@ my\-ec2\-southeast\-private\-ips: # ssh_interface: private_ips - # Optionally configure the Windows credential validation number of - # retries and delay between retries. This defaults to 10 retries - # with a one second delay betwee retries - win_deploy_auth_retries: 10 - win_deploy_auth_retry_delay: 1 - # Set the EC2 access credentials (see below) # id: HJGRYCILJLKJYG @@ -17955,14 +17805,6 @@ of the AWS Account page: Both are located in the Access Credentials area of the page, under the Access Keys tab. The \fBid\fP setting is labeled Access Key ID, and the \fBkey\fP setting is labeled Secret Access Key. -.SS Windows Deploy Timeouts -.sp -For Windows instances, it may take longer than normal for the instance to be -ready. In these circumstances, the provider configuration can be configured -with a \fBwin_deploy_auth_retries\fP and/or a \fBwin_deploy_auth_retry_delay\fP -setting, which default to 10 retries and a one second delay between retries. -These retries and timeouts relate to validating the Administrator password -once AWS provides the credentials via the AWS API. .SS Key Pairs .sp In order to create an instance with Salt installed and configured, a key pair @@ -18037,13 +17879,13 @@ Set up an initial profile at \fB/etc/salt/cloud.profiles\fP: base_ec2_private: provider: my\-ec2\-southeast\-private\-ips image: ami\-e565ba8c - size: t1.micro + size: Micro Instance ssh_username: ec2\-user base_ec2_public: provider: my\-ec2\-southeast\-public\-ips image: ami\-e565ba8c - size: t1.micro + size: Micro Instance ssh_username: ec2\-user base_ec2_db: @@ -18325,8 +18167,6 @@ my\-ec2\-config: block_device_mappings: \- DeviceName: /dev/sda Ebs.VolumeSize: 100 - Ebs.VolumeType: gp2 - Ebs.SnapshotId: dummy0 .ft P .fi .UNINDENT @@ -18814,7 +18654,7 @@ salt\-cloud \-f create_volume ec2 size=10 type=io1 iops=1000 .SS Attaching Volumes .sp Unattached volumes may be attached to an instance. The following values are -required; name or instance_id, volume_id, and device. +required; name or instance_id, volume_id and device. .INDENT 0.0 .INDENT 3.5 .sp @@ -18934,9 +18774,6 @@ profile\-id: .UNINDENT .UNINDENT .SS Specifying interface properties -.sp -New in version 2014.7.0. - .sp Launching into a VPC allows you to specify more complex configurations for the network interfaces of your virtual machines, for example:\- @@ -19342,20 +19179,6 @@ all_settings: # deleted when you destroy an instance, set delete_boot_pd to True. # delete_boot_pd: False - - # Specify whether to use public or private IP for deploy script. - # Valid options are: - # private_ips \- The salt\-master is also hosted with GCE - # public_ips \- The salt\-master is hosted outside of GCE - ssh_interface: public_ips - - # Per instance setting: Used a named fixed IP address to this host. - # Valid options are: - # ephemeral \- The host will use a GCE ephemeral IP - # None \- No external IP will be configured on this host. - # Optionally, pass the name of a GCE address to use a fixed IP address. - # If the address does not already exist, it will be created. - external_ip: "ephemeral" .ft P .fi .UNINDENT @@ -19624,45 +19447,6 @@ salt\-cloud \-f show_network gce name=mynet .fi .UNINDENT .UNINDENT -.SS Create address -.sp -Create a new named static IP address in a region. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-cloud \-f create_address gce name=my\-fixed\-ip region=us\-central1 -.ft P -.fi -.UNINDENT -.UNINDENT -.SS Delete address -.sp -Delete an existing named fixed IP address. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-cloud \-f delete_address gce name=my\-fixed\-ip region=us\-central1 -.ft P -.fi -.UNINDENT -.UNINDENT -.SS Show address -.sp -View details on a named address. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-cloud \-f show_address gce name=my\-fixed\-ip region=us\-central1 -.ft P -.fi -.UNINDENT -.UNINDENT .SS Create firewall .sp You\(aqll need to create custom firewall rules if you want to allow other traffic @@ -19760,19 +19544,6 @@ salt\-cloud \-f show_lb gce name=lb .fi .UNINDENT .UNINDENT -.sp -You can also create a load balancer using a named fixed IP addressby specifying the name of the address. -If the address does not exist yet it will be created. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-cloud \-f create_lb gce name=my\-lb region=us\-central1 ports=234 members=s1,s2,s3 address=my\-lb\-ip -.ft P -.fi -.UNINDENT -.UNINDENT .SS Attach and Detach LB .sp It is possible to attach or detach an instance from an existing load\-balancer. @@ -19987,7 +19758,7 @@ hp_ae1_ubuntu: With this setup, salt\-cloud will use the private IP address to ssh into the instance and set up the salt\-minion .SS Getting Started With Joyent .sp -Joyent is a public cloud provider supporting SmartOS, Linux, FreeBSD, and +Joyent is a public cloud provider supporting SmartOS, Linux, FreeBSD and Windows. .SS Dependencies .sp @@ -20010,8 +19781,7 @@ my\-joyent\-config: provider: joyent user: fred password: saltybacon - private_key: /root/mykey.pem - keyname: mykey + private_key: /root/joyent.pem .ft P .fi .UNINDENT @@ -20110,38 +19880,6 @@ my\-joyent\-config: .fi .UNINDENT .UNINDENT -.SS SmartDataCenter -.sp -This driver can also be used with the Joyent SmartDataCenter project. More -details can be found at: -.sp -Using SDC requires that an api_host_suffix is set. The default value for this is -\fI\&.api.joyentcloud.com\fP\&. All characters, including the leading \fI\&.\fP, should be -included: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -api_host_suffix: .api.myhostname.com -.ft P -.fi -.UNINDENT -.UNINDENT -.SS Miscellaneous Configuration -.sp -The following configuration items can be set in either \fBprovider\fP or -\fBprofile\fP confuration files. -.SS use_ssl -.sp -When set to \fBTrue\fP (the default), attach \fBhttps://\fP to any URL that does not -already have \fBhttp://\fP or \fBhttps://\fP included at the beginning. The best -practice is to leave the protocol out of the URL, and use this setting to manage -it. -.SS verify_ssl -.sp -When set to \fBTrue\fP (the default), the underlying web library will verify the -SSL certificate. This should only be set to \fBFalse\fP for debugging.\(ga .SS Getting Started With LXC .sp The LXC module is designed to install Salt in an LXC container on a controlled @@ -20306,7 +20044,7 @@ Container creation .IP \(bu 2 Image listing (LXC templates) .IP \(bu 2 -Running container information (IP addresses, etc.) +Running container informations (IP addresses, etc.) .UNINDENT .SS Getting Started With Linode .sp @@ -20352,15 +20090,13 @@ instances also needs to be set: my\-linode\-config: apikey: asldkgfakl;sdfjsjaslfjaklsdjf;askldjfaaklsjdfhasldsadfghdkf password: F00barbaz - ssh_pubkey: ssh\-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKHEOLLbeXgaqRQT9NBAopVz366SdYc0KKX33vAnq+2R user@host - ssh_key_file: ~/.ssh/id_ed25519 provider: linode .ft P .fi .UNINDENT .UNINDENT .sp -The password needs to be 8 characters and contain lowercase, uppercase, and +The password needs to be 8 characters and contain lowercase, uppercase and numbers. .SS Profiles .SS Cloud Profiles @@ -20713,7 +20449,7 @@ my\-parallels\-config: .UNINDENT .SS Access Credentials .sp -The \fBuser\fP, \fBpassword\fP, and \fBurl\fP will be provided to you by your cloud +The \fBuser\fP, \fBpassword\fP and \fBurl\fP will be provided to you by your cloud provider. These are all required in order for the PARALLELS driver to work. .SS Cloud Profiles .sp @@ -20910,7 +20646,7 @@ my\-proxmox\-config: .UNINDENT .SS Access Credentials .sp -The \fBuser\fP, \fBpassword\fP, and \fBurl\fP will be provided to you by your cloud +The \fBuser\fP, \fBpassword\fP and \fBurl\fP will be provided to you by your cloud provider. These are all required in order for the PROXMOX driver to work. .SS Cloud Profiles .sp @@ -21230,7 +20966,7 @@ openstack_512: .UNINDENT .SS First and Next Generation Images .sp -Rackspace provides two sets of virtual machine images, \fIfirst\fP, and \fInext\fP +Rackspace provides two sets of virtual machine images, \fIfirst\fP and \fInext\fP generation. As of \fB0.8.9\fP salt\-cloud will default to using the \fInext\fP generation images. To force the use of first generation images, on the profile configuration please add: @@ -21248,41 +20984,6 @@ FreeBSD\-9.0\-512: .fi .UNINDENT .UNINDENT -.SS Private Subnets -.sp -By default salt\-cloud will not add Rackspace private networks to new servers. To enable -a private network to a server instantiated by salt cloud, add the following section -to the provider file (typically \fB/etc/salt/cloud.providers.d/rackspace.conf\fP) -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -networks: - \- fixed: - # This is the private network - \- private\-network\-id - # This is Rackspace\(aqs "PublicNet" - \- 00000000\-0000\-0000\-0000\-000000000000 - # This is Rackspace\(aqs "ServiceNet" - \- 11111111\-1111\-1111\-1111\-111111111111 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -To get the Rackspace private network ID, go to Networking, Networks and hover over the private network name. -.sp -The order of the networks in the above code block does not map to the order of the -ethernet devices on newly created servers. Public IP will always be first ( eth0 ) -followed by servicenet ( eth1 ) and then private networks. -.sp -Enabling the private network per above gives the option of using the private subnet for -all master\-minion communication, including the bootstrap install of salt\-minion. To -enable the minion to use the private subnet, update the master: line in the minion: -section of the providers file. To configure the master to only listen on the private -subnet IP, update the interface: line in the /etc/salt/master file to be the private -subnet IP of the salt master. .SS Getting Started With SoftLayer .sp SoftLayer is a public cloud provider, and baremetal hardware hosting provider. @@ -22061,7 +21762,7 @@ to pass arguments to the deploy script: ec2\-amazon: provider: ec2 image: ami\-1624987f - size: t1.micro + size: Micro Instance ssh_username: ec2\-user script: bootstrap\-salt script_args: \-c /tmp/ @@ -22081,23 +21782,9 @@ script_args: | head .fi .UNINDENT .UNINDENT -.SS Use SFTP to transfer files -.sp -Some distributions do not have scp distributed with the ssh package. The -solution is to use sftp with the \fIuse_sftp\fP flag -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -use_sftp: True -.ft P -.fi -.UNINDENT -.UNINDENT .SS Sync After Install .sp -Salt allows users to create custom modules, grains, and states which can be +Salt allows users to create custom modules, grains and states which can be synchronised to minions to extend Salt with further functionality. .sp This option will inform Salt Cloud to synchronise your custom modules, grains, @@ -22266,7 +21953,7 @@ Default 15 attempts .SS wait_for_fun_timeout .sp Some cloud drivers check for an available IP or a successful SSH connection -using a function, namely, SoftLayer, and SoftLayer\-HW. So, the amount of time +using a function, namely, SoftLayer and SoftLayer\-HW. So, the amount of time Salt Cloud should retry such functions before failing. Default: 5 minutes. .SS wait_for_spot_timeout .sp @@ -22279,8 +21966,8 @@ following options manage this functionality. .SS update_cachedir .sp On supported cloud providers, whether or not to maintain a cache of nodes -returned from a \-\-full\-query. The data will be stored in \fBmsgpack\fP format -under \fB/cloud/active///.p\fP\&. This +returned from a \-\-full\-query. The data will be stored in \fBjson\fP format under +\fB/cloud/active///.json\fP\&. This setting can be True or False. .SS diff_cache_events .sp @@ -22350,19 +22037,33 @@ It is highly recommended that this option is \fInot\fP set, unless the user has verified that the provider supports this functionality, and that the image being used is capable of providing the necessary information. At this time, only the EC2 driver supports this functionality. -.SS SSH Agent +.SS File Map Upload .sp -New in version 2015.2.0. +New in version 2014.7.0. .sp -If the ssh key is not stored on the server salt\-cloud is being run on, set -ssh_agent, and salt\-cloud will use the forwarded ssh\-agent to authenticate. +The \fBfile_map\fP option allows an arbitrary group of files to be uploaded to the +target system before running the deploy script. This functionality requires a +provider uses salt.utils.cloud.bootstrap(), which is currently limited to the ec2, +gce, openstack and nova drivers. +.sp +The \fBfile_map\fP can be configured globally in \fB/etc/salt/cloud\fP, or in any cloud +provider or profile file. For example, to upload an extra package or a custom deploy +script, a cloud profile using \fBfile_map\fP might look like: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C -ssh_agent: True +ubuntu14: + provider: ec2\-config + image: ami\-98aa1cf0 + size: t1.micro + ssh_username: root + securitygroup: default + file_map: + /local/path/to/custom/script: /remote/path/to/use/custom/script + /local/path/to/package: /remote/path/to/store/package .ft P .fi .UNINDENT @@ -22481,7 +22182,7 @@ copied to the \fB/etc/salt/\fP directory. .SS Unprivileged Primary Users .sp Some providers, most notably EC2, are configured with a different primary user. -Some common examples are \fBec2\-user\fP, \fBubuntu\fP, \fBfedora\fP, and \fBbitnami\fP\&. +Some common examples are \fBec2\-user\fP, \fBubuntu\fP, \fBfedora\fP and \fBbitnami\fP\&. In these cases, the \fB/tmp/.saltcloud/\fP directory and all files in it should be owned by this user. .sp @@ -22697,19 +22398,10 @@ deploy script (bootstrap\-salt.sh, by default) will be run, which will auto\-detect the operating system, and install Salt using its native package manager. These do not need to be handled by the developer in the cloud module. .sp -The \fBsalt.utils.cloud.validate_windows_cred()\fP function has been extended to -take the number of retries and retry_delay parameters in case a specific cloud -provider has a delay between providing the Windows credentials and the -credentials being available for use. In their \fBcreate()\fP function, or as a -a sub\-function called during the creation process, developers should use the -\fBwin_deploy_auth_retries\fP and \fBwin_deploy_auth_retry_delay\fP parameters from -the provider configuration to allow the end\-user the ability to customize the -number of tries and delay between tries for their particular provider. -.sp After the appropriate deploy function completes, a final event is fired which describes the virtual machine that has just been created. This event is tagged \fBsalt/cloud//created\fP\&. The payload contains the names of the -VM, profile, and provider. +VM, profile and provider. .sp Finally, a dict (queried from the provider) which describes the new virtual machine is returned to the user. Because this data is not fired on the event @@ -22820,9 +22512,9 @@ salt\-cloud \-\-list\-images my\-cloud\-provider .SS The avail_sizes() Function .sp This function returns a list of sizes available for this cloud provider. -Generally, this refers to a combination of RAM, CPU, and/or disk space. This +Generally, this refers to a combination of RAM, CPU and/or disk space. This functionality may not be present on some cloud providers. For example, the -Parallels module breaks down RAM, CPU, and disk space into separate options, +Parallels module breaks down RAM, CPU and disk space into separate options, whereas in other providers, these options are baked into the image. It is normally called using the \fB\-\-list\-sizes\fP option. .INDENT 0.0 @@ -23228,7 +22920,7 @@ Or even on the VM\(aqs profile settings: ubuntu_aws: provider: aws image: ami\-7e2da54e - size: t1.micro + size: Micro Instance deploy: False .ft P .fi @@ -23302,7 +22994,7 @@ to pass arguments to the deploy script: aws\-amazon: provider: aws image: ami\-1624987f - size: t1.micro + size: Micro Instance ssh_username: ec2\-user script: bootstrap\-salt script_args: \-c /tmp/ @@ -23532,7 +23224,7 @@ directly to Salt Cloud to create the instance: .nf .ft C salt myminion cloud.create my\-ec2\-config my\-new\-instance \e - image=ami\-1624987f size=\(aqt1.micro\(aq ssh_username=ec2\-user \e + image=ami\-1624987f size=\(aqMicro Instance\(aq ssh_username=ec2\-user \e securitygroup=default delvol_on_destroy=True .ft P .fi @@ -23624,7 +23316,7 @@ my\-instance\-name: cloud.present: \- provider: my\-ec2\-config \- image: ami\-1624987f - \- size: \(aqt1.micro\(aq + \- size: \(aqMicro Instance\(aq \- ssh_username: ec2\-user \- securitygroup: default \- delvol_on_destroy: True @@ -23711,7 +23403,7 @@ salt\-run cloud.profile ec2\-centos64\-x86_64 my\-instance\-name .UNINDENT .SS CloudClient .sp -The execution, state, and runner modules ultimately all use the CloudClient +The execution, state and runner modules ultimately all use the CloudClient library that ships with Salt. To use the CloudClient library locally (either on the master or a minion), create a client object and issue a command against it: .INDENT 0.0 @@ -24985,6 +24677,102 @@ T} T{ T} _ T{ +list_nodes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} +_ +T{ +list_nodes_full +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} +_ +T{ +list_nodes_select +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} T{ +Yes +T} +_ +T{ list_vlans T} T{ T} T{ @@ -25184,270 +24972,6 @@ Yes T} _ .TE -.SS Tutorials -.SS Using Salt Cloud with the Event Reactor -.sp -One of the most powerful features of the Salt framework is the Event Reactor. -As the Reactor was in development, Salt Cloud was regularly updated to take -advantage of the Reactor upon completion. As such, various aspects of both the -creation and destruction of instances with Salt Cloud fire events to the Salt -Master, which can be used by the Event Reactor. -.SS Event Structure -.sp -As of this writing, all events in Salt Cloud have a tag, which includes the ID -of the instance being managed, and a payload which describes the task that is -currently being handled. A Salt Cloud tag looks like: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt/cloud// -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -For instance, the first event fired when creating an instance named \fBweb1\fP -would look like: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt/cloud/web1/creating -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Assuming this instance is using the \fBec2\-centos\fP profile, which is in turn -using the \fBec2\-config\fP provider, the payload for this tag would look like: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -{\(aqname\(aq: \(aqweb1\(aq, - \(aqprofile\(aq: \(aqec2\-centos\(aq, - \(aqprovider\(aq: \(aqec2\-config\(aq} -.ft P -.fi -.UNINDENT -.UNINDENT -.SS Available Events -.sp -When an instance is created in Salt Cloud, whether by map, profile, or directly -through an API, a minimum of five events are normally fired. More may be -available, depending upon the cloud provider being used. Some of the common -events are described below. -.SS salt/cloud//creating -.sp -This event states simply that the process to create an instance has begun. At -this point in time, no actual work has begun. The payload for this event -includes: -.sp -name -profile -provider -.SS salt/cloud//requesting -.sp -Salt Cloud is about to make a request to the cloud provider to create an -instance. At this point, all of the variables required to make the request have -been gathered, and the payload of the event will reflect those variables which -do not normally pose a security risk. What is returned here is dependent upon -the cloud provider. Some common variables are: -.sp -name -image -size -location -.SS salt/cloud//querying -.sp -The instance has been successfully requested, but the necessary information to -log into the instance (such as IP address) is not yet available. This event -marks the beginning of the process to wait for this information. -.sp -The payload for this event normally only includes the \fBinstance_id\fP\&. -.SS salt/cloud//waiting_for_ssh -.sp -The information required to log into the instance has been retrieved, but the -instance is not necessarily ready to be accessed. Following this event, Salt -Cloud will wait for the IP address to respond to a ping, then wait for the -specified port (usually 22) to respond to a connection, and on Linux systems, -for SSH to become available. Salt Cloud will attempt to issue the \fBdate\fP -command on the remote system, as a means to check for availability. If no -\fBssh_username\fP has been specified, a list of usernames (starting with -\fBroot\fP) will be attempted. If one or more usernames was configured for -\fBssh_username\fP, they will be added to the beginning of the list, in order. -.sp -The payload for this event normally only includes the \fBip_address\fP\&. -.SS salt/cloud//deploying -.sp -The necessary port has been detected as available, and now Salt Cloud can log -into the instance, upload any files used for deployment, and run the deploy -script. Once the script has completed, Salt Cloud will log back into the -instance and remove any remaining files. -.sp -A number of variables are used to deploy instances, and the majority of these -will be available in the payload. Any keys, passwords or other sensitive data -will be scraped from the payload. Most of the variables returned will be -related to the profile or provider config, and any default values that could -have been changed in the profile or provider, but weren\(aqt. -.SS salt/cloud//created -.sp -The deploy sequence has completed, and the instance is now available, Salted, -and ready for use. This event is the final task for Salt Cloud, before returning -instance information to the user and exiting. -.sp -The payload for this event contains little more than the initial \fBcreating\fP -event. This event is required in all cloud providers. -.SS Configuring the Event Reactor -.sp -The Event Reactor is built into the Salt Master process, and as such is -configured via the master configuration file. Normally this will will be a YAML -file located at \fB/etc/salt/master\fP\&. Additionally, master configuration items -can be stored, in YAML format, inside the \fB/etc/salt/master.d/\fP directory. -.sp -These configuration items may be stored in either location; however, they may -only be stored in one location. For organizational and security purposes, it -may be best to create a single configuration file, which contains only Event -Reactor configuration, at \fB/etc/salt/master.d/reactor\fP\&. -.sp -The Event Reactor uses a top\-level configuration item called \fBreactor\fP\&. This -block contains a list of tags to be watched for, each of which also includes a -list of \fBsls\fP files. For instance: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -reactor: - \- \(aqsalt/minion/*/start\(aq: - \- \(aq/srv/reactor/custom\-reactor.sls\(aq - \- \(aqsalt/cloud/*/created\(aq: - \- \(aq/srv/reactor/cloud\-alert.sls\(aq - \- \(aqsalt/cloud/*/destroyed\(aq: - \- \(aq/srv/reactor/cloud\-destroy\-alert.sls\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The above configuration configures reactors for three different tags: one which -is fired when a minion process has started and is available to receive commands, -one which is fired when a cloud instance has been created, and one which is -fired when a cloud instance is destroyed. -.sp -Note that each tag contains a wildcard (\fB*\fP) in it. For each of these tags, -this will normally refer to a \fBminion_id\fP\&. This is not required of event tags, -but is very common. -.SS Reactor SLS Files -.sp -Reactor \fBsls\fP files should be placed in the \fB/srv/reactor/\fP directory for -consistency between environments, but this is not currently enforced by Salt. -.sp -Reactor \fBsls\fP files follow a similar format to other \fBsls\fP files in -Salt. By default they are written in YAML and can be templated using Jinja, but -since they are processed through Salt\(aqs rendering system, any available -renderer (JSON, Mako, Cheetah, etc.) can be used. -.sp -As with other \fBsls\fP files, each stanza will start with a declaration ID, -followed by the function to run, and then any arguments for that function. For -example: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -# /srv/reactor/cloud\-alert.sls -new_instance_alert: - cmd.pagerduty.create_event: - \- tgt: alertserver - \- kwarg: - description: "New instance: {{ data[\(aqname\(aq] }}" - details: "New cloud instance created on {{ data[\(aqprovider\(aq] }}" - service_key: 1626dead5ecafe46231e968eb1be29c4 - profile: my\-pagerduty\-account -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -When the Event Reactor receives an event notifying it that a new instance has -been created, this \fBsls\fP will create a new incident in PagerDuty, using the -configured PagerDuty account. -.sp -The declaration ID in this example is \fBnew_instance_alert\fP\&. The function -called is \fBcmd.pagerduty.create_event\fP\&. The \fBcmd\fP portion of this function -specifies that an execution module and function will be called, in this case, -the \fBpagerduty.create_event\fP function. -.sp -Because an execution module is specified, a target (\fBtgt\fP) must be specified -on which to call the function. In this case, a minion called \fBalertserver\fP -has been used. Any arguments passed through to the function are declared in the -\fBkwarg\fP block. -.SS Example: Reactor\-Based Highstate -.sp -When Salt Cloud creates an instance, by default it will install the Salt Minion -onto the instance, along with any specified minion configuration, and -automatically accept that minion\(aqs keys on the master. One of the configuration -options that can be specified is \fBstartup_states\fP, which is commonly set to -\fBhighstate\fP\&. This will tell the minion to immediately apply a highstate, as -soon as it is able to do so. -.sp -This can present a problem with some system images on some cloud providers. For -instance, Salt Cloud can be configured to log in as either the \fBroot\fP user, or -a user with \fBsudo\fP access. While some providers commonly use images that -lock out remote \fBroot\fP access and require a user with \fBsudo\fP privileges to -log in (notably EC2, with their \fBec2\-user\fP login), most cloud providers fall -back to \fBroot\fP as the default login on all images, including for operating -systems (such as Ubuntu) which normally disallow remote \fBroot\fP login. -.sp -For users of these operating systems, it is understandable that a highstate -would include configuration to block remote \fBroot\fP logins again. However, -Salt Cloud may not have finished cleaning up its deployment files by the time -the minion process has started, and kicked off a highstate run. Users have -reported errors from Salt Cloud getting locked out while trying to clean up -after itself. -.sp -The goal of a startup state may be achieved using the Event Reactor. Because a -minion fires an event when it is able to receive commands, this event can -effectively be used inside the reactor system instead. The following will point -the reactor system to the right \fBsls\fP file: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -reactor: - \- \(aqsalt/cloud/*/created\(aq: - \- \(aq/srv/reactor/startup_highstate.sls\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -And the following \fBsls\fP file will start a highstate run on the target minion: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -# /srv/reactor/startup_highstate.sls -reactor_highstate: - cmd.state.highstate: - \- tgt: {{ data[\(aqname\(aq] }} -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Because this event will not be fired until Salt Cloud has cleaned up after -itself, the highstate run will not step on Salt Cloud\(aqs toes. And because every -file on the minion is configurable, including \fB/etc/salt/minion\fP, the -\fBstartup_states\fP can still be configured for future minion restarts, if -desired. .SH NETAPI MODULES .SS Writing netapi modules .sp @@ -25631,8 +25155,8 @@ Returns the result from the wheel module .UNINDENT .SH SALT VIRT .sp -The Salt Virt cloud controller capability was initially added to Salt in -version 0.14.0 as an alpha technology. +The Salt Virt cloud controller capability was initial added to Salt in version +0.14.0 as an alpha technology. .sp The initial Salt Virt system supports core cloud operations: .INDENT 0.0 @@ -26123,7 +25647,7 @@ Salt ssh is considered production ready in version 2014.7.0 \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 -On many systems, the \fBsalt\-ssh\fP executable will be in its own package, usually named +On many systems, \fBsalt\-ssh\fP will be in its own package, usually named \fBsalt\-ssh\fP\&. .UNINDENT .UNINDENT @@ -26365,8 +25889,7 @@ The information which can be stored in a roster \fItarget\fP is the following: port: # The target system\(aqs ssh port number sudo: # Boolean to run command via sudo priv: # File path to ssh private key, defaults to salt\-ssh.rsa - timeout: # Number of seconds to wait for response when establishing a - SSH connection + timeout: # Number of seconds to wait for response .ft P .fi .UNINDENT @@ -26384,12 +25907,6 @@ An "Always Approved" eauth interface to test against, not intended for T} _ T{ -\fBdjango\fP -T} T{ -Provide authentication using Django Web Framework -T} -_ -T{ \fBkeystone\fP T} T{ Provide authentication using OpenStack Keystone @@ -26402,12 +25919,6 @@ Provide authentication using simple LDAP binds T} _ T{ -\fBmysql\fP -T} T{ -Provide authentication using MySQL. -T} -_ -T{ \fBpam\fP T} T{ Authenticate against PAM @@ -26425,12 +25936,6 @@ T} T{ Salt Stormpath Authentication T} _ -T{ -\fByubico\fP -T} T{ -Provide authentication using YubiKey -T} -_ .TE .SS salt.auth.auto .sp @@ -26441,188 +25946,6 @@ production use .B salt.auth.auto.auth(username, password) Authenticate! .UNINDENT -.SS salt.auth.django -.sp -Provide authentication using Django Web Framework -.INDENT 0.0 -.TP -.B depends -.INDENT 7.0 -.IP \(bu 2 -Django Web Framework -.UNINDENT -.UNINDENT -.sp -Django authentication depends on the presence of the django framework in the -\fBPYTHONPATH\fP, the Django project\(aqs \fBsettings.py\fP file being in the -\fBPYTHONPATH\fP and accessible via the \fBDJANGO_SETTINGS_MODULE\fP environment -variable. -.sp -Django auth can be defined like any other eauth module: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -external_auth: - django: - fred: - \- .* - \- \(aq@runner\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -This will authenticate Fred via Django and allow him to run any execution -module and all runners. -.sp -The authorization details can optionally be located inside the Django database. -The relevant entry in the \fBmodels.py\fP file would look like this: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -class SaltExternalAuthModel(models.Model): - user_fk = models.ForeignKey(auth.User) - minion_matcher = models.CharField() - minion_fn = models.CharField() -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The \fBexternal_auth\fP clause in the master config would then look -like this: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -external_auth: - django: - ^model: -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -When a user attempts to authenticate via Django, Salt will import the package -indicated via the keyword \fB^model\fP\&. That model must have the fields -indicated above, though the model DOES NOT have to be named -\(aqSaltExternalAuthModel\(aq. -.INDENT 0.0 -.TP -.B salt.auth.django.auth(username, password) -Simple Django auth -.UNINDENT -.INDENT 0.0 -.TP -.B salt.auth.django.django_auth_setup() -.UNINDENT -.INDENT 0.0 -.TP -.B salt.auth.django.retrieve_auth_entries(u=None) -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBdjango_auth_class\fP \-\- Reference to the django model class for auth -.IP \(bu 2 -\fBu\fP \-\- Username to filter for -.UNINDENT -.TP -.B Returns -Dictionary that can be slotted into the \fB__opts__\fP structure for -eauth that designates the user associated ACL -.UNINDENT -.sp -Database records such as: -.TS -center; -|l|l|l|. -_ -T{ -username -T} T{ -minion_or_fn_matcher -T} T{ -minion_fn -T} -_ -T{ -fred -T} T{ -T} T{ -test.ping -T} -_ -T{ -fred -T} T{ -server1 -T} T{ -network.interfaces -T} -_ -T{ -fred -T} T{ -server1 -T} T{ -raid.list -T} -_ -T{ -fred -T} T{ -server2 -T} T{ -\&.* -T} -_ -T{ -guru -T} T{ -\&.* -T} T{ -T} -_ -T{ -smartadmin -T} T{ -server1 -T} T{ -\&.* -T} -_ -.TE -.sp -Should result in an eauth config such as: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -fred: - \- test.ping - \- server1: - \- network.interfaces - \- raid.list - \- server2: - \- .* -guru: - \- .* -smartadmin: - \- server1: - \- .* -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.auth.keystone .sp Provide authentication using OpenStack Keystone @@ -26675,112 +25998,6 @@ OpenLDAP allows you to search for all groups in the directory and returns members of those groups. Then we check against the username entered. .UNINDENT -.SS salt.auth.mysql -.sp -Provide authentication using MySQL. -.sp -When using MySQL as an authentication backend, you will need to create or -use an existing table that has a username and a password column. -.sp -To get started, create a simple table that holds just a username and -a password. The password field will hold a SHA256 checksum. -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C - -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B CREATE TABLE \fIusers\fP ( -\fIid\fP int(11) NOT NULL AUTO_INCREMENT, -\fIusername\fP varchar(25) DEFAULT NULL, -\fIpassword\fP varchar(70) DEFAULT NULL, -PRIMARY KEY (\fIid\fP) -.UNINDENT -.sp -) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; -.UNINDENT -.UNINDENT -.sp -To create a user within MySQL, execute the following statement. -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C - -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -INSERT INTO users VALUES (NULL, \(aqdiana\(aq, SHA2(\(aqsecret\(aq, 256)) -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C - -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B mysql_auth: -hostname: localhost -database: SaltStack -username: root -password: letmein -auth_sql: \(aqSELECT username FROM users WHERE username = "{0}" AND password = SHA2("{1}", 256)\(aq -.UNINDENT -.UNINDENT -.UNINDENT -.sp -The \fIauth_sql\fP contains the SQL that will validate a user to ensure they are -correctly authenticated. This is where you can specify other SQL queries to -authenticate users. -.sp -Enable MySQL authentication. -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -external_auth: - mysql: - damian: - \- test.* -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B depends -.INDENT 7.0 -.IP \(bu 2 -MySQL\-python Python module -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.auth.mysql.auth(username, password) -Authenticate using a MySQL user table -.UNINDENT .SS salt.auth.pam .sp Authenticate against PAM @@ -26964,64 +26181,6 @@ is running as, but not readable by other system users. .B salt.auth.stormpath_mod.auth(username, password) Try and authenticate .UNINDENT -.SS salt.auth.yubico -.sp -Provide authentication using YubiKey -.sp -To get your YubiKey API key you will need to visit the website below. -.sp -\fI\%https://upgrade.yubico.com/getapikey/\fP -.sp -The resulting page will show the generated Client ID (aka AuthID or API ID) -and the generated API key (Secret Key). Make a note of both and use these -two values in your /etc/salt/master configuration. -.INDENT 0.0 -.INDENT 3.5 -/etc/salt/master -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -yubico_users: - damian: - id: 12345 - key: ABCDEFGHIJKLMNOPQRSTUVWXYZ -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -external_auth: - yubico: - damian: - \- test.* -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.sp -Please wait five to ten minutes after generating the key before testing so that -the API key will be updated on all the YubiCloud servers. -.INDENT 0.0 -.TP -.B depends -.INDENT 7.0 -.IP \(bu 2 -yubico\-client Python module -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.auth.yubico.auth(username, password) -Authentcate against yubico server -.UNINDENT .SS Command Line Reference .sp Salt can be controlled by a command line client by the root user on the Salt @@ -27088,7 +26247,7 @@ salt \-L foo.bar.baz,quo.qux cmd.run \(aqps aux | grep foo\(aq .UNINDENT .SS More Powerful Targets .sp -The simple target specifications, glob, regex, and list will cover many use +The simple target specifications, glob, regex and list will cover many use cases, and for some will cover all use cases, but more powerful options exist. .SS Targeting with Grains .sp @@ -27367,14 +26526,19 @@ on most systems is \fB/etc/salt\fP\&. .UNINDENT .INDENT 0.0 .TP +.B \-\-hard\-crash +Raise any original exception rather than exiting gracefully Default: False +.UNINDENT +.INDENT 0.0 +.TP .B \-g, \-\-grains Return the information generated by the Salt grains .UNINDENT .INDENT 0.0 .TP .B \-m MODULE_DIRS, \-\-module\-dirs=MODULE_DIRS -Specify an additional directories to pull modules from, multiple -directories can be delimited by commas +Specify an additional directory to pull modules from. Multiple directories +can be provided by passing \-m /\-\-module\-dirs multiple times. .UNINDENT .INDENT 0.0 .TP @@ -27402,6 +26566,43 @@ returners. .B \-\-local Run salt\-call locally, as if there was no master running. .UNINDENT +.INDENT 0.0 +.TP +.B \-\-file\-root=FILE_ROOT +Set this directory as the base file root. +.UNINDENT +.INDENT 0.0 +.TP +.B \-\-pillar\-root=PILLAR_ROOT +Set this directory as the base pillar root. +.UNINDENT +.INDENT 0.0 +.TP +.B \-\-retcode\-passthrough +Exit with the salt call retcode and not the salt binary retcode +.UNINDENT +.INDENT 0.0 +.TP +.B \-\-metadata +Print out the execution metadata as well as the return. This will print out +the outputter data, the return code, etc. +.UNINDENT +.INDENT 0.0 +.TP +.B \-\-id=ID +Specify the minion id to use. If this option is omitted, the id option from +the minion config will be used. +.UNINDENT +.INDENT 0.0 +.TP +.B \-\-skip\-grains +Do not load grains. +.UNINDENT +.INDENT 0.0 +.TP +.B \-\-refresh\-grains\-cache +Force a refresh of the grains cache +.UNINDENT .SS Logging Options .sp Logging options which override any settings defined on the configuration files. @@ -27551,7 +26752,7 @@ timeout and after all minions have returned then use the static option. .INDENT 0.0 .TP .B \-\-async -Instead of waiting for the job to run on minions only print the job id of +Instead of waiting for the job to run on minions only print the jod id of the started execution and complete. .UNINDENT .INDENT 0.0 @@ -27560,8 +26761,8 @@ the started execution and complete. New in version 0.17. .sp -Choose the format of the state output. The options are \fIfull\fP, -\fIterse\fP, \fImixed\fP, \fIchanges\fP, and \fIfilter\fP\&. Default: full +Override the configured state_output value for minion output. Default: +full .UNINDENT .INDENT 0.0 .TP @@ -27578,9 +26779,9 @@ print out extra data like the job id. .UNINDENT .INDENT 0.0 .TP -.B \-\-hide\-timeout -Instead of showing the return data for all minions. This option -prints only the online minions which could be reached. +.B \-\-show\-timeout +Instead of only showing the return data from the online minions this option +also prints the names of the minions which could not be reached. .UNINDENT .INDENT 0.0 .TP @@ -27594,9 +26795,7 @@ minions to execute on. .TP .B \-a EAUTH, \-\-auth=EAUTH Pass in an external authentication medium to validate against. The -credentials will be prompted for. The options are \fIauto\fP, -\fIkeystone\fP, \fIldap\fP, \fIpam\fP, and \fIstormpath\fP\&. Can be used with the \-T -option. +credentials will be prompted for. Can be used with the \-T option. .UNINDENT .INDENT 0.0 .TP @@ -27608,13 +26807,9 @@ re\-authenticate. .INDENT 0.0 .TP .B \-\-return=RETURNER -Choose an alternative returner to call on the minion, if an -alternative returner is used then the return will not come back to -the command line but will be sent to the specified return system. -The options are \fIcarbon\fP, \fIcassandra\fP, \fIcouchbase\fP, \fIcouchdb\fP, -\fIelasticsearch\fP, \fIetcd\fP, \fIhipchat\fP, \fIlocal\fP, \fIlocal_cache\fP, -\fImemcache\fP, \fImongo\fP, \fImysql\fP, \fIodbc\fP, \fIpostgres\fP, \fIredis\fP, -\fIsentry\fP, \fIslack\fP, \fIsms\fP, \fIsmtp\fP, \fIsqlite3\fP, \fIsyslog\fP, and \fIxmpp\fP\&. +Chose an alternative returner to call on the minion, if an alternative +returner is used then the return will not come back to the command line +but will be sent to the specified return system. .UNINDENT .INDENT 0.0 .TP @@ -27797,10 +26992,6 @@ Provision virtual machines in the cloud with Salt .ft C salt\-cloud \-m /etc/salt/cloud.map -salt\-cloud \-m /etc/salt/cloud.map NAME - -salt\-cloud \-m /etc/salt/cloud.map NAME1 NAME2 - salt\-cloud \-p PROFILE NAME salt\-cloud \-p PROFILE NAME1 NAME2 NAME3 NAME4 NAME5 NAME6 @@ -27828,9 +27019,8 @@ must be defined in the specified profiles file. .TP .B \-m MAP, \-\-map=MAP Specify a map file to use. If used without any other options, this option -will ensure that all of the mapped VMs are created. If VM names are -also passed as arguments, they will be used to filter the map file. -If the named VM already exists then it will be skipped. +will ensure that all of the mapped VMs are created. If the named VM +already exists then it will be skipped. .UNINDENT .INDENT 0.0 .TP @@ -27883,21 +27073,6 @@ specified map. .UNINDENT .INDENT 0.0 .TP -.B \-\-list\-providers -Display a list of configured providers. -.UNINDENT -.INDENT 0.0 -.TP -.B \-\-list\-profiles -New in version 2014.7.0. - -.sp -Display a list of configured profiles. Pass in a cloud provider to view -the provider\(aqs associated profiles, such as \fBdigital_ocean\fP, or pass in -\fBall\fP to list all the configured profiles. -.UNINDENT -.INDENT 0.0 -.TP .B \-\-list\-images Display a list of images available in configured cloud providers. Pass the cloud provider that available images are desired on, aka @@ -27951,7 +27126,7 @@ Disable all colored output. .UNINDENT .SS Examples .sp -To create 4 VMs named web1, web2, db1, and db2 from specified profiles: +To create 4 VMs named web1, web2, db1 and db2 from specified profiles: .INDENT 0.0 .INDENT 3.5 .sp @@ -29018,7 +28193,7 @@ users specified: .sp .nf .ft C -chmod 755 /var/cache/salt /var/cache/salt/master /var/cache/salt/master/jobs /var/run/salt /var/run/salt/master +chmod 755 /var/cache/salt /var/cache/salt/jobs /var/run/salt .ft P .fi .UNINDENT @@ -29028,10 +28203,9 @@ chmod 755 /var/cache/salt /var/cache/salt/master /var/cache/salt/master/jobs /va .INDENT 0.0 .INDENT 3.5 In addition to the changes above you will also need to modify the -permissions of /var/log/salt and the existing log file to be writable by -the user(s) which will be running the commands. If you do not wish to do -this then you must disable logging or Salt will generate errors as it -cannot write to the logs as the system users. +permissions of /var/log/salt and the existing log file. If you do not +wish to do this then you must disable logging or Salt will generate +errors as it cannot write to the logs as the system users. .UNINDENT .UNINDENT .sp @@ -29068,8 +28242,9 @@ data from Salt as JSON, or as shell\-friendly text, or many other formats. See the \fBstate.event\fP runner to utilize Salt\(aqs event bus from shell scripts. .sp -Salt\(aqs \fI\%netapi module\fP provides access to Salt externally via a REST interface. -Review the \fI\%netapi module\fP documentation for more information. +See the \fI\%salt\-api\fP project to access Salt externally via a REST interface. +It uses Salt\(aqs Python interface documented below and is also useful as a +reference implementation. .UNINDENT .UNINDENT .SS Salt\(aqs \fBopts\fP dictionary @@ -29146,7 +28321,7 @@ to execute those modules instead. Each module type has a corresponding loader function. .INDENT 0.0 .TP -.B salt.loader.minion_mods(opts, context=None, whitelist=None, include_errors=False, initial_load=False, loaded_base_name=None) +.B salt.loader.minion_mods(opts, context=None, whitelist=None, loaded_base_name=None) Load execution modules .sp Returns a dictionary of execution modules appropriate for the current @@ -29171,7 +28346,7 @@ __salt__[\(aqtest.ping\(aq]() .UNINDENT .INDENT 0.0 .TP -.B salt.loader.raw_mod(opts, _, functions, mod=\(aqmodules\(aq) +.B salt.loader.raw_mod(opts, name, functions) Returns a single module loaded raw and bypassing the __virtual__ function .INDENT 7.0 .INDENT 3.5 @@ -29201,7 +28376,7 @@ Returns the state modules import salt.config import salt.loader -__opts__ = salt.config.minion_config(\(aq/etc/salt/minion\(aq) +__opts__ salt.config.minion_config(\(aq/etc/salt/minion\(aq) statemods = salt.loader.states(__opts__, None) .ft P .fi @@ -29221,7 +28396,7 @@ grains. import salt.config import salt.loader -__opts__ = salt.config.minion_config(\(aq/etc/salt/minion\(aq) +__opts__ salt.config.minion_config(\(aq/etc/salt/minion\(aq) __grains__ = salt.loader.grains(__opts__) print __grains__[\(aqid\(aq] .ft P @@ -29259,7 +28434,7 @@ local.cmd(\(aq*\(aq, \(aqtest.fib\(aq, [10]) .UNINDENT .INDENT 7.0 .TP -.B cmd(tgt, fun, arg=(), timeout=None, expr_form=\(aqglob\(aq, ret=\(aq\(aq, jid=\(aq\(aq, kwarg=None, **kwargs) +.B cmd(tgt, fun, arg=(), timeout=None, expr_form=\(aqglob\(aq, ret=\(aq\(aq, kwarg=None, **kwargs) Synchronously execute a command on targeted minions .sp The cmd method will execute and wait for the timeout period for all @@ -29399,7 +28574,7 @@ function name. .UNINDENT .INDENT 7.0 .TP -.B cmd_async(tgt, fun, arg=(), expr_form=\(aqglob\(aq, ret=\(aq\(aq, jid=\(aq\(aq, kwarg=None, **kwargs) +.B cmd_async(tgt, fun, arg=(), expr_form=\(aqglob\(aq, ret=\(aq\(aq, kwarg=None, **kwargs) Asynchronously send a command to connected minions .sp The function signature is the same as \fBcmd()\fP with the @@ -29513,7 +28688,7 @@ None .UNINDENT .INDENT 7.0 .TP -.B cmd_subset(tgt, fun, arg=(), expr_form=\(aqglob\(aq, ret=\(aq\(aq, kwarg=None, sub=3, cli=False, progress=False, **kwargs) +.B cmd_subset(tgt, fun, arg=(), expr_form=\(aqglob\(aq, ret=\(aq\(aq, kwarg=None, sub=3, cli=False, **kwargs) Execute a command on a random subset of the targeted systems .sp The function signature is the same as \fBcmd()\fP with the @@ -29553,7 +28728,7 @@ is reached. .UNINDENT .INDENT 7.0 .TP -.B run_job(tgt, fun, arg=(), expr_form=\(aqglob\(aq, ret=\(aq\(aq, timeout=None, jid=\(aq\(aq, kwarg=None, **kwargs) +.B run_job(tgt, fun, arg=(), expr_form=\(aqglob\(aq, ret=\(aq\(aq, timeout=None, kwarg=None, **kwargs) Asynchronously send a command to connected minions .sp Prep the job directory and publish a command to any targeted minions. @@ -29675,8 +28850,8 @@ to watch for the return .UNINDENT .INDENT 7.0 .TP -.B cmd(fun, arg=None, pub_data=None, kwarg=None) -Execute a function +.B cmd(fun, arg, pub_data=None, kwarg=None) +Execute a runner function .INDENT 7.0 .INDENT 3.5 .sp @@ -29776,34 +28951,20 @@ to watch for the return .UNINDENT .INDENT 7.0 .TP -.B cmd(fun, arg=None, pub_data=None, kwarg=None) -Execute a function +.B cmd(fun, **kwargs) +Execute a wheel function .INDENT 7.0 .INDENT 3.5 .sp .nf .ft C >>> opts = salt.config.master_config(\(aq/etc/salt/master\(aq) ->>> runner = salt.runner.RunnerClient(opts) ->>> runner.cmd(\(aqjobs.list_jobs\(aq, []) -{ - \(aq20131219215650131543\(aq: { - \(aqArguments\(aq: [300], - \(aqFunction\(aq: \(aqtest.sleep\(aq, - \(aqStartTime\(aq: \(aq2013, Dec 19 21:56:50.131543\(aq, - \(aqTarget\(aq: \(aq*\(aq, - \(aqTarget\-type\(aq: \(aqglob\(aq, - \(aqUser\(aq: \(aqsaltdev\(aq - }, - \(aq20131219215921857715\(aq: { - \(aqArguments\(aq: [300], - \(aqFunction\(aq: \(aqtest.sleep\(aq, - \(aqStartTime\(aq: \(aq2013, Dec 19 21:59:21.857715\(aq, - \(aqTarget\(aq: \(aq*\(aq, - \(aqTarget\-type\(aq: \(aqglob\(aq, - \(aqUser\(aq: \(aqsaltdev\(aq - }, -} +>>> wheel = salt.wheel.Wheel(opts) +>>> wheel.call_func(\(aqkey.list_all\(aq) +{\(aqlocal\(aq: [\(aqmaster.pem\(aq, \(aqmaster.pub\(aq], +\(aqminions\(aq: [\(aqjerry\(aq], +\(aqminions_pre\(aq: [], +\(aqminions_rejected\(aq: []} .ft P .fi .UNINDENT @@ -29812,10 +28973,10 @@ Execute a function .INDENT 7.0 .TP .B cmd_async(low) -Execute a function asynchronously; eauth is respected +Execute a wheel function asynchronously; eauth is respected .sp This function requires that \fBexternal_auth\fP is configured -and the user is authorized +and the user is authorized to execute runner functions: (\fB@wheel\fP). .INDENT 7.0 .INDENT 3.5 .sp @@ -29846,26 +29007,20 @@ and the user is authorized to execute runner functions: (\fB@wheel\fP). .sp .nf .ft C - -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -.nf -.ft C >>> wheel.cmd_sync({ -\(aqfun\(aq: \(aqkey.finger\(aq, -\(aqmatch\(aq: \(aqjerry\(aq, -\(aqeauth\(aq: \(aqauto\(aq, -\(aqusername\(aq: \(aqsaltdev\(aq, -\(aqpassword\(aq: \(aqsaltdev\(aq, + \(aqfun\(aq: \(aqkey.finger\(aq, + \(aqmatch\(aq: \(aqjerry\(aq, + \(aqeauth\(aq: \(aqauto\(aq, + \(aqusername\(aq: \(aqsaltdev\(aq, + \(aqpassword\(aq: \(aqsaltdev\(aq, }) {\(aqminions\(aq: {\(aqjerry\(aq: \(aq5d:f6:79:43:5e:d4:42:3f:57:b8:45:a8:7e:a4:6e:ca\(aq}} .ft P .fi .UNINDENT .UNINDENT +.UNINDENT +.UNINDENT .SS CloudClient .INDENT 0.0 .TP @@ -29903,7 +29058,7 @@ Example: .nf .ft C client.create(names=[\(aqmyinstance\(aq], provider=\(aqmy\-ec2\-config\(aq, - kwargs={\(aqimage\(aq: \(aqami\-1624987f\(aq, \(aqsize\(aq: \(aqt1.micro\(aq, + kwargs={\(aqimage\(aq: \(aqami\-1624987f\(aq, \(aqsize\(aq: \(aqMicro Instance\(aq, \(aqssh_username\(aq: \(aqec2\-user\(aq, \(aqsecuritygroup\(aq: \(aqdefault\(aq, \(aqdelvol_on_destroy\(aq: True}) .ft P @@ -30054,12 +29209,6 @@ DigitalOcean Cloud Module T} _ T{ -\fBdigital_ocean_v2\fP -T} T{ -DigitalOcean Cloud Module v2 -T} -_ -T{ \fBec2\fP T} T{ The EC2 Cloud Module @@ -30080,6 +29229,7 @@ _ T{ \fBjoyent\fP T} T{ +Joyent Cloud Module T} _ T{ @@ -30095,11 +29245,6 @@ Linode Cloud Module using Apache Libcloud OR linode\-python bindings T} _ T{ -\fBlinodepy\fP -T} T{ -T} -_ -T{ \fBlxc\fP T} T{ Install Salt on an LXC Container @@ -30142,12 +29287,6 @@ Proxmox Cloud Module T} _ T{ -\fBpyrax\fP -T} T{ -Pyrax Cloud Module -T} -_ -T{ \fBrackspace\fP T} T{ Rackspace Cloud Module @@ -30552,29 +29691,13 @@ relevant data .UNINDENT .INDENT 0.0 .TP -.B salt.cloud.clouds.cloudstack.block_device_mappings(vm_) -Return the block device mapping: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -[{\(aqDeviceName\(aq: \(aq/dev/sdb\(aq, \(aqVirtualName\(aq: \(aqephemeral0\(aq}, - {\(aqDeviceName\(aq: \(aq/dev/sdc\(aq, \(aqVirtualName\(aq: \(aqephemeral1\(aq}] -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.cloud.clouds.cloudstack.create(vm_) Create a single VM from a data dict .UNINDENT .INDENT 0.0 .TP .B salt.cloud.clouds.cloudstack.destroy(name, conn=None, call=None) -Delete a single VM, and all of its volumes +Delete a single VM .UNINDENT .INDENT 0.0 .TP @@ -30630,11 +29753,6 @@ Return the password to use .UNINDENT .INDENT 0.0 .TP -.B salt.cloud.clouds.cloudstack.get_project(conn, vm_) -Return the project to use. -.UNINDENT -.INDENT 0.0 -.TP .B salt.cloud.clouds.cloudstack.get_size(conn, vm_) Return the VM\(aqs size object .UNINDENT @@ -30800,156 +29918,11 @@ Show the details from DigitalOcean concerning a droplet .B salt.cloud.clouds.digital_ocean.show_keypair(kwargs=None, call=None) Show the details of an SSH keypair .UNINDENT -.SS salt.cloud.clouds.digital_ocean_v2 -.SS DigitalOcean Cloud Module v2 -.sp -The DigitalOcean cloud module is used to control access to the DigitalOcean -VPS system. -.sp -Use of this module only requires the \fBpersonal_access_token\fP parameter to be set. Set up the -cloud configuration at \fB/etc/salt/cloud.providers\fP or -\fB/etc/salt/cloud.providers.d/digital_ocean.conf\fP: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -my\-digital\-ocean\-config: - personal_access_token: xxx - provider: digital_ocean -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B depends -requests -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.digital_ocean_v2.avail_images(call=None) -Return a list of the images that are on the provider -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.digital_ocean_v2.avail_locations(call=None) -Return a dict of all available VM locations on the cloud provider with -relevant data -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.digital_ocean_v2.avail_sizes(call=None) -Return a list of the image sizes that are on the provider -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.digital_ocean_v2.create(vm_) -Create a single VM from a data dict -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.digital_ocean_v2.create_dns_record(hostname, ip_address) -Creates a DNS record for the given hostname if the domain is managed with DO. -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.digital_ocean_v2.create_node(args) -Create a node -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.digital_ocean_v2.delete_dns_record(hostname) -Deletes a DNS for the given hostname if the domain is managed with DO. -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.digital_ocean_v2.destroy(name, call=None) -Destroy a node. Will check termination protection and warn if enabled. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-cloud \-\-destroy mymachine -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.digital_ocean_v2.get_configured_provider() -Return the first configured instance. -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.digital_ocean_v2.get_image(vm_) -Return the image object to use -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.digital_ocean_v2.get_keyid(keyname) -Return the ID of the keyname -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.digital_ocean_v2.get_location(vm_) -Return the VM\(aqs location -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.digital_ocean_v2.get_size(vm_) -Return the VM\(aqs size. Used by create_node(). -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.digital_ocean_v2.list_keypairs(call=None) -Return a dict of all available VM locations on the cloud provider with -relevant data -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.digital_ocean_v2.list_nodes(call=None) -Return a list of the VMs that are on the provider -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.digital_ocean_v2.list_nodes_full(call=None, forOutput=True) -Return a list of the VMs that are on the provider -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.digital_ocean_v2.list_nodes_select(call=None) -Return a list of the VMs that are on the provider, with select fields -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.digital_ocean_v2.query(method=\(aqdroplets\(aq, droplet_id=None, command=None, args=None, http_method=\(aqget\(aq) -Make a web call to DigitalOcean -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.digital_ocean_v2.script(vm_) -Return the script deployment object -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.digital_ocean_v2.show_instance(name, call=None) -Show the details from DigitalOcean concerning a droplet -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.digital_ocean_v2.show_keypair(kwargs=None, call=None) -Show the details of an SSH keypair -.UNINDENT .SS salt.cloud.clouds.ec2 .SS The EC2 Cloud Module .sp The EC2 cloud module is used to interact with the Amazon Elastic Cloud -Computing. +Computing. This driver is highly experimental! Use at your own risk! .INDENT 0.0 .TP .B To use the EC2 cloud module, set up the cloud configuration at @@ -30961,13 +29934,9 @@ Computing. .nf .ft C my\-ec2\-config: - # The EC2 API authentication id, set this and/or key to - # \(aquse\-instance\-role\-credentials\(aq to use the instance role credentials - # from the meta\-data if running on an AWS instance + # The EC2 API authentication id id: GKTADJGHEIQSXMKKRBJ08H - # The EC2 API authentication key, set this and/or id to - # \(aquse\-instance\-role\-credentials\(aq to use the instance role credentials - # from the meta\-data if running on an AWS instance + # The EC2 API authentication key key: askdjghsdfjkghWupUjasdflkdfklgjsdfjajkghs # The ssh keyname to use keyname: default @@ -31088,19 +30057,6 @@ Create a snapshot .TP .B salt.cloud.clouds.ec2.create_volume(kwargs=None, call=None, wait_to_finish=False) Create a volume -.sp -CLI Examples: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-cloud \-f create_volume my\-ec2\-config zone=us\-east\-1b -salt\-cloud \-f create_volume my\-ec2\-config zone=us\-east\-1b tags=\(aq{"tag1": "val1", "tag2", "val2"}\(aq -.ft P -.fi -.UNINDENT -.UNINDENT .UNINDENT .INDENT 0.0 .TP @@ -31115,7 +30071,6 @@ CLI Examples: .sp .nf .ft C -salt\-cloud \-a del_tags mymachine tags=mytag, salt\-cloud \-a del_tags mymachine tags=tag1,tag2,tag3 salt\-cloud \-a del_tags resource_id=vol\-3267ab32 tags=tag1,tag2,tag3 .ft P @@ -31280,50 +30235,11 @@ Cloud profile setting .UNINDENT .INDENT 0.0 .TP -.B salt.cloud.clouds.ec2.get_password_data(name=None, kwargs=None, instance_id=None, call=None) -Return password data for a Windows instance. -.sp -By default only the encrypted password data will be returned. However, if a -key_file is passed in, then a decrypted password will also be returned. -.sp -Note that the key_file references the private key that was used to generate -the keypair associated with this instance. This private key will _not_ be -transmitted to Amazon; it is only used internally inside of Salt Cloud to -decrypt data _after_ it has been received from Amazon. -.sp -CLI Examples: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-cloud \-a get_password_data mymachine -salt\-cloud \-a get_password_data mymachine key_file=/root/ec2key.pem -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Note: PKCS1_v1_5 was added in PyCrypto 2.5 -.UNINDENT -.INDENT 0.0 -.TP .B salt.cloud.clouds.ec2.get_placementgroup(vm_) Returns the PlacementGroup to use .UNINDENT .INDENT 0.0 .TP -.B salt.cloud.clouds.ec2.get_provider(vm_=None) -Extract the provider name from vm -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.ec2.get_salt_interface(vm_) -Return the salt_interface type to connect to. Either \(aqpublic_ips\(aq (default) -or \(aqprivate_ips\(aq. -.UNINDENT -.INDENT 0.0 -.TP .B salt.cloud.clouds.ec2.get_spot_config(vm_) Returns the spot instance configuration for the provided vm .UNINDENT @@ -31407,6 +30323,11 @@ Return the keyname .UNINDENT .INDENT 0.0 .TP +.B salt.cloud.clouds.ec2.list_availability_zones() +List all availability zones in the current region +.UNINDENT +.INDENT 0.0 +.TP .B salt.cloud.clouds.ec2.list_nodes(call=None) Return a list of the VMs that are on the provider .UNINDENT @@ -31568,25 +30489,15 @@ Show the details from EC2 concerning an AMI. Can be called as an action (which requires a name): .INDENT 7.0 .INDENT 3.5 -.sp -.nf -.ft C salt\-cloud \-a show_instance myinstance -.ft P -.fi .UNINDENT .UNINDENT .sp \&...or as a function (which requires either a name or instance_id): .INDENT 7.0 .INDENT 3.5 -.sp -.nf -.ft C salt\-cloud \-f show_instance my\-ec2 name=myinstance salt\-cloud \-f show_instance my\-ec2 instance_id=i\-d34db33f -.ft P -.fi .UNINDENT .UNINDENT .UNINDENT @@ -31686,6 +30597,65 @@ Add the full path name of the converted private key to your .IP \(bu 2 Consider using a more secure location for your private key. .UNINDENT +.TP +.B Supported commands: +# Create a few instances fro profile_name in /etc/salt/cloud.profiles +\- salt\-cloud \-p profile_name inst1 inst2 inst3 +# Delete an instance +\- salt\-cloud \-d inst1 +# Look up data on an instance +\- salt\-cloud \-a show_instance inst2 +# List available locations (aka \(aqzones\(aq) for provider \(aqgce\(aq +\- salt\-cloud \-\-list\-locations gce +# List available instance sizes (aka \(aqmachine types\(aq) for provider \(aqgce\(aq +\- salt\-cloud \-\-list\-sizes gce +# List available images for provider \(aqgce\(aq +\- salt\-cloud \-\-list\-images gce +# Create a persistent disk +\- salt\-cloud \-f create_disk gce disk_name=pd location=us\-central1\-b ima... +# Permanently delete a persistent disk +\- salt\-cloud \-f delete_disk gce disk_name=pd +# Attach an existing disk to an existing instance +\- salt\-cloud \-a attach_disk myinstance disk_name=mydisk mode=READ_ONLY +# Detach a disk from an instance +\- salt\-cloud \-a detach_disk myinstance disk_name=mydisk +# Show information about the named disk +\- salt\-cloud \-a show_disk myinstance disk_name=pd +\- salt\-cloud \-f show_disk gce disk_name=pd +# Create a snapshot of a persistent disk +\- salt\-cloud \-f create_snapshot gce name=snap\-1 disk_name=pd +# Permanently delete a disk snapshot +\- salt\-cloud \-f delete_snapshot gce name=snap\-1 +# Show information about the named snapshot +\- salt\-cloud \-f show_snapshot gce name=snap\-1 +# Create a network +\- salt\-cloud \-f create_network gce name=mynet cidr=10.10.10.0/24 +# Delete a network +\- salt\-cloud \-f delete_network gce name=mynet +# Show info for a network +\- salt\-cloud \-f show_network gce name=mynet +# Create a firewall rule +\- salt\-cloud \-f create_fwrule gce name=fw1 network=mynet allow=tcp:80 +# Delete a firewall rule +\- salt\-cloud \-f delete_fwrule gce name=fw1 +# Show info for a firewall rule +\-salt\-cloud \-f show_fwrule gce name=fw1 +# Create a load\-balancer HTTP health check +\- salt\-cloud \-f create_hc gce name=hc path=/ port=80 +# Delete a load\-balancer HTTP health check +\- salt\-cloud \-f delete_hc gce name=hc +# Show info about an HTTP health check +\- salt\-cloud \-f show_hc gce name=hc +# Create a load\-balancer configuration +\- salt\-cloud \-f create_lb gce name=lb region=us\-central1 ports=80 ... +# Delete a load\-balancer configuration +\- salt\-cloud \-f delete_lb gce name=lb +# Show details about load\-balancer +\- salt\-cloud \-f show_lb gce name=lb +# Add member to load\-balancer +\- salt\-cloud \-f attach_lb gce name=lb member=www1 +# Remove member from load\-balancer +\- salt\-cloud \-f detach_lb gce name=lb member=www1 .UNINDENT .INDENT 0.0 .INDENT 3.5 @@ -31700,11 +30670,6 @@ my\-gce\-config: # The location of the private key (PEM format) service_account_private_key: /home/erjohnso/PRIVKEY.pem provider: gce - # Specify whether to use public or private IP for deploy script. - # Valid options are: - # private_ips \- The salt\-master is also hosted with GCE - # public_ips \- The salt\-master is hosted outside of GCE - ssh_interface: public_ips .ft P .fi .UNINDENT @@ -31787,23 +30752,6 @@ Create a single GCE instance from a data dict. .UNINDENT .INDENT 0.0 .TP -.B salt.cloud.clouds.gce.create_address(kwargs=None, call=None) -Create a static address in a region. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-cloud \-f create_address gce name=my\-ip region=us\-central1 address=IP -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.cloud.clouds.gce.create_disk(kwargs=None, call=None) Create a new persistent disk. Must specify \fIdisk_name\fP and \fIlocation\fP\&. Can also specify an \fIimage\fP or \fIsnapshot\fP but if neither of those are @@ -31908,23 +30856,6 @@ salt\-cloud \-f create_snapshot gce name=snap1 disk_name=pd .UNINDENT .INDENT 0.0 .TP -.B salt.cloud.clouds.gce.delete_address(kwargs=None, call=None) -Permanently delete a static address. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-cloud \-f delete_address gce name=my\-ip -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.cloud.clouds.gce.delete_disk(kwargs=None, call=None) Permanently delete a persistent disk. .sp @@ -32131,23 +31062,6 @@ Return the script deployment object .UNINDENT .INDENT 0.0 .TP -.B salt.cloud.clouds.gce.show_address(kwargs=None, call=None) -Show the details of an existing static address. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-cloud \-f show_address gce name=mysnapshot region=us\-central1 -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.cloud.clouds.gce.show_disk(name=None, kwargs=None, call=None) Show the details of an existing disk. .sp @@ -32352,6 +31266,402 @@ Return the script deployment object .B salt.cloud.clouds.gogrid.show_instance(name, call=None) Show the details from the provider concerning an instance .UNINDENT +.SS salt.cloud.clouds.joyent +.SS Joyent Cloud Module +.sp +The Joyent Cloud module is used to interact with the Joyent cloud system. +.sp +Set up the cloud configuration at \fB/etc/salt/cloud.providers\fP or +\fB/etc/salt/cloud.providers.d/joyent.conf\fP: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +my\-joyent\-config: + # The Joyent login user + user: fred + # The Joyent user\(aqs password + password: saltybacon + # The location of the ssh private key that can log into the new VM + private_key: /root/joyent.pem + provider: joyent +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +When creating your profiles for the joyent cloud, add the location attribute to +the profile, this will automatically get picked up when performing tasks +associated with that vm. An example profile might look like: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +joyent_512: + provider: my\-joyent\-config + size: Extra Small 512 MB + image: centos\-6 + location: us\-east\-1 +.ft P +.fi +.UNINDENT +.UNINDENT +.INDENT 0.0 +.TP +.B depends +requests +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.avail_images(call=None) +get list of available images +.sp +CLI Example: +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +salt\-cloud \-\-list\-images +.ft P +.fi +.UNINDENT +.UNINDENT +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.avail_locations(call=None) +List all available locations +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.avail_sizes(call=None) +get list of available packages +.sp +CLI Example: +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +salt\-cloud \-\-list\-sizes +.ft P +.fi +.UNINDENT +.UNINDENT +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.create(vm_) +Create a single VM from a data dict +.sp +CLI Example: +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +salt\-cloud \-p profile_name vm_name +.ft P +.fi +.UNINDENT +.UNINDENT +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.create_node(**kwargs) +convenience function to make the rest api call for node creation. +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.delete_key(kwargs=None, call=None) +List the keys available +.sp +CLI Example: +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +salt\-cloud \-f delete_key joyent keyname=mykey +.ft P +.fi +.UNINDENT +.UNINDENT +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.destroy(name, call=None) +destroy a machine by name +.INDENT 7.0 +.TP +.B Parameters +.INDENT 7.0 +.IP \(bu 2 +\fBname\fP \-\- name given to the machine +.IP \(bu 2 +\fBcall\fP \-\- call value in this case is \(aqaction\(aq +.UNINDENT +.TP +.B Returns +array of booleans , true if successfully stopped and true if +successfully removed +.UNINDENT +.sp +CLI Example: +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +salt\-cloud \-d vm_name +.ft P +.fi +.UNINDENT +.UNINDENT +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.get_configured_provider() +Return the first configured instance. +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.get_image(vm_) +Return the image object to use +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.get_location(vm_=None) +.INDENT 7.0 +.TP +.B Return the joyent data center to use, in this order: +.INDENT 7.0 +.IP \(bu 2 +CLI parameter +.IP \(bu 2 +VM parameter +.IP \(bu 2 +Cloud profile setting +.UNINDENT +.UNINDENT +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.get_location_path(location=\(aqus\-east\-1\(aq) +create url from location variable +:param location: joyent data center location +:return: url +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.get_node(name) +gets the node from the full node list by name +:param name: name of the vm +:return: node object +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.get_size(vm_) +Return the VM\(aqs size object +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.has_method(obj, method_name) +Find if the provided object has a specific method +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.import_key(kwargs=None, call=None) +List the keys available +.sp +CLI Example: +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +salt\-cloud \-f import_key joyent keyname=mykey keyfile=/tmp/mykey.pub +.ft P +.fi +.UNINDENT +.UNINDENT +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.joyent_node_state(id_) +Convert joyent returned state to state common to other data center return +values for consistency +.INDENT 7.0 +.TP +.B Parameters +\fBid\fP \-\- joyent state value +.TP +.B Returns +libcloudfuncs state value +.UNINDENT +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.key_list(key=\(aqname\(aq, items=None) +convert list to dictionary using the key as the identifier +:param key: identifier \- must exist in the arrays elements own dictionary +:param items: array to iterate over +:return: dictionary +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.list_keys(kwargs=None, call=None) +List the keys available +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.list_nodes(full=False, call=None) +list of nodes, keeping only a brief listing +.sp +CLI Example: +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +salt\-cloud \-Q +.ft P +.fi +.UNINDENT +.UNINDENT +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.list_nodes_full(call=None) +list of nodes, maintaining all content provided from joyent listings +.sp +CLI Example: +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +salt\-cloud \-F +.ft P +.fi +.UNINDENT +.UNINDENT +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.list_nodes_select(call=None) +Return a list of the VMs that are on the provider, with select fields +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.query(action=None, command=None, args=None, method=\(aqGET\(aq, location=None, data=None) +Make a web call to Joyent +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.reboot(name, call=None) +reboot a machine by name +:param name: name given to the machine +:param call: call value in this case is \(aqaction\(aq +:return: true if successful +.sp +CLI Example: +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +salt\-cloud \-a reboot vm_name +.ft P +.fi +.UNINDENT +.UNINDENT +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.reformat_node(item=None, full=False) +Reformat the returned data from joyent, determine public/private IPs and +strip out fields if necessary to provide either full or brief content. +.INDENT 7.0 +.TP +.B Parameters +.INDENT 7.0 +.IP \(bu 2 +\fBitem\fP \-\- node dictionary +.IP \(bu 2 +\fBfull\fP \-\- full or brief output +.UNINDENT +.TP +.B Returns +dict +.UNINDENT +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.show_key(kwargs=None, call=None) +List the keys available +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.ssh_interface(vm_) +Return the ssh_interface type to connect to. Either \(aqpublic_ips\(aq (default) +or \(aqprivate_ips\(aq. +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.start(name, call=None) +start a machine by name +:param name: name given to the machine +:param call: call value in this case is \(aqaction\(aq +:return: true if successful +.sp +CLI Example: +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +salt\-cloud \-a start vm_name +.ft P +.fi +.UNINDENT +.UNINDENT +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.stop(name, call=None) +stop a machine by name +:param name: name given to the machine +:param call: call value in this case is \(aqaction\(aq +:return: true if successful +.sp +CLI Example: +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +salt\-cloud \-a stop vm_name +.ft P +.fi +.UNINDENT +.UNINDENT +.UNINDENT +.INDENT 0.0 +.TP +.B salt.cloud.clouds.joyent.take_action(name=None, call=None, command=None, data=None, method=\(aqGET\(aq, location=\(aqus\-east\-1\(aq) +take action call used by start,stop, reboot +:param name: name given to the machine +:param call: call value in this case is \(aqaction\(aq +:command: api path +:data: any data to be passed to the api, must be in json format +:method: GET,POST,or DELETE +:location: data center to execute the command on +:return: true if successful +.UNINDENT .SS salt.cloud.clouds.libcloud_aws .SS The AWS Cloud Module .sp @@ -32469,12 +31779,6 @@ Global salt\-cloud config .UNINDENT .INDENT 0.0 .TP -.B salt.cloud.clouds.libcloud_aws.get_salt_interface(vm_) -Return the salt_interface type to connect to. Either \(aqpublic_ips\(aq (default) -or \(aqprivate_ips\(aq. -.UNINDENT -.INDENT 0.0 -.TP .B salt.cloud.clouds.libcloud_aws.get_tags(name, call=None) Retrieve tags for a node .UNINDENT @@ -32891,11 +32195,6 @@ Create a single VM from a data dict .UNINDENT .INDENT 0.0 .TP -.B salt.cloud.clouds.msazure.create_attach_volumes(name, kwargs, call=None, wait_to_finish=True) -Create and attach volumes to created node -.UNINDENT -.INDENT 0.0 -.TP .B salt.cloud.clouds.msazure.destroy(name, conn=None, call=None, kwargs=None) Destroy a VM .sp @@ -32962,11 +32261,6 @@ Return the script deployment object .B salt.cloud.clouds.msazure.show_instance(name, call=None) Show the details from the provider concerning an instance .UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.msazure.show_service(kwargs=None, conn=None, call=None) -Show the details from the provider concerning an instance -.UNINDENT .SS salt.cloud.clouds.nova .SS OpenStack Nova Cloud Module .sp @@ -33063,20 +32357,10 @@ my\-api: os_auth_plugin: rackspace tenant: provider: nova - networks: - \- net\-id: 47a38ff2\-fe21\-4800\-8604\-42bd1848e743 - \- net\-id: 00000000\-0000\-0000\-0000\-000000000000 - \- net\-id: 11111111\-1111\-1111\-1111\-111111111111 .ft P .fi .UNINDENT .UNINDENT -.sp -Note: You must include the default net\-ids when setting networks or the server -will be created without the rest of the interfaces -.sp -Note: For rackconnect v3, rackconnectv3 needs to be specified with the -rackconnect v3 cloud network as it\(aqs variable .INDENT 0.0 .TP .B salt.cloud.clouds.nova.avail_images() @@ -33119,12 +32403,6 @@ Return the image object to use .UNINDENT .INDENT 0.0 .TP -.B salt.cloud.clouds.nova.get_salt_interface(vm_) -Return the salt_interface type to connect to. Either \(aqpublic_ips\(aq (default) -or \(aqprivate_ips\(aq. -.UNINDENT -.INDENT 0.0 -.TP .B salt.cloud.clouds.nova.get_size(conn, vm_) Return the VM\(aqs size object .UNINDENT @@ -33550,12 +32828,6 @@ Return a libcloud node for the named VM .UNINDENT .INDENT 0.0 .TP -.B salt.cloud.clouds.openstack.get_salt_interface(vm_) -Return the salt_interface type to connect to. Either \(aqpublic_ips\(aq (default) -or \(aqprivate_ips\(aq. -.UNINDENT -.INDENT 0.0 -.TP .B salt.cloud.clouds.openstack.get_size(conn, vm_) Return the VM\(aqs size object .UNINDENT @@ -34062,41 +33334,8 @@ Wait until a the vm has been created successfully .UNINDENT .INDENT 0.0 .TP -.B salt.cloud.clouds.proxmox.wait_for_state(vmid, state, timeout=300) -Wait until a specific state has been reached on a node -.UNINDENT -.SS salt.cloud.clouds.pyrax -.SS Pyrax Cloud Module -.sp -PLEASE NOTE: This module is currently in early development, and considered to -be experimental and unstable. It is not recommended for production use. Unless -you are actively developing code in this module, you should use the OpenStack -module instead. -.INDENT 0.0 -.TP -.B salt.cloud.clouds.pyrax.get_configured_provider() -Return the first configured instance. -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.pyrax.get_conn(conn_type) -Return a conn object for the passed VM data -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.pyrax.queues_create(call, kwargs) -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.pyrax.queues_delete(call, kwargs) -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.pyrax.queues_exists(call, kwargs) -.UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.pyrax.queues_show(call, kwargs) +.B salt.cloud.clouds.proxmox.wait_for_state(vmid, node, nodeType, state, timeout=300) +Wait until a specific state has been reached on a node .UNINDENT .SS salt.cloud.clouds.rackspace .SS Rackspace Cloud Module @@ -34182,12 +33421,6 @@ Return the image object to use .UNINDENT .INDENT 0.0 .TP -.B salt.cloud.clouds.rackspace.get_salt_interface(vm_) -Return the salt_interface type to connect to. Either \(aqpublic_ips\(aq (default) -or \(aqprivate_ips\(aq. -.UNINDENT -.INDENT 0.0 -.TP .B salt.cloud.clouds.rackspace.get_size(conn, vm_) Return the VM\(aqs size object .UNINDENT @@ -34543,19 +33776,6 @@ PySphere Python module .UNINDENT .UNINDENT .sp -Note: Ensure python pysphere module is installed by running following one\-liner -check. The output should be 0. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -python \-c "import pysphere" ; echo $? -.ft P -.fi -.UNINDENT -.UNINDENT -.sp Use of this module only requires a URL, username and password. Set up the cloud configuration at: .sp @@ -34574,23 +33794,6 @@ my\-vsphere\-config: .fi .UNINDENT .UNINDENT -.sp -Note: Your URL may or may not look like any of the following, depending on how -your VMWare installation is configured: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -10.1.1.1 -10.1.1.1:443 -https://10.1.1.1:443 -https://10.1.1.1:443/sdk -10.1.1.1:443/sdk -.ft P -.fi -.UNINDENT -.UNINDENT .INDENT 0.0 .TP .B folder: Name of the folder that will contain the new VM. If not set, the VM will @@ -34694,17 +33897,17 @@ List the hosts for this VMware environment .UNINDENT .INDENT 0.0 .TP -.B salt.cloud.clouds.vsphere.list_nodes(kwargs=None, call=None) -Return a list of the VMs that are on the provider, with basic fields +.B salt.cloud.clouds.vsphere.list_nodes() +Return a list of the VMs that are on the provider .UNINDENT .INDENT 0.0 .TP -.B salt.cloud.clouds.vsphere.list_nodes_full(kwargs=None, call=None) -Return a list of the VMs that are on the provider with full details +.B salt.cloud.clouds.vsphere.list_nodes_full() +Return a list of the VMs that are on the provider .UNINDENT .INDENT 0.0 .TP -.B salt.cloud.clouds.vsphere.list_nodes_min(kwargs=None, call=None) +.B salt.cloud.clouds.vsphere.list_nodes_min() Return a list of the nodes in the provider, with no details .UNINDENT .INDENT 0.0 @@ -34727,10 +33930,6 @@ Return the script deployment object .B salt.cloud.clouds.vsphere.show_instance(name, call=None) Show the details from vSphere concerning a guest .UNINDENT -.INDENT 0.0 -.TP -.B salt.cloud.clouds.vsphere.wait_for_ip(vm_) -.UNINDENT .SS Configuration file examples .INDENT 0.0 .IP \(bu 2 @@ -34838,9 +34037,6 @@ Show the details from vSphere concerning a guest # Set the default outputter used by the salt command. The default is "nested". #output: nested -# Return minions that timeout when running commands like test.ping -#show_timeout: True - # By default, output is colored. To disable colored output, set the color value # to False. #color: True @@ -34866,29 +34062,6 @@ Show the details from vSphere concerning a guest # Cache minion grains and pillar data in the cachedir. #minion_data_cache: True -# Store all returns in the given returner. -# Setting this option requires that any returner\-specific configuration also -# be set. See various returners in salt/returners for details on required -# configuration values. (See also, event_return_queue below.) -# -#event_return: mysql - -# On busy systems, enabling event_returns can cause a considerable load on -# the storage system for returners. Events can be queued on the master and -# stored in a batched fashion using a single transaction for multiple events. -# By default, events are not queued. -#event_return_queue: 0 - -# Only events returns matching tags in a whitelist -# event_return_whitelist: -# \- salt/master/a_tag -# \- salt/master/another_tag - -# Store all event returns _except_ the tags in a blacklist -# event_return_blacklist: -# \- salt/master/not_this_tag -# \- salt/master/or_this_one - # Passing very large events can cause the minion to consume large amounts of # memory. This value tunes the maximum size of a message allowed onto the # master event bus. The value is expressed in bytes. @@ -34933,11 +34106,11 @@ Show the details from vSphere concerning a guest # option, then the master will log a warning message. # # Include a config file from some other path: -# include: /etc/salt/extra_config +#include: /etc/salt/extra_config # # Include config from several files and directories: -# include: -# \- /etc/salt/extra_config +#include: +# \- /etc/salt/extra_config ##### Security settings ##### @@ -34952,7 +34125,7 @@ Show the details from vSphere concerning a guest # public keys from the minions. Note that this is insecure. #auto_accept: False -# Time in minutes that a incoming public key with a matching name found in +# Time in minutes that a incomming public key with a matching name found in # pki_dir/minion_autosign/keyid is automatically accepted. Expired autosign keys # are removed when the master checks the minion_autosign directory. # 0 equals no timeout @@ -34998,11 +34171,6 @@ Show the details from vSphere concerning a guest # modules: # \- cmd -# Enforce client_acl & client_acl_blacklist when users have sudo -# access to the salt command. -# -#sudo_acl: False - # The external auth system uses the Salt auth modules to authenticate and # validate users to access areas of the Salt system. #external_auth: @@ -35256,11 +34424,6 @@ Show the details from vSphere concerning a guest # \- hiera: /etc/hiera.yaml # \- cmd_yaml: cat /etc/salt/yaml -# The ext_pillar_first option allows for external pillar sources to populate -# before file system pillar. This allows for targeting file system pillar from -# ext_pillar. -#ext_pillar_first: False - # The pillar_gitfs_ssl_verify option specifies whether to ignore ssl certificate # errors when contacting the pillar gitfs backend. You might want to set this to # false if you\(aqre using a git backend that uses a self\-signed certificate but @@ -35271,14 +34434,7 @@ Show the details from vSphere concerning a guest # The pillar_opts option adds the master configuration file data to a dict in # the pillar called "master". This is used to set simple configurations in the # master config file that can then be used on minions. -#pillar_opts: False - -# The pillar_safe_render_error option prevents the master from passing piller -# render errors to the minion. This is set on by default because the error could -# contain templating data which would give that minion information it shouldn\(aqt -# have, like a password! When set true the error message will only show: -# Rendering SLS \(aqmy.sls\(aq failed. Please see master log for details. -#pillar_safe_render_error: True +#pillar_opts: True # The pillar_source_merging_strategy option allows you to configure merging strategy # between different sources. It accepts four values: recurse, aggregate, overwrite, @@ -35449,11 +34605,7 @@ Show the details from vSphere concerning a guest # List of git repositories to include with the local repo: #win_gitrepos: # \- \(aqhttps://github.com/saltstack/salt\-winrepo.git\(aq - -##### Returner settings ###### -############################################ -# Which returner(s) will be used for minion\(aqs result: -#return: mysql +# .ft P .fi @@ -35605,12 +34757,15 @@ Show the details from vSphere concerning a guest # Number of consecutive SaltReqTimeoutError that are acceptable when trying to # authenticate. -#auth_tries: 7 +#auth_tries: 1 -# If authentication fails due to SaltReqTimeoutError during a ping_interval, -# cause sub minion process to restart. +# If authentication fails due to SaltReqTimeoutError, continue without stopping the +# minion. #auth_safemode: False +# If the minion hits an error that is recoverable, restart the minion. +#restart_on_error: False + # Ping Master to ensure connection is alive (minutes). #ping_interval: 0 @@ -35618,6 +34773,7 @@ Show the details from vSphere concerning a guest # auth_tries: 10 # auth_safemode: False # ping_interval: 90 +# restart_on_error: True # # Minions won\(aqt know master is missing until a ping fails. After the ping fail, # the minion will attempt authentication and likely fails out and cause a restart. @@ -35711,6 +34867,11 @@ Show the details from vSphere concerning a guest # is not enabled. # grains_cache_expiration: 300 +# When healing, a dns_check is run. This is to make sure that the originally +# resolved dns has not changed. If this is something that does not happen in +# your environment, set this value to False. +#dns_check: True + # Windows platforms lack posix IPC and must rely on slower TCP based inter\- # process communications. Set ipc_mode to \(aqtcp\(aq on such systems #ipc_mode: ipc @@ -35724,12 +34885,6 @@ Show the details from vSphere concerning a guest # minion event bus. The value is expressed in bytes. #max_event_size: 1048576 -# To detect failed master(s) and fire events on connect/disconnect, set -# master_alive_interval to the number of seconds to poll the masters for -# connection events. -# -#master_alive_interval: 30 - # The minion can include configuration from other files. To enable this, # pass a list of paths to this option. The paths can be either relative or # absolute; if relative, they are considered to be relative to the directory @@ -35985,24 +35140,6 @@ Show the details from vSphere concerning a guest # #log_granular_levels: {} -# To diagnose issues with minions disconnecting or missing returns, ZeroMQ -# supports the use of monitor sockets # to log connection events. This -# feature requires ZeroMQ 4.0 or higher. -# -# To enable ZeroMQ monitor sockets, set \(aqzmq_monitor\(aq to \(aqTrue\(aq and log at a -# debug level or higher. -# -# A sample log event is as follows: -# -# [DEBUG ] ZeroMQ event: {\(aqendpoint\(aq: \(aqtcp://127.0.0.1:4505\(aq, \(aqevent\(aq: 512, -# \(aqvalue\(aq: 27, \(aqdescription\(aq: \(aqEVENT_DISCONNECTED\(aq} -# -# All events logged will include the string \(aqZeroMQ event\(aq. A connection event -# should be logged on the as the minion starts up and initially connects to the -# master. If not, check for debug log level and that the necessary version of -# ZeroMQ is installed. -# -#zmq_monitor: False ###### Module configuration ##### ########################################### @@ -36070,12 +35207,8 @@ Show the details from vSphere concerning a guest ############################################ # Location of the repository cache file on the master: #win_repo_cachefile: \(aqsalt://win/repo/winrepo.p\(aq - - -###### Returner settings ###### -############################################ -# Which returner(s) will be used for minion\(aqs result: -#return: mysql +# +# .ft P .fi @@ -36089,7 +35222,7 @@ setting up a \fIminion\fP is to set the location of the master in the minion configuration file. .sp The configuration files will be installed to \fB/etc/salt\fP and are named -after the respective components, \fB/etc/salt/master\fP, and +after the respective components, \fB/etc/salt/master\fP and \fB/etc/salt/minion\fP\&. .SS Master Configuration .sp @@ -36194,7 +35327,7 @@ document\fP\&. To run Salt as another user, set the \fBuser\fP parameter in the master config file. .sp -Additionally, ownership, and permissions need to be set such that the +Additionally, ownership and permissions need to be set such that the desired user can read from and write to the following directories (and their subdirectories, where applicable): .INDENT 0.0 @@ -36371,7 +35504,7 @@ ipv6: True .sp Default: \fB4505\fP .sp -The network port to set up the publication interface. +The network port to set up the publication interface .INDENT 0.0 .INDENT 3.5 .sp @@ -36387,14 +35520,8 @@ publish_port: 4505 Default: \fBNone\fP .sp The id to be passed in the publish job to minions. This is used for MultiSyndics -to return the job to the requesting master. -.sp -\fBNOTE:\fP -.INDENT 0.0 -.INDENT 3.5 -This must be the same string as the syndic is configured with. -.UNINDENT -.UNINDENT +to return the job to the requesting master. Note, this must be the same string +as the syndic is configured with. .INDENT 0.0 .INDENT 3.5 .sp @@ -36452,7 +35579,7 @@ max_open_files: 100000 By default this value will be the one of \fIulimit \-Hn\fP, i.e., the hard limit for max open files. .sp -To set a different value than the default one, uncomment, and configure this +To set a different value than the default one, uncomment and configure this setting. Remember that this value CANNOT be higher than the hard limit. Raising the hard limit depends on the OS and/or distribution, a good way to find the limit is to search the internet for something like this: @@ -36476,18 +35603,6 @@ worker_threads value. .sp Worker threads should not be put below 3 when using the peer system, but can drop down to 1 worker otherwise. -.sp -\fBNOTE:\fP -.INDENT 0.0 -.INDENT 3.5 -When the master daemon starts, it is expected behaviour to see -multiple salt\-master processes, even if \(aqworker_threads\(aq is set to \(aq1\(aq. At -a minimum, a controlling process will start along with a Publisher, an -EventPublisher, and a number of MWorker processes will be started. The -number of MWorker processes is tuneable by the \(aqworker_threads\(aq -configuration value while the others are not. -.UNINDENT -.UNINDENT .INDENT 0.0 .INDENT 3.5 .sp @@ -36518,7 +35633,7 @@ ret_port: 4506 .sp Default: \fB/var/run/salt\-master.pid\fP .sp -Specify the location of the master pidfile. +Specify the location of the master pidfile .INDENT 0.0 .INDENT 3.5 .sp @@ -36620,7 +35735,7 @@ verify_env: True .sp Default: \fB24\fP .sp -Set the number of hours to keep old job information. +Set the number of hours to keep old job information .SS \fBtimeout\fP .sp Default: \fB5\fP @@ -36643,7 +35758,7 @@ Set the default outputter used by the salt command. Default: \fBTrue\fP .sp By default output is colored, to disable colored output set the color value -to False. +to False .INDENT 0.0 .INDENT 3.5 .sp @@ -36659,7 +35774,7 @@ color: False Default: \fB/var/run/salt/master\fP .sp Set the location to use for creating Unix sockets for master process -communication. +communication .INDENT 0.0 .INDENT 3.5 .sp @@ -36686,15 +35801,15 @@ a burden on the master for larger deployments (over 5000 minions). Disabling the job cache will make previously executed jobs unavailable to the jobs system and is not generally recommended. Normally it is wise to make sure the master has access to a faster IO system or a tmpfs is mounted to the -jobs dir. +jobs dir .SS \fBminion_data_cache\fP .sp Default: \fBTrue\fP .sp The minion data cache is a cache of information about the minions stored on the master, this information is primarily the pillar and grains data. The data is -cached in the Master cachedir under the name of the minion and used to -predetermine what minions are expected to reply from executions. +cached in the Master cachedir under the name of the minion and used to pre +determine what minions are expected to reply from executions. .INDENT 0.0 .INDENT 3.5 .sp @@ -36712,7 +35827,7 @@ Default: \fB\(aq\(aq\fP Used to specify a default returner for all minions, when this option is set the specified returner needs to be properly configured and the minions will always default to sending returns to this returner. This will also disable the -local job cache on the master. +local job cache on the master .INDENT 0.0 .INDENT 3.5 .sp @@ -36730,9 +35845,9 @@ New in version 2014.7. .sp Default: \(aqlocal_cache\(aq .sp -Specify the returner to use for the job cache. The job cache will only be +Specify the returner to use for ther job cache. The job cache will only be interacted with from the salt master and therefore does not need to be -accessible from the minions. +accesible from the minions. .INDENT 0.0 .INDENT 3.5 .sp @@ -36778,25 +35893,6 @@ max_minions: 100 .fi .UNINDENT .UNINDENT -.SS \fBcon_cache\fP -.sp -Default: False -.sp -If max_minions is used in large installations, the master might experience -high\-load situations because of having to check the number of connected -minions for every authentication. This cache provides the minion\-ids of -all connected minions to all MWorker\-processes and greatly improves the -performance of max_minions. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -con_cache: True -.ft P -.fi -.UNINDENT -.UNINDENT .SS \fBpresence_events\fP .sp Default: False @@ -36821,7 +35917,7 @@ presence_events: False .sp Default: \(aq/etc/salt/roster\(aq .sp -Pass in an alternative location for the salt\-ssh roster file. +Pass in an alternative location for the salt\-ssh roster file .INDENT 0.0 .INDENT 3.5 .sp @@ -36909,7 +36005,7 @@ membership in the \fI\%autosign_file\fP and the Default: \fB{}\fP .sp Enable user accounts on the master to execute specific modules. These modules -can be expressed as regular expressions. +can be expressed as regular expressions .INDENT 0.0 .INDENT 3.5 .sp @@ -36972,9 +36068,7 @@ external_auth: .sp Default: \fB43200\fP .sp -Time (in seconds) for a newly generated token to live. -.sp -Default: 12 hours +Time (in seconds) for a newly generated token to live. Default: 12 hours .INDENT 0.0 .INDENT 3.5 .sp @@ -37005,7 +36099,7 @@ file_recv: False .sp Default: \fBFalse\fP .sp -Sign the master auth\-replies with a cryptographic signature of the masters +Sign the master auth\-replies with a cryptographical signature of the masters public key. Please see the tutorial how to use these settings in the \fI\%Multimaster\-PKI with Failover Tutorial\fP .INDENT 0.0 @@ -37088,13 +36182,13 @@ rotate_aes_key: True .sp Default: \fB[]\fP .sp -Set additional directories to search for runner modules. +Set additional directories to search for runner modules .SS \fBcython_enable\fP .sp Default: \fBFalse\fP .sp Set to true to enable Cython modules (.pyx files) to be compiled on the fly on -the Salt master. +the Salt master .INDENT 0.0 .INDENT 3.5 .sp @@ -37112,7 +36206,7 @@ Default: \fBtop.sls\fP .sp The state system uses a "top" file to tell the minions what environment to use and what modules to use. The state_top file is defined relative to the -root of the base environment. +root of the base environment .INDENT 0.0 .INDENT 3.5 .sp @@ -37166,7 +36260,7 @@ external_nodes: cobbler\-ext\-nodes .sp Default: \fByaml_jinja\fP .sp -The renderer to use on the minions to render the state data. +The renderer to use on the minions to render the state data .INDENT 0.0 .INDENT 3.5 .sp @@ -37182,7 +36276,7 @@ renderer: yaml_jinja Default: \fBFalse\fP .sp Set the global failhard flag, this informs all states to stop running states -at the moment a single state fails. +at the moment a single state fails .INDENT 0.0 .INDENT 3.5 .sp @@ -37234,7 +36328,7 @@ state_output: full .sp Default: \fBFalse\fP .sp -Enable extra routines for YAML renderer used states containing UTF characters. +Enable extra routines for yaml renderer used states containing UTF characters .INDENT 0.0 .INDENT 3.5 .sp @@ -37250,7 +36344,7 @@ yaml_utf8: False Default: \fBFalse\fP .sp Set all state calls to only test if they are going to actually make changes -or just post what changes are going to be made. +or just post what changes are going to be made .INDENT 0.0 .INDENT 3.5 .sp @@ -37291,8 +36385,8 @@ fileserver_backend: Default: \fBmd5\fP .sp The hash_type is the hash to use when discovering the hash of a file on -the master server. The default is md5, but sha1, sha224, sha256, sha384, and -sha512 are also supported. +the master server. The default is md5, but sha1, sha224, sha256, sha384 +and sha512 are also supported. .INDENT 0.0 .INDENT 3.5 .sp @@ -37307,7 +36401,7 @@ hash_type: md5 .sp Default: \fB1048576\fP .sp -The buffer size in the file server in bytes. +The buffer size in the file server in bytes .INDENT 0.0 .INDENT 3.5 .sp @@ -37385,7 +36479,6 @@ The file server works on environments passed to the master. Each environment can have multiple root directories. The subdirectories in the multiple file roots cannot match, otherwise the downloaded files will not be able to be reliably ensured. A base environment is required to house the top file. -.sp Example: .INDENT 0.0 .INDENT 3.5 @@ -38346,35 +37439,12 @@ ext_pillar: .UNINDENT .sp There are additional details at \fIsalt\-pillars\fP -.SS \fBext_pillar_first\fP -.sp -New in version 2015.2.0. - -.sp -The ext_pillar_first option allows for external pillar sources to populate -before file system pillar. This allows for targeting file system pillar from -ext_pillar. -.sp -Default: \fBFalse\fP -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -ext_pillar_first: False -.ft P -.fi -.UNINDENT -.UNINDENT .SS \fBpillar_source_merging_strategy\fP -.sp -New in version 2014.7.0. - .sp Default: \fBsmart\fP .sp -The pillar_source_merging_strategy option allows you to configure merging -strategy between different sources. It accepts 4 values: +The pillar_source_merging_strategy option allows to configure merging strategy +between different sources. It accepts 4 values: .INDENT 0.0 .IP \(bu 2 recurse: @@ -38530,13 +37600,11 @@ Guesses the best strategy based on the "renderer" setting. .sp A Salt syndic is a Salt master used to pass commands from a higher Salt master to minions below the syndic. Using the syndic is simple. If this is a master that -will have syndic servers(s) below it, set the "order_masters" setting to True. +will have syndic servers(s) below it, set the "order_masters" setting to True. If this +is a master that will be running a syndic daemon for passthrough the +"syndic_master" setting needs to be set to the location of the master server .sp -If this is a master that will be running a syndic daemon for passthrough the -"syndic_master" setting needs to be set to the location of the master server. -.sp -Do not not forget that, in other words, it means that it shares with the local minion -its ID and PKI_DIR. +Do not not forget that in other word it means that it shares with the local minion it\(aqs ID and PKI_DIR. .SS \fBorder_masters\fP .sp Default: \fBFalse\fP @@ -38559,7 +37627,7 @@ order_masters: False Default: \fBNone\fP .sp If this master will be running a salt\-syndic to connect to a higher level -master, specify the higher level master with this configuration value. +master, specify the higher level master with this configuration value .INDENT 0.0 .INDENT 3.5 .sp @@ -38575,7 +37643,7 @@ syndic_master: masterofmasters Default: \fB4506\fP .sp If this master will be running a salt\-syndic to connect to a higher level -master, specify the higher level master port with this configuration value. +master, specify the higher level master port with this configuration value .INDENT 0.0 .INDENT 3.5 .sp @@ -38631,7 +37699,7 @@ Default: \fB{}\fP The configuration uses regular expressions to match minions and then a list of regular expressions to match functions. The following will allow the minion authenticated as foo.example.com to execute functions from the test -and pkg modules. +and pkg modules .INDENT 0.0 .INDENT 3.5 .sp @@ -38949,7 +38017,7 @@ win_repo_mastercachefile: \(aq/srv/salt/win/repo/winrepo.p\(aq .sp Default: \fB\(aq\(aq\fP .sp -List of git repositories to include with the local repo. +List of git repositories to include with the local repo .INDENT 0.0 .INDENT 3.5 .sp @@ -39460,23 +38528,6 @@ dns_check: True .fi .UNINDENT .UNINDENT -.SS \fBcache_sreqs\fP -.sp -Default: \fBTrue\fP -.sp -The connection to the master ret_port is kept open. When set to False, the minion -creates a new connection for every return to the master. -environment, set this value to \fBFalse\fP\&. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -cache_sreqs: True -.ft P -.fi -.UNINDENT -.UNINDENT .SS \fBipc_mode\fP .sp Default: \fBipc\fP @@ -39797,22 +38848,6 @@ file_client: remote .fi .UNINDENT .UNINDENT -.SS \fBuse_master_when_local\fP -.sp -Default: \fBFalse\fP -.sp -When using a local \fI\%file_client\fP, this parameter is used to allow -the client to connect to a master for remote execution. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -use_master_when_local: False -.ft P -.fi -.UNINDENT -.UNINDENT .SS \fBfile_roots\fP .sp Default: @@ -39854,7 +38889,7 @@ file_roots: Default: \fBmd5\fP .sp The hash_type is the hash to use when discovering the hash of a file on the -local fileserver. The default is md5, but sha1, sha224, sha256, sha384, and +local fileserver. The default is md5, but sha1, sha224, sha256, sha384 and sha512 are also supported. .INDENT 0.0 .INDENT 3.5 @@ -40257,7 +39292,7 @@ minion as an unprivileged user will keep it from making changes to things like users, installed packages, etc. unless access controls (sudo, etc.) are setup on the minion to permit the non\-root user to make the needed changes. .sp -In order to allow Salt to successfully run as a non\-root user, ownership, and +In order to allow Salt to successfully run as a non\-root user, ownership and permissions need to be set such that the desired user can read from and write to the following directories (and their subdirectories, where applicable): .INDENT 0.0 @@ -41016,7 +40051,7 @@ option to local to make sure that the local file server interface is used. .SS The cp Module .sp The cp module is the home of minion side file server operations. The cp module -is used by the Salt state system, salt\-cp, and can be used to distribute files +is used by the Salt state system, salt\-cp and can be used to distribute files presented by the Salt file server. .SS Environments .sp @@ -41885,13 +40920,13 @@ Reference documentation on Salt\(aqs internal code. .SS salt.serializers .SS salt.utils.aggregation .sp -This library makes it possible to introspect dataset and aggregate nodes -when it is instructed. +This library allows to introspect dataset and aggregate nodes when it is +instructed. .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 -The following examples with be expressed in YAML for convenience\(aqs sake: +The following examples with be expressed in YAML for convenience sake: .INDENT 0.0 .IP \(bu 2 !aggr\-scalar will refer to Scalar python function @@ -41904,7 +40939,7 @@ The following examples with be expressed in YAML for convenience\(aqs sake: .UNINDENT .SS How to instructs merging .sp -This yaml document has duplicate keys: +This yaml document have duplicate keys: .INDENT 0.0 .INDENT 3.5 .sp @@ -41920,7 +40955,7 @@ baz: !aggr\-scalar 42 .UNINDENT .UNINDENT .sp -but tagged values instruct Salt that overlapping values they can be merged +but tagged values instruct salt that overlapping values they can be merged together: .INDENT 0.0 .INDENT 3.5 @@ -41936,7 +40971,7 @@ baz: !aggr\-seq [42] .UNINDENT .SS Default merge strategy is keep untouched .sp -For example, this yaml document still has duplicate keys, but does not +For example, this yaml document have still duplicate keys, but does not instruct aggregation: .INDENT 0.0 .INDENT 3.5 @@ -42073,38 +41108,38 @@ _ This module is a central location for all salt exceptions .INDENT 0.0 .TP -.B exception salt.exceptions.AuthenticationError(message=\(aq\(aq) +.B exception salt.exceptions.AuthenticationError If sha256 signature fails during decryption .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.AuthorizationError(message=\(aq\(aq) +.B exception salt.exceptions.AuthorizationError Thrown when runner or wheel execution fails due to permissions .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.CommandExecutionError(message=\(aq\(aq) +.B exception salt.exceptions.CommandExecutionError Used when a module runs a command which returns an error and wants to show the user the output gracefully instead of dying .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.CommandNotFoundError(message=\(aq\(aq) +.B exception salt.exceptions.CommandNotFoundError Used in modules or grains when a required binary is not available .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.EauthAuthenticationError(message=\(aq\(aq) +.B exception salt.exceptions.EauthAuthenticationError Thrown when eauth authentication fails .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.FileserverConfigError(message=\(aq\(aq) +.B exception salt.exceptions.FileserverConfigError Used when invalid fileserver settings are detected .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.LoaderError(message=\(aq\(aq) +.B exception salt.exceptions.LoaderError Problems loading the right renderer .UNINDENT .INDENT 0.0 @@ -42114,23 +41149,18 @@ Rise when the master exits .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.MinionError(message=\(aq\(aq) +.B exception salt.exceptions.MinionError Minion problems reading uris such as salt:// or http:// .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.PkgParseError(message=\(aq\(aq) +.B exception salt.exceptions.PkgParseError Used when of the pkg modules cannot correctly parse the output from the CLI tool (pacman, yum, apt, aptitude, etc) .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.PublishError(message=\(aq\(aq) -Problems encountered when trying to publish a command -.UNINDENT -.INDENT 0.0 -.TP -.B exception salt.exceptions.SaltClientError(message=\(aq\(aq) +.B exception salt.exceptions.SaltClientError Problem reading the master root key .UNINDENT .INDENT 0.0 @@ -42142,32 +41172,32 @@ Takes the \fBjid\fP as a parameter .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltCloudConfigError(message=\(aq\(aq) +.B exception salt.exceptions.SaltCloudConfigError Raised when a configuration setting is not found and should exist. .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltCloudException(message=\(aq\(aq) +.B exception salt.exceptions.SaltCloudException Generic Salt Cloud Exception .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltCloudExecutionFailure(message=\(aq\(aq) +.B exception salt.exceptions.SaltCloudExecutionFailure Raised when too much failures have occurred while querying/waiting for data. .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltCloudExecutionTimeout(message=\(aq\(aq) +.B exception salt.exceptions.SaltCloudExecutionTimeout Raised when too much time has passed while querying/waiting for data. .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltCloudNotFound(message=\(aq\(aq) +.B exception salt.exceptions.SaltCloudNotFound Raised when some cloud provider function cannot find what\(aqs being searched. .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltCloudPasswordError(message=\(aq\(aq) +.B exception salt.exceptions.SaltCloudPasswordError Raise when virtual terminal password input failed .UNINDENT .INDENT 0.0 @@ -42177,46 +41207,40 @@ This exception is raised when the execution should be stopped. .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltException(message=\(aq\(aq) +.B exception salt.exceptions.SaltException Base exception class; all Salt\-specific exceptions should subclass this -.INDENT 7.0 -.TP -.B pack() -Pack this exception into a serializable dictionary that is safe for -transport via msgpack -.UNINDENT .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltInvocationError(message=\(aq\(aq) +.B exception salt.exceptions.SaltInvocationError Used when the wrong number of arguments are sent to modules or invalid arguments are specified on the command line .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltMasterError(message=\(aq\(aq) +.B exception salt.exceptions.SaltMasterError Problem reading the master root key .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltRenderError(message, line_num=None, buf=\(aq\(aq, marker=\(aq <======================\(aq, trace=None) +.B exception salt.exceptions.SaltRenderError(error, line_num=None, buf=\(aq\(aq, marker=\(aq <======================\(aq, trace=None) Used when a renderer needs to raise an explicit error. If a line number and buffer string are passed, get_context will be invoked to get the location of the error. .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltReqTimeoutError(message=\(aq\(aq) +.B exception salt.exceptions.SaltReqTimeoutError Thrown when a salt master request call fails to return within the timeout .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltRunnerError(message=\(aq\(aq) +.B exception salt.exceptions.SaltRunnerError Problem in runner .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltSyndicMasterError(message=\(aq\(aq) +.B exception salt.exceptions.SaltSyndicMasterError Problem while proxying a request in the syndication master .UNINDENT .INDENT 0.0 @@ -42227,18 +41251,18 @@ nothing else to do, salt should just exit. .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltWheelError(message=\(aq\(aq) +.B exception salt.exceptions.SaltWheelError Problem in wheel .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.TimedProcTimeoutError(message=\(aq\(aq) +.B exception salt.exceptions.TimedProcTimeoutError Thrown when a timed subprocess does not terminate within the timeout, or if the specified timeout is not an int or a float .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.TokenAuthenticationError(message=\(aq\(aq) +.B exception salt.exceptions.TokenAuthenticationError Thrown when token authentication fails .UNINDENT .SS salt.exceptions @@ -42246,38 +41270,38 @@ Thrown when token authentication fails This module is a central location for all salt exceptions .INDENT 0.0 .TP -.B exception salt.exceptions.AuthenticationError(message=\(aq\(aq) +.B exception salt.exceptions.AuthenticationError If sha256 signature fails during decryption .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.AuthorizationError(message=\(aq\(aq) +.B exception salt.exceptions.AuthorizationError Thrown when runner or wheel execution fails due to permissions .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.CommandExecutionError(message=\(aq\(aq) +.B exception salt.exceptions.CommandExecutionError Used when a module runs a command which returns an error and wants to show the user the output gracefully instead of dying .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.CommandNotFoundError(message=\(aq\(aq) +.B exception salt.exceptions.CommandNotFoundError Used in modules or grains when a required binary is not available .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.EauthAuthenticationError(message=\(aq\(aq) +.B exception salt.exceptions.EauthAuthenticationError Thrown when eauth authentication fails .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.FileserverConfigError(message=\(aq\(aq) +.B exception salt.exceptions.FileserverConfigError Used when invalid fileserver settings are detected .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.LoaderError(message=\(aq\(aq) +.B exception salt.exceptions.LoaderError Problems loading the right renderer .UNINDENT .INDENT 0.0 @@ -42287,23 +41311,18 @@ Rise when the master exits .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.MinionError(message=\(aq\(aq) +.B exception salt.exceptions.MinionError Minion problems reading uris such as salt:// or http:// .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.PkgParseError(message=\(aq\(aq) +.B exception salt.exceptions.PkgParseError Used when of the pkg modules cannot correctly parse the output from the CLI tool (pacman, yum, apt, aptitude, etc) .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.PublishError(message=\(aq\(aq) -Problems encountered when trying to publish a command -.UNINDENT -.INDENT 0.0 -.TP -.B exception salt.exceptions.SaltClientError(message=\(aq\(aq) +.B exception salt.exceptions.SaltClientError Problem reading the master root key .UNINDENT .INDENT 0.0 @@ -42315,32 +41334,32 @@ Takes the \fBjid\fP as a parameter .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltCloudConfigError(message=\(aq\(aq) +.B exception salt.exceptions.SaltCloudConfigError Raised when a configuration setting is not found and should exist. .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltCloudException(message=\(aq\(aq) +.B exception salt.exceptions.SaltCloudException Generic Salt Cloud Exception .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltCloudExecutionFailure(message=\(aq\(aq) +.B exception salt.exceptions.SaltCloudExecutionFailure Raised when too much failures have occurred while querying/waiting for data. .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltCloudExecutionTimeout(message=\(aq\(aq) +.B exception salt.exceptions.SaltCloudExecutionTimeout Raised when too much time has passed while querying/waiting for data. .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltCloudNotFound(message=\(aq\(aq) +.B exception salt.exceptions.SaltCloudNotFound Raised when some cloud provider function cannot find what\(aqs being searched. .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltCloudPasswordError(message=\(aq\(aq) +.B exception salt.exceptions.SaltCloudPasswordError Raise when virtual terminal password input failed .UNINDENT .INDENT 0.0 @@ -42350,46 +41369,40 @@ This exception is raised when the execution should be stopped. .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltException(message=\(aq\(aq) +.B exception salt.exceptions.SaltException Base exception class; all Salt\-specific exceptions should subclass this -.INDENT 7.0 -.TP -.B pack() -Pack this exception into a serializable dictionary that is safe for -transport via msgpack -.UNINDENT .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltInvocationError(message=\(aq\(aq) +.B exception salt.exceptions.SaltInvocationError Used when the wrong number of arguments are sent to modules or invalid arguments are specified on the command line .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltMasterError(message=\(aq\(aq) +.B exception salt.exceptions.SaltMasterError Problem reading the master root key .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltRenderError(message, line_num=None, buf=\(aq\(aq, marker=\(aq <======================\(aq, trace=None) +.B exception salt.exceptions.SaltRenderError(error, line_num=None, buf=\(aq\(aq, marker=\(aq <======================\(aq, trace=None) Used when a renderer needs to raise an explicit error. If a line number and buffer string are passed, get_context will be invoked to get the location of the error. .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltReqTimeoutError(message=\(aq\(aq) +.B exception salt.exceptions.SaltReqTimeoutError Thrown when a salt master request call fails to return within the timeout .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltRunnerError(message=\(aq\(aq) +.B exception salt.exceptions.SaltRunnerError Problem in runner .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltSyndicMasterError(message=\(aq\(aq) +.B exception salt.exceptions.SaltSyndicMasterError Problem while proxying a request in the syndication master .UNINDENT .INDENT 0.0 @@ -42400,18 +41413,18 @@ nothing else to do, salt should just exit. .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.SaltWheelError(message=\(aq\(aq) +.B exception salt.exceptions.SaltWheelError Problem in wheel .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.TimedProcTimeoutError(message=\(aq\(aq) +.B exception salt.exceptions.TimedProcTimeoutError Thrown when a timed subprocess does not terminate within the timeout, or if the specified timeout is not an int or a float .UNINDENT .INDENT 0.0 .TP -.B exception salt.exceptions.TokenAuthenticationError(message=\(aq\(aq) +.B exception salt.exceptions.TokenAuthenticationError Thrown when token authentication fails .UNINDENT .SS salt.serializers @@ -42607,12 +41620,6 @@ A module to wrap (non\-Windows) archive calls T} _ T{ -\fBartifactory\fP -T} T{ -Module for fetching artifacts from Artifactory -T} -_ -T{ \fBat\fP T} T{ Wrapper module for at(1) @@ -42649,24 +41656,12 @@ Connection module for Amazon Autoscale Groups T} _ T{ -\fBboto_cfn\fP -T} T{ -Connection module for Amazon Cloud Formation -T} -_ -T{ \fBboto_cloudwatch\fP T} T{ Connection module for Amazon CloudWatch T} _ T{ -\fBboto_dynamodb\fP -T} T{ -Connection module for Amazon DynamoDB -T} -_ -T{ \fBboto_elasticache\fP T} T{ Connection module for Amazon Elasticache @@ -42697,24 +41692,12 @@ Connection module for Amazon Security Groups T} _ T{ -\fBboto_sns\fP -T} T{ -Connection module for Amazon SNS -T} -_ -T{ \fBboto_sqs\fP T} T{ Connection module for Amazon SQS T} _ T{ -\fBboto_vpc\fP -T} T{ -Connection module for Amazon VPC -T} -_ -T{ \fBbrew\fP T} T{ Homebrew for Mac OS X @@ -42733,12 +41716,6 @@ Manage the password database on BSD systems T} _ T{ -\fBbtrfs\fP -T} T{ -Module for managing BTRFS file systems. -T} -_ -T{ \fBcassandra\fP T} T{ Cassandra NoSQL Database Module @@ -42781,36 +41758,18 @@ Return config information T} _ T{ -\fBcontainer_resource\fP -T} T{ -Common resources for LXC and systemd\-nspawn containers -T} -_ -T{ \fBcp\fP T} T{ Minion side functions for salt\-cp T} _ T{ -\fBcpan\fP -T} T{ -Manage Perl modules using CPAN -T} -_ -T{ \fBcron\fP T} T{ Work with cron T} _ T{ -\fBcyg\fP -T} T{ -Manage cygwin packages. -T} -_ -T{ \fBdaemontools\fP T} T{ daemontools service module. This module will create daemontools type @@ -42864,12 +41823,6 @@ T} T{ T} _ T{ -\fBdevmap\fP -T} T{ -Device\-Mapper module -T} -_ -T{ \fBdig\fP T} T{ Compendium of generic DNS utilities @@ -42902,7 +41855,7 @@ _ T{ \fBdockerio\fP T} T{ -Management of Docker Containers +Management of Dockers T} _ T{ @@ -42912,18 +41865,6 @@ Support for DEB packages T} _ T{ -\fBdrac\fP -T} T{ -Manage Dell DRAC -T} -_ -T{ -\fBdrbd\fP -T} T{ -DRBD administration module -T} -_ -T{ \fBebuild\fP T} T{ Support for Portage @@ -42936,12 +41877,6 @@ Support for Eix T} _ T{ -\fBelasticsearch\fP -T} T{ -Connection module for Elasticsearch -T} -_ -T{ \fBenviron\fP T} T{ Support for getting and setting the environment variables of the current salt process. @@ -42978,12 +41913,6 @@ Manage information about regular files, directories, T} _ T{ -\fBfirewalld\fP -T} T{ -Support for firewalld -T} -_ -T{ \fBfreebsd_sysctl\fP T} T{ Module for viewing and modifying sysctl parameters @@ -43020,12 +41949,6 @@ The service module for FreeBSD T} _ T{ -\fBfsutils\fP -T} T{ -Run\-time utilities -T} -_ -T{ \fBgem\fP T} T{ Manage ruby gems. @@ -43074,12 +41997,6 @@ GNOME implementations T} _ T{ -\fBgpg\fP -T} T{ -Manage a GPG keychains, add keys, create keys, retrieve keys from keyservers. -T} -_ -T{ \fBgrains\fP T} T{ Return/control aspects of the grains data @@ -43088,7 +42005,7 @@ _ T{ \fBgroupadd\fP T} T{ -Manage groups on Linux, OpenBSD and NetBSD +Manage groups on Linux and OpenBSD T} _ T{ @@ -43128,11 +42045,6 @@ Support for the Mercurial SCM T} _ T{ -\fBhipchat\fP -T} T{ -T} -_ -T{ \fBhosts\fP T} T{ Manage the information in the hosts file @@ -43145,18 +42057,6 @@ Support for htpasswd command T} _ T{ -\fBhttp\fP -T} T{ -Module for making various web calls. -T} -_ -T{ -\fBilo\fP -T} T{ -Manage HP ILO -T} -_ -T{ \fBimg\fP T} T{ Virtual machine image management tools @@ -43199,18 +42099,6 @@ Support for iptables T} _ T{ -\fBjboss7\fP -T} T{ -Module for managing JBoss AS 7 through the CLI interface. -T} -_ -T{ -\fBjboss7_cli\fP -T} T{ -Module for low\-level interaction with JbossAS7 through CLI. -T} -_ -T{ \fBjunos\fP T} T{ Module for interfacing to Junos devices @@ -43427,23 +42315,12 @@ The service module for NetBSD T} _ T{ -\fBnetscaler\fP -T} T{ -T} -_ -T{ \fBnetwork\fP T} T{ Module for gathering and managing network information T} _ T{ -\fBneutron\fP -T} T{ -Module for handling OpenStack Neutron calls -T} -_ -T{ \fBnfs3\fP T} T{ Module for managing NFS version 3. @@ -43480,24 +42357,12 @@ This module interacts with an ISC DHCP Server via OMAPI. T} _ T{ -\fBopenbsd_sysctl\fP -T} T{ -Module for viewing and modifying OpenBSD sysctl parameters -T} -_ -T{ \fBopenbsdpkg\fP T} T{ Package support for OpenBSD T} _ T{ -\fBopenbsdrcctl\fP -T} T{ -The rcctl service module for OpenBSD -T} -_ -T{ \fBopenbsdservice\fP T} T{ The service module for OpenBSD @@ -43684,11 +42549,6 @@ Publish a command from a minion to a target T} _ T{ -\fBrandom_org\fP -T} T{ -T} -_ -T{ \fBrbenv\fP T} T{ Manage ruby installations with rbenv. @@ -43767,12 +42627,6 @@ Wrapper for rsync T} _ T{ -\fBrunit\fP -T} T{ -runit service module -T} -_ -T{ \fBrvm\fP T} T{ Manage ruby installations and gemsets with RVM, the Ruby Version Manager. @@ -43799,19 +42653,7 @@ _ T{ \fBschedule\fP T} T{ -Module for managing the Salt schedule on a minion -T} -_ -T{ -\fBscsi\fP -T} T{ -SCSI administration module -T} -_ -T{ -\fBsdb\fP -T} T{ -Module for Manipulating Data via the Salt DB API +Module for manging the Salt schedule on a minion T} _ T{ @@ -43851,11 +42693,6 @@ Manage the shadow file T} _ T{ -\fBslack_notify\fP -T} T{ -T} -_ -T{ \fBsmartos_imgadm\fP T} T{ Module for running imgadm command on SmartOS @@ -43904,12 +42741,6 @@ Manage users with the useradd command T} _ T{ -\fBsolarisips\fP -T} T{ -IPS pkg support for Solaris -T} -_ -T{ \fBsolarispkg\fP T} T{ Package support for Solaris @@ -43922,12 +42753,6 @@ Apache Solr Salt Module T} _ T{ -\fBsplunk_search\fP -T} T{ -Module for interop with the Splunk API -T} -_ -T{ \fBsqlite3\fP T} T{ Support for SQLite3 @@ -43952,12 +42777,6 @@ Module for returning various status data about a minion. T} _ T{ -\fBsudo\fP -T} T{ -Allow for the calling of execution modules via sudo -T} -_ -T{ \fBsupervisord\fP T} T{ Provide the service module for system supervisord or supervisord in a @@ -43982,24 +42801,12 @@ The \(aqsysbench\(aq module is used to analyze the performance of the minions, r T} _ T{ -\fBsyslog_ng\fP -T} T{ -Module for getting information about syslog\-ng -T} -_ -T{ \fBsysmod\fP T} T{ The sys module provides information about the available functions on the minion T} _ T{ -\fBsysrc\fP -T} T{ -sysrc module for FreeBSD -T} -_ -T{ \fBsystem\fP T} T{ Support for reboot, shutdown, etc @@ -44018,12 +42825,6 @@ Module for running arbitrary tests T} _ T{ -\fBtest_virtual\fP -T} T{ -Module for running arbitrary tests with a __virtual__ function -T} -_ -T{ \fBtimezone\fP T} T{ Module for managing timezone on POSIX\-like systems. @@ -44072,12 +42873,6 @@ Support for Varnish T} _ T{ -\fBvbox_guest\fP -T} T{ -VirtualBox Guest Additions installer -T} -_ -T{ \fBvirt\fP T} T{ Work with virtual machines managed by libvirt @@ -44206,7 +43001,7 @@ _ T{ \fBwin_useradd\fP T} T{ -Manage Windows users with ADSI +Manage Windows users with the net user command T} _ T{ @@ -44216,12 +43011,6 @@ This module (mostly) uses the XenAPI to manage Xen virtual machines. T} _ T{ -\fBxfs\fP -T} T{ -Module for managing XFS file systems. -T} -_ -T{ \fBxmpp\fP T} T{ Module for Sending Messages via XMPP (a.k.a. @@ -44246,12 +43035,6 @@ Salt interface to ZFS commands T} _ T{ -\fBzk_concurrency\fP -T} T{ -Concurrency controls in zookeeper -T} -_ -T{ \fBznc\fP T} T{ znc \- An advanced IRC bouncer @@ -44504,15 +43287,10 @@ salt \(aq*\(aq alternatives.show_current editor .sp Support for Apache .sp -\fBNOTE:\fP -.INDENT 0.0 -.INDENT 3.5 -The functions in here are generic functions designed to work with +Please note: The functions in here are generic functions designed to work with all implementations of Apache. Debian\-specific functions have been moved into deb_apache.py, but will still load under the \fBapache\fP namespace when a Debian\-based system is detected. -.UNINDENT -.UNINDENT .INDENT 0.0 .TP .B salt.modules.apache.config(name, config, edit=True) @@ -44526,21 +43304,16 @@ File for the virtual host VirtualHost configurations .UNINDENT .sp -\fBNOTE:\fP -.INDENT 7.0 -.INDENT 3.5 -This function is not meant to be used from the command line. +Note: This function is not meant to be used from the command line. Config is meant to be an ordered dict of all of the apache configs. -.UNINDENT -.UNINDENT .sp -CLI Example: +CLI Examples: .INDENT 7.0 .INDENT 3.5 .sp .nf .ft C -salt \(aq*\(aq apache.config /etc/httpd/conf.d/ports.conf config="[{\(aqListen\(aq: \(aq22\(aq}]" +salt \(aq*\(aq apache.config /etc/httpd/conf.d/ports.conf config="[{\(aqListen\(aq: \(aq22\(aq}]" .ft P .fi .UNINDENT @@ -44567,7 +43340,7 @@ salt \(aq*\(aq apache.directives .INDENT 0.0 .TP .B salt.modules.apache.fullversion() -Return server version (\fBapachectl \-V\fP) +Return server version from apachectl \-V .sp CLI Example: .INDENT 7.0 @@ -44584,7 +43357,7 @@ salt \(aq*\(aq apache.fullversion .INDENT 0.0 .TP .B salt.modules.apache.modules() -Return list of static and shared modules (\fBapachectl \-M\fP) +Return list of static and shared modules from apachectl \-M .sp CLI Example: .INDENT 7.0 @@ -44603,32 +43376,25 @@ salt \(aq*\(aq apache.modules .B salt.modules.apache.server_status(profile=\(aqdefault\(aq) Get Information from the Apache server\-status handler .sp -\fBNOTE:\fP -.INDENT 7.0 -.INDENT 3.5 -The server\-status handler is disabled by default. -In order for this function to work it needs to be enabled. -See \fI\%http://httpd.apache.org/docs/2.2/mod/mod_status.html\fP -.UNINDENT -.UNINDENT +NOTE: +the server\-status handler is disabled by default. +in order for this function to work it needs to be enabled. +\fI\%http://httpd.apache.org/docs/2.2/mod/mod_status.html\fP .sp -The following configuration needs to exists in pillar/grains. -Each entry nested in \fBapache.server\-status\fP is a profile of a vhost/server. -This would give support for multiple apache servers/vhosts. +The following configuration needs to exists in pillar/grains +each entry nested in apache.server\-status is a profile of a vhost/server +this would give support for multiple apache servers/vhosts .INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -apache.server\-status: - default: - url: http://localhost/server\-status - user: someuser - pass: password - realm: \(aqauthentication realm for digest passwords\(aq - timeout: 5 -.ft P -.fi +.TP +.B apache.server\-status: +.INDENT 7.0 +.TP +.B \(aqdefault\(aq: +\(aqurl\(aq: \fI\%http://localhost/server\-status\fP +\(aquser\(aq: someuser +\(aqpass\(aq: password +\(aqrealm\(aq: \(aqauthentication realm for digest passwords\(aq +\(aqtimeout\(aq: 5 .UNINDENT .UNINDENT .sp @@ -44648,7 +43414,7 @@ salt \(aq*\(aq apache.server_status other\-profile .INDENT 0.0 .TP .B salt.modules.apache.servermods() -Return list of modules compiled into the server (\fBapachectl \-l\fP) +Return list of modules compiled into the server (apachectl \-l) .sp CLI Example: .INDENT 7.0 @@ -44682,20 +43448,15 @@ salt \(aq*\(aq apache.signal restart .INDENT 0.0 .TP .B salt.modules.apache.useradd(pwfile, user, password, opts=\(aq\(aq) -Add HTTP user using the \fBhtpasswd\fP command. If the \fBhtpasswd\fP file does not +Add an HTTP user using the htpasswd command. If the htpasswd file does not exist, it will be created. Valid options that can be passed are: .INDENT 7.0 .INDENT 3.5 -.sp -.nf -.ft C n Don\(aqt update file; display results on stdout. m Force MD5 encryption of the password (default). d Force CRYPT encryption of the password. p Do not encrypt the password (plaintext). s Force SHA encryption of the password. -.ft P -.fi .UNINDENT .UNINDENT .sp @@ -44715,9 +43476,9 @@ salt \(aq*\(aq apache.useradd /etc/httpd/htpasswd larry badpass opts=ns .INDENT 0.0 .TP .B salt.modules.apache.userdel(pwfile, user) -Delete HTTP user from the specified \fBhtpasswd\fP file. +Delete an HTTP user from the specified htpasswd file. .sp -CLI Example: +CLI Examples: .INDENT 7.0 .INDENT 3.5 .sp @@ -44732,7 +43493,7 @@ salt \(aq*\(aq apache.userdel /etc/httpd/htpasswd larry .INDENT 0.0 .TP .B salt.modules.apache.version() -Return server version (\fBapachectl \-v\fP) +Return server version from apachectl \-v .sp CLI Example: .INDENT 7.0 @@ -44750,10 +43511,9 @@ salt \(aq*\(aq apache.version .TP .B salt.modules.apache.vhosts() Show the settings as parsed from the config file (currently -only shows the virtualhost settings) (\fBapachectl \-S\fP). +only shows the virtualhost settings). (\fBapachectl \-S\fP) Because each additional virtual host adds to the execution -time, this command may require a long timeout be specified -by using \fB\-t 10\fP\&. +time, this command may require a long timeout be specified. .sp CLI Example: .INDENT 7.0 @@ -44782,35 +43542,6 @@ For repository management, the \fBpython\-apt\fP package must be installed. .UNINDENT .INDENT 0.0 .TP -.B salt.modules.aptpkg.autoremove(list_only=False) -New in version 2015.2.0. - -.sp -Remove packages not required by another package using \fBapt\-get -autoremove\fP\&. -.INDENT 7.0 -.TP -.B list_only -False -Only retrieve the list of packages to be auto\-removed, do not actually -perform the auto\-removal. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.autoremove -salt \(aq*\(aq pkg.autoremove list_only=True -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.aptpkg.del_repo(repo, **kwargs) Delete a repo from the sources.list / sources.list.d .sp @@ -45081,18 +43812,6 @@ you know what you\(aqre doing. .sp New in version 0.17.4. -.TP -.B install_recommends -Whether to install the packages marked as recommended. Default is True. -.sp -New in version 2015.2.0. - -.TP -.B only_upgrade -Only upgrade the packages, if they are already installed. Default is False. -.sp -New in version 2015.2.0. - .UNINDENT .sp Returns a dict containing the new package names and versions: @@ -45273,7 +43992,7 @@ New in version 2014.7.0. .sp Return the name of the package that owns the file. Multiple file paths can -be passed. Like \fI\%pkg.version\fP, if a +be passed. Like \fBpkg.version btrfs.features\fP for full list of available features) -.UNINDENT -.sp -See the \fBmkfs.btrfs(8)\fP manpage for a more complete description of corresponding options description. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq btrfs.mkfs /dev/sda1 -salt \(aq*\(aq btrfs.mkfs /dev/sda1 noforce=True -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.btrfs.properties(obj, type=None, set=None) -List properties for given btrfs object. The object can be path of BTRFS device, -mount point, or any directories/files inside the BTRFS filesystem. -.sp -General options: -.INDENT 7.0 -.IP \(bu 2 -\fBtype\fP: Possible types are s[ubvol], f[ilesystem], i[node] and d[evice]. -.IP \(bu 2 -\fBforce\fP: Force overwrite existing filesystem on the disk -.IP \(bu 2 -\fBset\fP: Options for a filesystem properties. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq btrfs.properties /mountpoint -salt \(aq*\(aq btrfs.properties /dev/sda1 type=subvol set=\(aqro=false,label="My Storage"\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.btrfs.resize(mountpoint, size) -Resize filesystem. -.sp -General options: -.INDENT 7.0 -.IP \(bu 2 -\fBmountpoint\fP: Specify the BTRFS mountpoint to resize. -.IP \(bu 2 -\fBsize\fP: ([+/\-][kKmMgGtTpPeE]|max) Specify the new size of the target. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq btrfs.resize /mountpoint size=+1g -salt \(aq*\(aq btrfs.resize /dev/sda1 size=max -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.btrfs.usage(path) -Show in which disk the chunks are allocated. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq btrfs.usage /your/mountpoint -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.btrfs.version() -Return BTRFS version. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq btrfs.version -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.cassandra .sp Cassandra NoSQL Database Module @@ -51192,7 +47985,7 @@ salt \(aq*\(aq cassandra.version Execute chef in server or solo mode .INDENT 0.0 .TP -.B salt.modules.chef.client(whyrun=False, localmode=False, logfile=\(aq/var/log/chef\-client.log\(aq, **kwargs) +.B salt.modules.chef.client(whyrun=False, localmode=False, logfile=None, **kwargs) Execute a chef client run and return a dict with the stderr, stdout, return code, and pid. .sp @@ -51268,7 +48061,7 @@ Enable whyrun mode when set to True .UNINDENT .INDENT 0.0 .TP -.B salt.modules.chef.solo(whyrun=False, logfile=\(aq/var/log/chef\-solo.log\(aq, **kwargs) +.B salt.modules.chef.solo(whyrun=False, logfile=None, **kwargs) Execute a chef solo run and return a dict with the stderr, stdout, return code, and pid. .sp @@ -51752,7 +48545,7 @@ CLI Example: .ft C salt \(aq*\(aq cloud.action start instance=myinstance salt \(aq*\(aq cloud.action stop instance=myinstance -salt \(aq*\(aq cloud.action show_image provider=my\-ec2\-config image=ami\-1624987f +salt \(aq*\(aq cloud.action show_image provider=my\-ec2\-config image=ami\-1624987f .ft P .fi .UNINDENT @@ -51769,7 +48562,7 @@ CLI Example: .sp .nf .ft C -salt minionname cloud.create my\-ec2\-config myinstance image=ami\-1624987f size=\(aqt1.micro\(aq ssh_username=ec2\-user securitygroup=default delvol_on_destroy=True +salt minionname cloud.create my\-ec2\-config myinstance image=ami\-1624987f size=\(aqMicro Instance\(aq ssh_username=ec2\-user securitygroup=default delvol_on_destroy=True .ft P .fi .UNINDENT @@ -51811,55 +48604,6 @@ salt \(aq*\(aq cloud.full_query .UNINDENT .INDENT 0.0 .TP -.B salt.modules.cloud.get_instance(name, provider=None) -Return details on an instance. -.sp -Similar to the cloud action show_instance -but returns only the instance details. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq cloud.get_instance myinstance -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -SLS Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -{{ salt[\(aqcloud.get_instance\(aq](\(aqmyinstance\(aq)[\(aqmac_address\(aq] }} -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.cloud.has_instance(name, provider=None) -Return true if the instance is found on a provider -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq cloud.has_instance myinstance -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.cloud.list_images(provider=\(aqall\(aq) List cloud provider images for the given providers .sp @@ -52041,7 +48785,7 @@ CLI Example: .sp .nf .ft C -salt minionname cloud.volume_attach my\-nova myblock server_name=myserver device=\(aq/dev/xvdf\(aq +salt minionname cloud.volume_attach my\-nova myblock server_name=myserver device=\(aq/dev/xvdf\(aq .ft P .fi .UNINDENT @@ -52058,7 +48802,7 @@ CLI Example: .sp .nf .ft C -salt minionname cloud.volume_create my\-nova myblock size=100 voltype=SSD +salt minionname cloud.volume_create my\-nova myblock size=100 voltype=SSD .ft P .fi .UNINDENT @@ -52092,7 +48836,7 @@ CLI Example: .sp .nf .ft C -salt minionname cloud.volume_detach my\-nova myblock server_name=myserver +salt minionname cloud.volume_detach my\-nova myblock server_name=myserver .ft P .fi .UNINDENT @@ -52126,7 +48870,7 @@ access to the master root execution access to all salt minions. .B salt.modules.cmdmod.exec_code(lang, code, cwd=None) Pass in two strings, the first naming the executable language, aka \- python2, python3, ruby, perl, lua, etc. the second string containing -the code you wish to execute. The stdout will be returned. +the code you wish to execute. The stdout and stderr will be returned .sp CLI Example: .INDENT 7.0 @@ -52142,26 +48886,6 @@ salt \(aq*\(aq cmd.exec_code ruby \(aqputs "cheese"\(aq .UNINDENT .INDENT 0.0 .TP -.B salt.modules.cmdmod.exec_code_all(lang, code, cwd=None) -Pass in two strings, the first naming the executable language, aka \- -python2, python3, ruby, perl, lua, etc. the second string containing -the code you wish to execute. All cmd artifacts (stdout, stderr, retcode, pid) -will be returned. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq cmd.exec_code_all ruby \(aqputs "cheese"\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.cmdmod.has_exec(cmd) Returns true if the executable is available on the minion, false otherwise .sp @@ -52179,7 +48903,7 @@ salt \(aq*\(aq cmd.has_exec cat .UNINDENT .INDENT 0.0 .TP -.B salt.modules.cmdmod.retcode(cmd, cwd=None, stdin=None, runas=None, shell=\(aq/bin/bash\(aq, python_shell=None, env=None, clean_env=False, template=None, umask=None, output_loglevel=\(aqdebug\(aq, timeout=None, reset_system_locale=True, ignore_retcode=False, saltenv=\(aqbase\(aq, use_vt=False, **kwargs) +.B salt.modules.cmdmod.retcode(cmd, cwd=None, stdin=None, runas=None, shell=\(aq/bin/bash\(aq, python_shell=True, env=None, clean_env=False, template=None, umask=None, output_loglevel=\(aqdebug\(aq, quiet=False, timeout=None, reset_system_locale=True, ignore_retcode=False, saltenv=\(aqbase\(aq, use_vt=False, **kwargs) Execute a shell command and return the command\(aqs return code. .sp Note that \fBenv\fP represents the environment variables for the command, and @@ -52238,24 +48962,12 @@ salt \(aq*\(aq cmd.retcode "grep f" stdin=\(aqone\entwo\enthree\enfour\enfive\en .UNINDENT .INDENT 0.0 .TP -.B salt.modules.cmdmod.run(cmd, cwd=None, stdin=None, runas=None, shell=\(aq/bin/bash\(aq, python_shell=None, env=None, clean_env=False, template=None, rstrip=True, umask=None, output_loglevel=\(aqdebug\(aq, timeout=None, reset_system_locale=True, ignore_retcode=False, saltenv=\(aqbase\(aq, use_vt=False, **kwargs) +.B salt.modules.cmdmod.run(cmd, cwd=None, stdin=None, runas=None, shell=\(aq/bin/bash\(aq, python_shell=True, env=None, clean_env=False, template=None, rstrip=True, umask=None, output_loglevel=\(aqdebug\(aq, quiet=False, timeout=None, reset_system_locale=True, ignore_retcode=False, saltenv=\(aqbase\(aq, use_vt=False, **kwargs) Execute the passed command and return the output as a string .sp Note that \fBenv\fP represents the environment variables for the command, and should be formatted as a dict, or a YAML string which resolves to a dict. .sp -WARNING: This function does not process commands through a shell -unless the python_shell flag is set to True. This means that any -shell\-specific functionality such as \(aqecho\(aq or the use of pipes, -redirection or &&, should either be migrated to cmd.shell or -have the python_shell=True flag set here. -.sp -The use of python_shell=True means that the shell will accept _any_ input -including potentially malicious commands such as \(aqgood_command;rm \-rf /\(aq. -Be absolutely certain that you have sanitized your input prior to using -python_shell=True -\fB*********************************************************************\fP -.sp CLI Example: .INDENT 7.0 .INDENT 3.5 @@ -52325,7 +49037,7 @@ salt \(aq*\(aq cmd.run cmd=\(aqsed \-e s/=/:/g\(aq .UNINDENT .INDENT 0.0 .TP -.B salt.modules.cmdmod.run_all(cmd, cwd=None, stdin=None, runas=None, shell=\(aq/bin/bash\(aq, python_shell=None, env=None, clean_env=False, template=None, rstrip=True, umask=None, output_loglevel=\(aqdebug\(aq, timeout=None, reset_system_locale=True, ignore_retcode=False, saltenv=\(aqbase\(aq, use_vt=False, **kwargs) +.B salt.modules.cmdmod.run_all(cmd, cwd=None, stdin=None, runas=None, shell=\(aq/bin/bash\(aq, python_shell=True, env=None, clean_env=False, template=None, rstrip=True, umask=None, output_loglevel=\(aqdebug\(aq, quiet=False, timeout=None, reset_system_locale=True, ignore_retcode=False, saltenv=\(aqbase\(aq, use_vt=False, **kwargs) Execute the passed command and return a dict of return data .sp Note that \fBenv\fP represents the environment variables for the command, and @@ -52373,29 +49085,12 @@ salt \(aq*\(aq cmd.run_all "grep f" stdin=\(aqone\entwo\enthree\enfour\enfive\en .UNINDENT .INDENT 0.0 .TP -.B salt.modules.cmdmod.run_chroot(root, cmd, stdin=None, output_loglevel=\(aqdebug\(aq, **kw) +.B salt.modules.cmdmod.run_chroot(root, cmd) New in version 2014.7.0. .sp This function runs \fI\%cmd.run_all\fP wrapped within a chroot, with dev and proc mounted in the chroot -.INDENT 7.0 -.TP -.B stdin -None -Standard input to be used for the command -.sp -New in version 2014.7.1. - -.TP -.B output_loglevel -debug -Level at which to log the output from the command. Set to \fBquiet\fP to -suppress logging. -.sp -New in version 2014.7.1. - -.UNINDENT .sp CLI Example: .INDENT 7.0 @@ -52411,7 +49106,7 @@ salt \(aq*\(aq cmd.run_chroot /var/lib/lxc/container_name/rootfs \(aqsh /tmp/boo .UNINDENT .INDENT 0.0 .TP -.B salt.modules.cmdmod.run_stderr(cmd, cwd=None, stdin=None, runas=None, shell=\(aq/bin/bash\(aq, python_shell=None, env=None, clean_env=False, template=None, rstrip=True, umask=None, output_loglevel=\(aqdebug\(aq, timeout=None, reset_system_locale=True, ignore_retcode=False, saltenv=\(aqbase\(aq, use_vt=False, **kwargs) +.B salt.modules.cmdmod.run_stderr(cmd, cwd=None, stdin=None, runas=None, shell=\(aq/bin/bash\(aq, python_shell=True, env=None, clean_env=False, template=None, rstrip=True, umask=None, output_loglevel=\(aqdebug\(aq, quiet=False, timeout=None, reset_system_locale=True, ignore_retcode=False, saltenv=\(aqbase\(aq, use_vt=False, **kwargs) Execute a command and only return the standard error .sp Note that \fBenv\fP represents the environment variables for the command, and @@ -52459,7 +49154,7 @@ salt \(aq*\(aq cmd.run_stderr "grep f" stdin=\(aqone\entwo\enthree\enfour\enfive .UNINDENT .INDENT 0.0 .TP -.B salt.modules.cmdmod.run_stdout(cmd, cwd=None, stdin=None, runas=None, shell=\(aq/bin/bash\(aq, python_shell=None, env=None, clean_env=False, template=None, rstrip=True, umask=None, output_loglevel=\(aqdebug\(aq, timeout=None, reset_system_locale=True, ignore_retcode=False, saltenv=\(aqbase\(aq, use_vt=False, **kwargs) +.B salt.modules.cmdmod.run_stdout(cmd, cwd=None, stdin=None, runas=None, shell=\(aq/bin/bash\(aq, python_shell=True, env=None, clean_env=False, template=None, rstrip=True, umask=None, output_loglevel=\(aqdebug\(aq, quiet=False, timeout=None, reset_system_locale=True, ignore_retcode=False, saltenv=\(aqbase\(aq, use_vt=False, **kwargs) Execute a command, and only return the standard out .sp Note that \fBenv\fP represents the environment variables for the command, and @@ -52507,7 +49202,7 @@ salt \(aq*\(aq cmd.run_stdout "grep f" stdin=\(aqone\entwo\enthree\enfour\enfive .UNINDENT .INDENT 0.0 .TP -.B salt.modules.cmdmod.script(source, args=None, cwd=None, stdin=None, runas=None, shell=\(aq/bin/bash\(aq, python_shell=None, env=None, template=None, umask=None, output_loglevel=\(aqdebug\(aq, quiet=False, timeout=None, reset_system_locale=True, __env__=None, saltenv=\(aqbase\(aq, use_vt=False, **kwargs) +.B salt.modules.cmdmod.script(source, args=None, cwd=None, stdin=None, runas=None, shell=\(aq/bin/bash\(aq, python_shell=True, env=None, template=\(aqjinja\(aq, umask=None, output_loglevel=\(aqdebug\(aq, quiet=False, timeout=None, reset_system_locale=True, __env__=None, saltenv=\(aqbase\(aq, use_vt=False, **kwargs) Download a script from a remote location and execute the script locally. The script can be located on the salt master file server or on an HTTP/FTP server. @@ -52548,7 +49243,7 @@ salt \(aq*\(aq cmd.script salt://scripts/runme.sh stdin=\(aqone\entwo\enthree\en .UNINDENT .INDENT 0.0 .TP -.B salt.modules.cmdmod.script_retcode(source, args=None, cwd=None, stdin=None, runas=None, shell=\(aq/bin/bash\(aq, python_shell=None, env=None, template=\(aqjinja\(aq, umask=None, timeout=None, reset_system_locale=True, __env__=None, saltenv=\(aqbase\(aq, output_loglevel=\(aqdebug\(aq, use_vt=False, **kwargs) +.B salt.modules.cmdmod.script_retcode(source, cwd=None, stdin=None, runas=None, shell=\(aq/bin/bash\(aq, python_shell=True, env=None, template=\(aqjinja\(aq, umask=None, timeout=None, reset_system_locale=True, __env__=None, saltenv=\(aqbase\(aq, output_loglevel=\(aqdebug\(aq, use_vt=False, **kwargs) Download a script from a remote location and execute the script locally. The script can be located on the salt master file server or on an HTTP/FTP server. @@ -52567,8 +49262,6 @@ CLI Example: .nf .ft C salt \(aq*\(aq cmd.script_retcode salt://scripts/runme.sh -salt \(aq*\(aq cmd.script_retcode salt://scripts/runme.sh \(aqarg1 arg2 "arg 3"\(aq -salt \(aq*\(aq cmd.script_retcode salt://scripts/windows_task.ps1 args=\(aq \-Input c:\etmp\einfile.txt\(aq shell=\(aqpowershell\(aq .ft P .fi .UNINDENT @@ -52590,87 +49283,6 @@ salt \(aq*\(aq cmd.script_retcode salt://scripts/runme.sh stdin=\(aqone\entwo\en .UNINDENT .INDENT 0.0 .TP -.B salt.modules.cmdmod.shell(cmd, cwd=None, stdin=None, runas=None, shell=\(aq/bin/bash\(aq, env=None, clean_env=False, template=None, rstrip=True, umask=None, output_loglevel=\(aqdebug\(aq, quiet=False, timeout=None, reset_system_locale=True, ignore_retcode=False, saltenv=\(aqbase\(aq, use_vt=False, **kwargs) -Execute the passed command and return the output as a string. -.sp -WARNING: This passes the cmd argument directly to the shell -without any further processing! Be absolutely sure that you -have properly santized the command passed to this function -and do not use untrusted inputs. -\fB********************************************************\fP -.sp -Note that \fBenv\fP represents the environment variables for the command, and -should be formatted as a dict, or a YAML string which resolves to a dict. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq cmd.shell "ls \-l | awk \(aq/foo/{print \e$2}\(aq" -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The template arg can be set to \(aqjinja\(aq or another supported template -engine to render the command arguments before execution. -For example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq cmd.shell template=jinja "ls \-l /tmp/{{grains.id}} | awk \(aq/foo/{print \e$2}\(aq" -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Specify an alternate shell with the shell parameter: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq cmd.shell "Get\-ChildItem C:\e " shell=\(aqpowershell\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -A string of standard input can be specified for the command to be run using -the \fBstdin\fP parameter. This can be useful in cases where sensitive -information must be read from standard input.: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq cmd.shell "grep f" stdin=\(aqone\entwo\enthree\enfour\enfive\en\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -If an equal sign (\fB=\fP) appears in an argument to a Salt command it is -interpreted as a keyword argument in the format \fBkey=val\fP\&. That -processing can be bypassed in order to pass an equal sign through to the -remote shell command by manually specifying the kwarg: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq cmd.shell cmd=\(aqsed \-e s/=/:/g\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.cmdmod.tty(device, echo=None) Echo a string to a specific tty .sp @@ -52980,14 +49592,13 @@ salt \(aq*\(aq config.gather_bootstrap_script .UNINDENT .INDENT 0.0 .TP -.B salt.modules.config.get(key, default=\(aq\(aq, delimiter=\(aq:\(aq, merge=None) -Attempt to retrieve the named value from the minion config file, pillar, -grains or the master config. If the named value is not available, return the -value specified by \fBdefault\fP\&. If not specified, the default is an empty -string. +.B salt.modules.config.get(key, default=\(aq\(aq) +Attempt to retrieve the named value from opts, pillar, grains or the master +config, if the named value is not available return the passed default. +The default return is an empty string. .sp -Values can also be retrieved from nested dictionaries. Assume the below -data structure: +The value can also represent a value in a nested dict using a ":" delimiter +for the dict. This means that if a dict looks like this: .INDENT 7.0 .INDENT 3.5 .sp @@ -52999,120 +49610,29 @@ data structure: .UNINDENT .UNINDENT .sp -To retrieve the value associated with the \fBapache\fP key, in the -sub\-dictionary corresponding to the \fBpkg\fP key, the following command can -be used: +To retrieve the value associated with the apache key in the pkg dict this +key can be passed: .INDENT 7.0 .INDENT 3.5 .sp .nf .ft C -salt myminion config.get pkg:apache +pkg:apache .ft P .fi .UNINDENT .UNINDENT .sp -The \fB:\fP (colon) is used to represent a nested dictionary level. -.sp -Changed in version 2015.2.0: The \fBdelimiter\fP argument was added, to allow delimiters other than -\fB:\fP to be used. - -.sp -This function traverses these data stores in this order: +This routine traverses these data stores in this order: .INDENT 7.0 .IP \(bu 2 -Minion config file +Local minion config (opts) .IP \(bu 2 Minion\(aqs grains .IP \(bu 2 -Minion\(aqs pillar data +Minion\(aqs pillar .IP \(bu 2 -Master config file -.UNINDENT -.INDENT 7.0 -.TP -.B delimiter -New in version 2015.2.0. - -.sp -Override the delimiter used to separate nested levels of a data -structure. -.TP -.B merge -New in version 2015.2.0. - -.sp -If passed, this parameter will change the behavior of the function so -that, instead of traversing each data store above in order and -returning the first match, the data stores are first merged together -and then searched. The pillar data is merged into the master config -data, then the grains are merged, followed by the Minion config data. -The resulting data structure is then searched for a match. This allows -for configurations to be more flexible. -.sp -\fBNOTE:\fP -.INDENT 7.0 -.INDENT 3.5 -The merging described above does not mean that grain data will end -up in the Minion\(aqs pillar data, or pillar data will end up in the -master config data, etc. The data is just combined for the purposes -of searching an amalgam of the different data stores. -.UNINDENT -.UNINDENT -.sp -The supported merge strategies are as follows: -.INDENT 7.0 -.IP \(bu 2 -\fBrecurse\fP \- If a key exists in both dictionaries, and the new value -is not a dictionary, it is replaced. Otherwise, the sub\-dictionaries -are merged together into a single dictionary, recursively on down, -following the same criteria. For example: -.INDENT 2.0 -.INDENT 3.5 -.sp -.nf -.ft C ->>> dict1 = {\(aqfoo\(aq: {\(aqbar\(aq: 1, \(aqqux\(aq: True}, - \(aqhosts\(aq: [\(aqa\(aq, \(aqb\(aq, \(aqc\(aq], - \(aqonly_x\(aq: None} ->>> dict2 = {\(aqfoo\(aq: {\(aqbaz\(aq: 2, \(aqqux\(aq: False}, - \(aqhosts\(aq: [\(aqd\(aq, \(aqe\(aq, \(aqf\(aq], - \(aqonly_y\(aq: None} ->>> merged -{\(aqfoo\(aq: {\(aqbar\(aq: 1, \(aqbaz\(aq: 2, \(aqqux\(aq: False}, - \(aqhosts\(aq: [\(aqd\(aq, \(aqe\(aq, \(aqf\(aq], - \(aqonly_dict1\(aq: None, - \(aqonly_dict2\(aq: None} -.ft P -.fi -.UNINDENT -.UNINDENT -.IP \(bu 2 -\fBoverwrite\fP \- If a key exists in the top level of both -dictionaries, the new value completely overwrites the old. For -example: -.INDENT 2.0 -.INDENT 3.5 -.sp -.nf -.ft C ->>> dict1 = {\(aqfoo\(aq: {\(aqbar\(aq: 1, \(aqqux\(aq: True}, - \(aqhosts\(aq: [\(aqa\(aq, \(aqb\(aq, \(aqc\(aq], - \(aqonly_x\(aq: None} ->>> dict2 = {\(aqfoo\(aq: {\(aqbaz\(aq: 2, \(aqqux\(aq: False}, - \(aqhosts\(aq: [\(aqd\(aq, \(aqe\(aq, \(aqf\(aq], - \(aqonly_y\(aq: None} ->>> merged -{\(aqfoo\(aq: {\(aqbaz\(aq: 2, \(aqqux\(aq: False}, - \(aqhosts\(aq: [\(aqd\(aq, \(aqe\(aq, \(aqf\(aq], - \(aqonly_dict1\(aq: None, - \(aqonly_dict2\(aq: None} -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT +Master config .UNINDENT .sp CLI Example: @@ -53122,7 +49642,6 @@ CLI Example: .nf .ft C salt \(aq*\(aq config.get pkg:apache -salt \(aq*\(aq config.get lxc.container_profile:centos merge=recurse .ft P .fi .UNINDENT @@ -53200,19 +49719,6 @@ salt \(aq*\(aq config.valid_fileproto salt://path/to/file .UNINDENT .UNINDENT .UNINDENT -.SS salt.modules.container_resource -.sp -Common resources for LXC and systemd\-nspawn containers -.sp -These functions are not designed to be called directly, but instead from the -\fBlxc\fP and the (future) \fBnspawn\fP execution modules. -.INDENT 0.0 -.TP -.B salt.modules.container_resource.run(name, cmd, output=None, no_start=False, stdin=None, python_shell=True, output_loglevel=\(aqdebug\(aq, ignore_retcode=False, use_vt=False) -Common logic for running shell commands in containers -.sp -Requires the full command to be passed to \fBcmd.run\fP/\fBcmd.run_all\fP -.UNINDENT .SS salt.modules.cp .sp Minion side functions for salt\-cp @@ -53435,10 +49941,6 @@ salt \(aq*\(aq cp.get_template salt://path/to/template /minion/dest .B salt.modules.cp.get_url(path, dest, saltenv=\(aqbase\(aq, env=None) Used to get a single file from a URL. .sp -The default behaviuor is to write the fetched file to the given -destination path. To simply return the text contents instead, set destination to -None. -.sp CLI Example: .INDENT 7.0 .INDENT 3.5 @@ -53576,7 +50078,7 @@ salt \(aq*\(aq cp.list_states .UNINDENT .INDENT 0.0 .TP -.B salt.modules.cp.push(path, keep_symlinks=False) +.B salt.modules.cp.push(path) Push a file from the minion up to the master, the file will be saved to the salt master in the master\(aqs minion files cachedir (defaults to \fB/var/cache/salt/master/minions/minion\-id/files\fP) @@ -53585,11 +50087,6 @@ Since this feature allows a minion to push a file up to the master server it is disabled by default for security purposes. To enable, set \fBfile_recv\fP to \fBTrue\fP in the master configuration file, and restart the master. -.INDENT 7.0 -.TP -.B keep_symlinks -Keep the path value without resolving its canonical form -.UNINDENT .sp CLI Example: .INDENT 7.0 @@ -53598,7 +50095,6 @@ CLI Example: .nf .ft C salt \(aq*\(aq cp.push /etc/fstab -salt \(aq*\(aq cp.push /etc/system\-release keep_symlinks=True .ft P .fi .UNINDENT @@ -53640,101 +50136,6 @@ Used with salt\-cp, pass the files dict, and the destination. This function receives small fast copy files from the master via salt\-cp. It does not work via the CLI. .UNINDENT -.SS salt.modules.cpan -.sp -Manage Perl modules using CPAN -.sp -New in version 2015.2.0. - -.INDENT 0.0 -.TP -.B salt.modules.cpan.install(module) -Install a Perl module from CPAN -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq cpan.install Template::Alloy -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.cpan.list_() -List installed Perl modules, and the version installed -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq cpan.list -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.cpan.remove(module, details=False) -Attempt to remove a Perl module that was installed from CPAN. Because the -\fBcpan\fP command doesn\(aqt actually support "uninstall"\-like functionality, -this function will attempt to do what it can, with what it has from CPAN. -.sp -Until this function is declared stable, USE AT YOUR OWN RISK! -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq cpan.remove Old::Package -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.cpan.show(module) -Show information about a specific Perl module -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq cpan.show Template::Alloy -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.cpan.show_config() -Return a dict of CPAN configuration values -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq cpan.show_config -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.cron .sp Work with cron @@ -53929,125 +50330,6 @@ salt \(aq*\(aq cron.write_cron_file_verbose root /tmp/new_cron .UNINDENT .UNINDENT .UNINDENT -.SS salt.modules.cyg -.sp -Manage cygwin packages. -.sp -Module file to accompany the cyg state. -.INDENT 0.0 -.TP -.B salt.modules.cyg.check_valid_package(package, cyg_arch=\(aqx86_64\(aq, mirrors=None) -Check if the package is valid on the given mirrors. -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.cyg.install(packages=None, cyg_arch=\(aqx86_64\(aq, mirrors=None) -Install one or several packages. -.INDENT 7.0 -.TP -.B packages -None -The packages to install -.TP -.B cyg_arch -x86_64 -Specify the architecture to install the package under -Current options are x86 and x86_64 -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq cyg.install dos2unix -salt \(aq*\(aq cyg.install dos2unix mirrors=[{\(aqhttp://mirror\(aq: \(aqhttp://url/to/public/key}] -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.cyg.list_(package=\(aq\(aq, cyg_arch=\(aqx86_64\(aq) -List locally installed packages. -.INDENT 7.0 -.TP -.B package -\(aq\(aq -package name to check. else all -.TP -.B cyg_arch : -Cygwin architecture to use -Options are x86 and x86_64 -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq cyg.list -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.cyg.uninstall(packages, cyg_arch=\(aqx86_64\(aq, mirrors=None) -Uninstall one or several packages. -.INDENT 7.0 -.TP -.B packages -The packages to uninstall. -.TP -.B cyg_arch -x86_64 -Specify the architecture to remove the package from -Current options are x86 and x86_64 -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq cyg.uninstall dos2unix -salt \(aq*\(aq cyg.uninstall dos2unix mirrors=[{\(aqhttp://mirror\(aq: \(aqhttp://url/to/public/key}] -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.cyg.update(cyg_arch=\(aqx86_64\(aq, mirrors=None) -Update all packages. -.INDENT 7.0 -.TP -.B cyg_arch -x86_64 -Specify the cygwin architecture update -Current options are x86 and x86_64 -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq cyg.update -salt \(aq*\(aq cyg.update dos2unix mirrors=[{\(aqhttp://mirror\(aq: \(aqhttp://url/to/public/key}] -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.daemontools .sp daemontools service module. This module will create daemontools type @@ -54773,37 +51055,6 @@ salt \(aq*\(aq debconf.set_file salt://pathto/pkg.selections .UNINDENT .INDENT 0.0 .TP -.B salt.modules.debconfmod.set_template(path, template, context, defaults, saltenv=\(aqbase\(aq, **kwargs) -Set answers to debconf questions from a template. -.INDENT 7.0 -.TP -.B path -location of the file containing the package selections -.TP -.B template -template format -.TP -.B context -variables to add to the template environment -.TP -.B default -default values for the template environment -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq debconf.set_template salt://pathto/pkg.selections.jinja jinja None None -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.debconfmod.show(name) Answers to debconf questions for a package in the following format: .INDENT 7.0 @@ -55102,7 +51353,7 @@ salt \(aq*\(aq service.enable .UNINDENT .INDENT 0.0 .TP -.B salt.modules.debian_service.enabled(name, **kwargs) +.B salt.modules.debian_service.enabled(name) Return True if the named service is enabled, false otherwise .sp CLI Example: @@ -55337,43 +51588,6 @@ With this, from a state file you can use salt[\(aqdefaults.get\(aq](\(aqusers:ro to read the \(aq0\(aq value from defaults.json if a core:users:root pillar key is not defined. .UNINDENT -.SS salt.modules.devmap -.sp -Device\-Mapper module -.INDENT 0.0 -.TP -.B salt.modules.devmap.multipath_flush(device) -Device\-Mapper Multipath flush -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq devmap.multipath_flush mpath1 -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.devmap.multipath_list() -Device\-Mapper Multipath list -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq devmap.multipath_list -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.dig .sp Compendium of generic DNS utilities @@ -55778,7 +51992,7 @@ Compendium of generic DNS utilities .INDENT 0.0 .TP .B salt.modules.dnsutil.A(host, nameserver=None) -Return the A record for \(aqhost\(aq. +Return the A record(s) for \fIhost\fP\&. .sp Always returns a list. .sp @@ -55788,7 +52002,29 @@ CLI Example: .sp .nf .ft C -salt ns1 dig.A www.google.com +salt ns1 dnsutil.A www.google.com +.ft P +.fi +.UNINDENT +.UNINDENT +.UNINDENT +.INDENT 0.0 +.TP +.B salt.modules.dnsutil.AAAA(host, nameserver=None) +Return the AAAA record(s) for \fIhost\fP\&. +.sp +Always returns a list. +.sp +New in version 2014.7.5. + +.sp +CLI Example: +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +salt ns1 dnsutil.AAAA www.google.com .ft P .fi .UNINDENT @@ -55946,41 +52182,8 @@ salt ns1 dnsutil.parse_zone /var/lib/named/example.com.zone .UNINDENT .UNINDENT .UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.dnsutil.serial(zone=\(aq\(aq, update=False) -Return, store and update a dns serial for your zone files. -.sp -zone: a keywork for a specific zone -.sp -update: store an updated version of the serial in a grain -.sp -If \fBupdate\fP is False, the function will retrieve an existing serial or -return the current date if no serial is stored. Nothing will be stored -.sp -If \fBupdate\fP is True, the function will set the serial to the current date -if none exist or if the existing serial is for a previous date. If a serial -for greater than the current date is already stored, the function will -increment it. -.sp -This module stores the serial in a grain, you can explicitly set the -stored value as a grain named \fBdnsserial_\fP\&. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt ns1 dnsutil.serial example.com -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.dockerio -.sp -Management of Docker Containers +.SS Management of Dockers .sp New in version 2014.1.0. @@ -56144,10 +52347,6 @@ docker\-registries: \fI\%build\fP .IP \(bu 2 \fI\%tag\fP -.IP \(bu 2 -\fI\%save\fP -.IP \(bu 2 -\fI\%load\fP .UNINDENT .UNINDENT .IP \(bu 2 @@ -56293,7 +52492,7 @@ salt \(aq*\(aq docker.commit .UNINDENT .INDENT 0.0 .TP -.B salt.modules.dockerio.create_container(image, command=None, hostname=None, user=None, detach=True, stdin_open=False, tty=False, mem_limit=0, ports=None, environment=None, dns=None, volumes=None, volumes_from=None, name=None, cpu_shares=None, cpuset=None) +.B salt.modules.dockerio.create_container(image, command=None, hostname=None, user=None, detach=True, stdin_open=False, tty=False, mem_limit=0, ports=None, environment=None, dns=None, volumes=None, volumes_from=None, name=None) Create a new container .INDENT 7.0 .TP @@ -56339,12 +52538,6 @@ let stdin open, Default is \fBFalse\fP .TP .B name name given to container -.TP -.B cpu_shares -CPU shares (relative weight) -.TP -.B cpuset -CPUs in which to allow execution (\(aq0\-3\(aq or \(aq0,1\(aq) .UNINDENT .sp CLI Example: @@ -56651,37 +52844,6 @@ salt \(aq*\(aq docker.kill .UNINDENT .INDENT 0.0 .TP -.B salt.modules.dockerio.load(imagepath) -.INDENT 7.0 -.INDENT 3.5 -Load the specified file at imagepath into docker that was generated from -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B a docker save command -e.g. \fIdocker load < imagepath\fP -.INDENT 7.0 -.TP -.B imagepath -imagepath to docker tar file -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq docker.load /path/to/image -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.dockerio.login(url=None, username=None, password=None, email=None) Wrapper to the \fBdocker.py\fP login method (does not do much yet) .INDENT 7.0 @@ -56762,7 +52924,7 @@ salt \(aq*\(aq docker.port .UNINDENT .INDENT 0.0 .TP -.B salt.modules.dockerio.pull(repo, tag=None, insecure_registry=False) +.B salt.modules.dockerio.pull(repo, tag=None) Pulls an image from any registry. See documentation at top of this page to configure authenticated access .INDENT 7.0 @@ -56772,10 +52934,6 @@ name of repository .TP .B tag specific tag to pull (Optional) -.TP -.B insecure_registry -set as \fBTrue\fP to use insecure (non HTTPS) registry. Default is \fBFalse\fP -(only available if using docker\-py >= 0.5.0) .UNINDENT .sp CLI Example: @@ -56792,7 +52950,7 @@ salt \(aq*\(aq docker.pull [tag] .UNINDENT .INDENT 0.0 .TP -.B salt.modules.dockerio.push(repo, tag=None, quiet=False, insecure_registry=False) +.B salt.modules.dockerio.push(repo, tag=None, quiet=False) Pushes an image to any registry. See documentation at top of this page to configure authenticated access .INDENT 7.0 @@ -56805,10 +52963,6 @@ specific tag to push (Optional) .TP .B quiet set as \fBTrue\fP to quiet output, Default is \fBFalse\fP -.TP -.B insecure_registry -set as \fBTrue\fP to use insecure (non HTTPS) registry. Default is \fBFalse\fP -(only available if using docker\-py >= 0.5.0) .UNINDENT .sp CLI Example: @@ -56836,7 +52990,7 @@ container id remove a running container, Default is \fBFalse\fP .TP .B v -verbose mode, Default is \fBFalse\fP +remove the volumes associated to the container, Default is \fBFalse\fP .UNINDENT .sp CLI Example: @@ -57112,32 +53266,6 @@ salt \(aq*\(aq docker.run_stdout \(aqls \-l /etc\(aq .UNINDENT .INDENT 0.0 .TP -.B salt.modules.dockerio.save(image, filename) -Save the specified image to filename from docker -e.g. \fIdocker save image > filename\fP -.INDENT 7.0 -.TP -.B image -name of image -.TP -.B filename -The filename of the saved docker image -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq docker.save arch_image /path/to/save/image -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.dockerio.script(container, source, args=None, cwd=None, stdin=None, runas=None, shell=\(aq/bin/bash\(aq, env=None, template=\(aqjinja\(aq, umask=None, timeout=None, reset_system_locale=True, no_clean=False, saltenv=\(aqbase\(aq) Wrapper for \fBcmdmod.script\fP inside a container context .INDENT 7.0 @@ -57495,379 +53623,6 @@ salt \(aq*\(aq lowpkg.unpurge curl .UNINDENT .UNINDENT .UNINDENT -.SS salt.modules.drac -.sp -Manage Dell DRAC -.INDENT 0.0 -.TP -.B salt.modules.drac.change_password(username, password, uid=None) -Change users password -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt dell drac.change_password [USERNAME] [PASSWORD] [UID \- optional] -salt dell drac.change_password diana secret -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.drac.create_user(username, password, permissions, users=None) -Create user accounts -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt dell drac.create_user [USERNAME] [PASSWORD] [PRIVELEGES] -salt dell drac.create_user diana secret login,test_alerts,clear_logs -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B DRAC Privileges -.INDENT 7.0 -.IP \(bu 2 -login : Login to iDRAC -.IP \(bu 2 -drac : Configure iDRAC -.IP \(bu 2 -user_management : Configure Users -.IP \(bu 2 -clear_logs : Clear Logs -.IP \(bu 2 -server_control_commands : Execute Server Control Commands -.IP \(bu 2 -console_redirection : Access Console Redirection -.IP \(bu 2 -virtual_media : Access Virtual Media -.IP \(bu 2 -test_alerts : Test Alerts -.IP \(bu 2 -debug_commands : Execute Debug Commands -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.drac.delete_user(username, uid=None) -Delete a user -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt dell drac.delete_user [USERNAME] [UID \- optional] -salt dell drac.delete_user diana 4 -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.drac.email_alerts(action) -Enable/Disable email alerts -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt dell drac.email_alerts True -salt dell drac.email_alerts False -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.drac.list_users() -List all DRAC users -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt dell drac.list_users -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.drac.nameservers(*ns) -Configure the nameservers on the DRAC -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt dell drac.nameservers [NAMESERVERS] -salt dell drac.nameservers ns1.example.com ns2.example.com -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.drac.network_info() -Return Network Configuration -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt dell drac.getniccfg -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.drac.server_hardreset() -Performs a reset (reboot) operation on the managed server. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt dell drac.server_hardreset -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.drac.server_poweroff() -Powers down the managed server. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt dell drac.server_poweroff -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.drac.server_poweron() -Powers up the managed server. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt dell drac.server_poweron -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.drac.server_pxe() -Configure server to PXE perform a one off PXE boot -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt dell drac.server_pxe -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.drac.server_reboot() -Issues a power\-cycle operation on the managed server. This action is -similar to pressing the power button on the system\(aqs front panel to -power down and then power up the system. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt dell drac.server_reboot -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.drac.set_network(ip, netmask, gateway) -Configure Network -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt dell drac.set_network [DRAC IP] [NETMASK] [GATEWAY] -salt dell drac.set_network 192.168.0.2 255.255.255.0 192.168.0.1 -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.drac.set_permissions(username, permissions, uid=None) -Configure users permissions -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt dell drac.set_permissions [USERNAME] [PRIVELEGES] [USER INDEX \- optional] -salt dell drac.set_permissions diana login,test_alerts,clear_logs 4 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B DRAC Privileges -.INDENT 7.0 -.IP \(bu 2 -login : Login to iDRAC -.IP \(bu 2 -drac : Configure iDRAC -.IP \(bu 2 -user_management : Configure Users -.IP \(bu 2 -clear_logs : Clear Logs -.IP \(bu 2 -server_control_commands : Execute Server Control Commands -.IP \(bu 2 -console_redirection : Access Console Redirection -.IP \(bu 2 -virtual_media : Access Virtual Media -.IP \(bu 2 -test_alerts : Test Alerts -.IP \(bu 2 -debug_commands : Execute Debug Commands -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.drac.set_snmp(community) -Configure SNMP community string -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt dell drac.set_snmp [COMMUNITY] -salt dell drac.set_snmp public -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.drac.syslog(server, enable=True) -Configure syslog remote logging, by default syslog will automatically be -enabled if a server is specified. However, if you want to disable syslog -you will need to specify a server followed by False -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt dell drac.syslog [SYSLOG IP] [ENABLE/DISABLE] -salt dell drac.syslog 0.0.0.0 False -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.drac.system_info() -Return System information -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt dell drac.getsysinfo -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.SS salt.modules.drbd -.sp -DRBD administration module -.INDENT 0.0 -.TP -.B salt.modules.drbd.overview() -Show status of the DRBD devices -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq drbd.overview -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.ebuild .sp Support for Portage @@ -57977,7 +53732,7 @@ configuration files. New in version 0.17.0: Initial automatic enforcement added when pkg is used on a Gentoo system. .sp -Changed in version 2014.1.0\-Hydrogen: Configure option added to make this behaviour optional, defaulting to +Changed in version 2014.1.0: Configure option added to make this behavior optional, defaulting to off. .sp @@ -58008,7 +53763,7 @@ salt \(aq*\(aq pkg.ex_mod_init .UNINDENT .INDENT 0.0 .TP -.B salt.modules.ebuild.install(name=None, refresh=False, pkgs=None, sources=None, slot=None, fromrepo=None, uses=None, binhost=None, **kwargs) +.B salt.modules.ebuild.install(name=None, refresh=False, pkgs=None, sources=None, slot=None, fromrepo=None, uses=None, **kwargs) Install the passed package(s), add refresh=True to sync the portage tree before package is installed. .INDENT 7.0 @@ -58126,11 +53881,6 @@ salt \(aq*\(aq pkg.install sources=\(aq[{"foo": "salt://foo.tbz2"},{"bar": "salt .fi .UNINDENT .UNINDENT -.TP -.B binhost -has two options try and force. -try \- tells emerge to try and install the package from a configured binhost. -force \- forces emerge to install the package from a binhost otherwise it fails out. .UNINDENT .sp Returns a dict containing the new package names and versions: @@ -58329,7 +54079,7 @@ salt \(aq*\(aq pkg.remove pkgs=\(aq["foo", "bar"]\(aq .UNINDENT .INDENT 0.0 .TP -.B salt.modules.ebuild.update(pkg, slot=None, fromrepo=None, refresh=False, binhost=None) +.B salt.modules.ebuild.update(pkg, slot=None, fromrepo=None, refresh=False) Updates the passed package (emerge \-\-update package) .INDENT 7.0 .TP @@ -58340,11 +54090,6 @@ latest version within the slot. .B fromrepo Restrict the update to a particular repository. It will update to the latest version within the repository. -.TP -.B binhost -has two options try and force. -try \- tells emerge to try and install the package from a configured binhost. -force \- forces emerge to install the package from a binhost otherwise it fails out. .UNINDENT .sp Return a dict containing the new package names and versions: @@ -58374,15 +54119,8 @@ salt \(aq*\(aq pkg.update .UNINDENT .INDENT 0.0 .TP -.B salt.modules.ebuild.upgrade(refresh=True, binhost=None) +.B salt.modules.ebuild.upgrade(refresh=True) Run a full system upgrade (emerge \-\-update world) -.INDENT 7.0 -.TP -.B binhost -has two options try and force. -try \- tells emerge to try and install the package from a configured binhost. -force \- forces emerge to install the package from a binhost otherwise it fails out. -.UNINDENT .sp Return a dict containing the new package names and versions: .INDENT 7.0 @@ -58519,83 +54257,6 @@ salt \(aq*\(aq eix.update .UNINDENT .UNINDENT .UNINDENT -.SS salt.modules.elasticsearch -.sp -Connection module for Elasticsearch -.INDENT 0.0 -.TP -.B depends -elasticsearch -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.elasticsearch.delete(index, doc_type, id, hosts=None, profile=\(aqelasticsearch\(aq) -Delete the document specified by the id in the index. -.sp -CLI example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt myminion elasticsearch.delete grafana\-dash dashboard mydash profile=\(aqgrafana\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.elasticsearch.exists(index, id, doc_type=\(aq_all\(aq, hosts=None, profile=\(aqelasticsearch\(aq) -Check for the existence of an elasticsearch document specified by id in the -index. -.sp -CLI example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt myminion elasticsearch.exists grafana\-dash mydash profile=\(aqgrafana\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.elasticsearch.get(index, id, doc_type=\(aq_all\(aq, hosts=None, profile=\(aqelasticsearch\(aq) -Get the contents of the specifed id from the index. -.sp -CLI example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt myminion elasticsearch.get grafana\-dash mydash profile=\(aqgrafana\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.elasticsearch.index(index, doc_type, body, id=None, hosts=None, profile=\(aqelasticsearch\(aq) -Create or update an index with the specified body for the specified id. -.sp -CLI example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt myminion elasticsearch.index grafana\-dash dashboard \(aq{"user":"guest","group":"guest","body":"",...}\(aq mydash profile=\(aqgrafana\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.environ .sp Support for getting and setting the environment variables @@ -58788,7 +54449,7 @@ salt \(aq*\(aq environ.setval baz val=False false_unsets=True Support for eselect, Gentoo\(aqs configuration and management tool. .INDENT 0.0 .TP -.B salt.modules.eselect.exec_action(module, action, module_parameter=None, action_parameter=None, state_only=False) +.B salt.modules.eselect.exec_action(module, action, module_parameter=None, action_parameter=None, parameter=None, state_only=False) Execute an arbitrary action on a module. .INDENT 7.0 .TP @@ -58804,6 +54465,10 @@ additional params passed to the defined module .B action_parameter additional params passed to the defined action .TP +.B parameter +additional params passed to the defined action +.. deprecated:: Lithium +.TP .B state_only don\(aqt return any output but only the success/failure of the operation .UNINDENT @@ -59424,6 +55089,14 @@ New in version 2014.1.0. .sp Test whether the Salt process has the specified access to the file. One of the following modes must be specified: +.INDENT 7.0 +.INDENT 3.5 +f: Test the existence of the path +r: Test the readability of the path +w: Test the writability of the path +x: Test whether the path can be executed +.UNINDENT +.UNINDENT .sp CLI Example: .INDENT 7.0 @@ -59450,7 +55123,7 @@ Append text to the end of a file .B path path to file .TP -.B \fI*args\fP +.B args strings to append to file .UNINDENT .sp @@ -59491,38 +55164,6 @@ salt \(aq*\(aq file.append /etc/motd args="[\(aqcheese=spam\(aq,\(aqspam=cheese\ .UNINDENT .INDENT 0.0 .TP -.B salt.modules.file.basename(path) -Returns the final component of a pathname -.sp -New in version 2015.2. - -.sp -This can be useful at the CLI but is frequently useful when scripting. -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -{%\- set filename = salt[\(aqfile.basename\(aq](source_file) %} -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq file.basename \(aqtest/test.config\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.file.blockreplace(path, marker_start=\(aq#\-\- start managed zone \-\-\(aq, marker_end=\(aq#\-\- end managed zone \-\-\(aq, content=\(aq\(aq, append_if_not_found=False, prepend_if_not_found=False, backup=\(aq.bak\(aq, dry_run=False, show_changes=True) New in version 2014.1.0. @@ -59969,56 +55610,6 @@ salt \(aq*\(aq file.directory_exists /etc .UNINDENT .INDENT 0.0 .TP -.B salt.modules.file.dirname(path) -Returns the directory component of a pathname -.sp -New in version 2015.2. - -.sp -This can be useful at the CLI but is frequently useful when scripting. -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -{%\- from salt[\(aqfile.dirname\(aq](tpldir) + \(aq/vars.jinja\(aq import parent_vars %} -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq file.dirname \(aqtest/path/filename.config\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.file.diskusage(path) -Recursively calculate disk usage of path and return it -in bytes -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq file.diskusage /path/to/check -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.file.extract_hash(hash_fn, hash_type=\(aqsha256\(aq, file_name=\(aq\(aq) This routine is called from the \fBfile.managed\fP state to pull a hash from a remote file. Regular expressions are used line by line on the \fBsource_hash\fP file, to @@ -60073,7 +55664,7 @@ salt \(aq*\(aq file.file_exists /etc/passwd .UNINDENT .INDENT 0.0 .TP -.B salt.modules.file.find(path, *args, **kwargs) +.B salt.modules.file.find(path, **kwargs) Approximate the Unix \fBfind(1)\fP command and return a list of paths that meet the specified criteria. .sp @@ -60112,22 +55703,9 @@ print [= print\-opts] .UNINDENT .UNINDENT .sp -and/or depth criteria: -.INDENT 7.0 -.INDENT 3.5 +The default action is \(aqprint=path\(aq. .sp -.nf -.ft C -maxdepth = maximum depth to transverse in path -mindepth = minimum depth to transverse before checking files or directories -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The default action is \fBprint=path\fP -.sp -\fBpath\-glob\fP: +file\-glob: .INDENT 7.0 .INDENT 3.5 .sp @@ -60145,9 +55723,9 @@ The default action is \fBprint=path\fP .UNINDENT .UNINDENT .sp -\fBpath\-regex\fP: a Python Regex (regular expression) pattern to match pathnames +path\-regex: a Python re (regular expression) pattern to match pathnames .sp -\fBfile\-types\fP: a string of one or more of the following: +file\-types: a string of one or more of the following: .INDENT 7.0 .INDENT 3.5 .sp @@ -60166,11 +55744,11 @@ s: socket .UNINDENT .UNINDENT .sp -\fBusers\fP: a space and/or comma separated list of user names and/or uids +users: a space and/or comma separated list of user names and/or uids .sp -\fBgroups\fP: a space and/or comma separated list of group names and/or gids +groups: a space and/or comma separated list of group names and/or gids .sp -\fBsize\-unit\fP: +size\-unit: .INDENT 7.0 .INDENT 3.5 .sp @@ -60332,7 +55910,7 @@ Changed in version 0.16.4: \fBfollow_symlinks\fP option added .UNINDENT .INDENT 0.0 .TP -.B salt.modules.file.get_hash(path, form=\(aqsha256\(aq, chunk_size=65536) +.B salt.modules.file.get_hash(path, form=\(aqsha256\(aq, chunk_size=4096) Get the hash sum of a file .INDENT 7.0 .TP @@ -60465,22 +56043,8 @@ salt \(aq*\(aq file.get_selinux_context /etc/hosts .INDENT 0.0 .TP .B salt.modules.file.get_sum(path, form=\(aqsha256\(aq) -Return the checksum for the given file. The following checksum algorithms -are supported: -.INDENT 7.0 -.IP \(bu 2 -md5 -.IP \(bu 2 -sha1 -.IP \(bu 2 -sha224 -.IP \(bu 2 -sha256 \fB(default)\fP -.IP \(bu 2 -sha384 -.IP \(bu 2 -sha512 -.UNINDENT +Return the sum for the given file, default is md5, sha1, sha224, sha256, +sha384, sha512 are supported .INDENT 7.0 .TP .B path @@ -60832,32 +56396,6 @@ salt \(aq*\(aq file.list_backups /foo/bar/baz.txt .UNINDENT .INDENT 0.0 .TP -.B salt.modules.file.list_backups_dir(path, limit=None) -Lists the previous versions of a directory backed up using Salt\(aqs \fBfile -state backup\fP system. -.INDENT 7.0 -.TP -.B path -The directory on the minion to check for backups -.TP -.B limit -Limit the number of results to the most recent N backups -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq file.list_backups_dir /foo/bar/baz/ -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.file.lstat(path) New in version 2014.1.0. @@ -61009,6 +56547,8 @@ salt \(aq*\(aq file.mkdir /opt/jetty/context .INDENT 0.0 .TP .B salt.modules.file.mknod(name, ntype, major=0, minor=0, user=None, group=None, mode=\(aq0600\(aq) +.INDENT 7.0 +.INDENT 3.5 New in version 0.17.0. .sp @@ -61016,6 +56556,8 @@ Create a block device, character device, or fifo pipe. Identical to the gnu mknod. .sp CLI Examples: +.UNINDENT +.UNINDENT .INDENT 7.0 .INDENT 3.5 .sp @@ -61091,68 +56633,14 @@ salt \(aq*\(aq file.mknod_fifo /dev/fifo .UNINDENT .INDENT 0.0 .TP -.B salt.modules.file.move(src, dst) -Move a file or directory -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq file.move /path/to/src /path/to/dst -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.file.normpath(path) -Returns Normalize path, eliminating double slashes, etc. -.sp -New in version 2015.2. - -.sp -This can be useful at the CLI but is frequently useful when scripting. -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -{%\- from salt[\(aqfile.normpath\(aq](tpldir + \(aq/../vars.jinja\(aq) import parent_vars %} -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq file.normpath \(aqa/b/c/..\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.file.open_files(by_pid=False) Return a list of all physical open files on the system. .sp CLI Examples: .INDENT 7.0 .INDENT 3.5 -.sp -.nf -.ft C salt \(aq*\(aq file.open_files salt \(aq*\(aq file.open_files by_pid=True -.ft P -.fi .UNINDENT .UNINDENT .UNINDENT @@ -61266,7 +56754,7 @@ Prepend text to the beginning of a file .B path path to file .TP -.B \fI*args\fP +.B args strings to prepend to the file .UNINDENT .sp @@ -61473,81 +56961,90 @@ Replace occurrences of a pattern in a file This is a pure Python implementation that wraps Python\(aqs \fI\%sub()\fP\&. .INDENT 7.0 .TP -.B path -Filesystem path to the file to be edited -.TP -.B pattern -Python\(aqs regular expression search +.B Parameters +.INDENT 7.0 +.IP \(bu 2 +\fBpath\fP \-\- Filesystem path to the file to be edited +.IP \(bu 2 +\fBpattern\fP \-\- Python\(aqs regular expression search \fI\%https://docs.python.org/2/library/re.html\fP +.UNINDENT +.UNINDENT +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +salt \(aq*\(aq file.replace /path/to/file pattern="bind\-address\es*=" repl=\(aqbind\-address:\(aq +.ft P +.fi +.UNINDENT +.UNINDENT +.INDENT 7.0 .TP -.B repl -The replacement text -.TP -.B count -Maximum number of pattern occurrences to be replaced -.TP -.B flags (list or int) -A list of flags defined in the \fI\%re module documentation\fP\&. Each list item should be a string that will +.B Parameters +.INDENT 7.0 +.IP \(bu 2 +\fBrepl\fP \-\- The replacement text +.IP \(bu 2 +\fBcount\fP \-\- Maximum number of pattern occurrences to be replaced +.IP \(bu 2 +\fBflags\fP (\fIlist or int\fP) \-\- A list of flags defined in the \fI\%re module documentation\fP\&. Each list item should be a string that will correlate to the human\-friendly flag name. E.g., \fB[\(aqIGNORECASE\(aq, \(aqMULTILINE\(aq]\fP\&. Note: multiline searches must specify \fBfile\fP as the \fBbufsize\fP argument below. -.TP -.B bufsize (int or str) -How much of the file to buffer into memory at once. The +.IP \(bu 2 +\fBbufsize\fP (\fIint or str\fP) \-\- How much of the file to buffer into memory at once. The default value \fB1\fP processes one line at a time. The special value \fBfile\fP may be specified which will read the entire file into memory before processing. Note: multiline searches must specify \fBfile\fP buffering. -.TP -.B append_if_not_found -New in version 2014.7.0. - +.IP \(bu 2 +\fBappend_if_not_found\fP \-\- .sp If pattern is not found and set to \fBTrue\fP then, the content will be appended to the file. -Default is \fBFalse\fP -.TP -.B prepend_if_not_found +.sp New in version 2014.7.0. + +.IP \(bu 2 +\fBprepend_if_not_found\fP \-\- .sp If pattern is not found and set to \fBTrue\fP -then, the content will be appended to the file. -Default is \fBFalse\fP -.TP -.B not_found_content +then, the content will be prepended to the file. +.sp New in version 2014.7.0. + +.IP \(bu 2 +\fBnot_found_content\fP \-\- .sp Content to use for append/prepend if not found. If -None (default), uses \fBrepl\fP\&. Useful when \fBrepl\fP uses references to group in +None (default), uses repl. Useful when repl uses references to group in pattern. -.TP -.B backup -The file extension to use for a backup of the file before -editing. Set to \fBFalse\fP to skip making a backup. Default -is \fB\&.bak\fP -.TP -.B dry_run -Don\(aqt make any edits to the file, Default is \fBFalse\fP -.TP -.B search_only -Just search for the pattern; ignore the replacement; -stop on the first match. Default is \fBFalse\fP -.TP -.B show_changes -Output a unified diff of the old file and the new -file. If \fBFalse\fP return a boolean if any changes were made. -Default is \fBTrue\fP .sp -\fBNOTE:\fP -.INDENT 7.0 -.INDENT 3.5 -Using this option will store two copies of the file in\-memory +New in version 2014.7.0. + + +.IP \(bu 2 +\fBbackup\fP \-\- The file extension to use for a backup of the file before +editing. Set to \fBFalse\fP to skip making a backup. +.IP \(bu 2 +\fBdry_run\fP \-\- Don\(aqt make any edits to the file +.IP \(bu 2 +\fBsearch_only\fP \-\- Just search for the pattern; ignore the replacement; +stop on the first match +.IP \(bu 2 +\fBshow_changes\fP \-\- Output a unified diff of the old file and the new +file. If \fBFalse\fP return a boolean if any changes were made. +Note: using this option will store two copies of the file in\-memory (the original version and the edited version) in order to generate the diff. .UNINDENT -.UNINDENT +.TP +.B Return type +bool or str .UNINDENT .sp If an equal sign (\fB=\fP) appears in an argument to a Salt command it is @@ -61560,13 +57057,12 @@ remote shell command by manually specifying the kwarg: .nf .ft C salt \(aq*\(aq file.replace /path/to/file pattern=\(aq=\(aq repl=\(aq:\(aq -salt \(aq*\(aq file.replace /path/to/file pattern="bind\-address\es*=" repl=\(aqbind\-address:\(aq .ft P .fi .UNINDENT .UNINDENT .sp -CLI Examples: +CLI Example: .INDENT 7.0 .INDENT 3.5 .sp @@ -62092,7 +57588,7 @@ Write text to a file, overwriting any existing contents. .B path path to file .TP -.B \fI*args\fP +.B args strings to write to the file .UNINDENT .sp @@ -62130,196 +57626,6 @@ salt \(aq*\(aq file.write /etc/motd args="[\(aqcheese=spam\(aq,\(aqspam=cheese\( .UNINDENT .UNINDENT .UNINDENT -.SS salt.modules.firewalld -.sp -Support for firewalld -.INDENT 0.0 -.TP -.B salt.modules.firewalld.add_service(name, zone=None, permanent=True) -Add a service for zone. If zone is omitted, default zone will be used. -.sp -CLI Example: -.sp -To assign a service to a specific zone -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.firewalld.default_zone() -Print default zone for connections and interfaces -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq firewalld.default_zone -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.firewalld.delete_service(name, restart=True) -Delete an existing service -.sp -CLI Example: -.sp -By default firewalld will be reloaded. However, to avoid reloading -you need to specify the restart as False -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.firewalld.delete_zone(zone, restart=True) -Delete an existing zone -.sp -CLI Example: -.sp -By default firewalld will be reloaded. However, to avoid reloading -you need to specify the restart as False -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.firewalld.get_icmp_types() -Print predefined icmptypes -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq firewalld.get_icmp_types -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.firewalld.get_services() -Print predefined services -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq firewalld.get_services -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.firewalld.get_zones() -Print predefined zones -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq firewalld.get_zones -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.firewalld.list_all(zone=None) -List everything added for or enabled in a zone -.sp -CLI Example: -.sp -List a specific zone -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.firewalld.list_services(zone=None) -List services added for zone as a space separated list. -If zone is omitted, default zone will be used. -.sp -CLI Example: -.sp -List a specific zone -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.firewalld.list_zones() -List everything added for or enabled in all zones -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq firewalld.list_zones -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.firewalld.new_service(name, restart=True) -Add a new service -.sp -CLI Example: -.sp -By default firewalld will be reloaded. However, to avoid reloading -you need to specify the restart as False -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.firewalld.new_zone(zone, restart=True) -Add a new zone -.sp -CLI Example: -.sp -By default firewalld will be reloaded. However, to avoid reloading -you need to specify the restart as False -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.firewalld.remove_service(name, zone=None, permanent=True) -Remove a service from zone. This option can be specified multiple times. -If zone is omitted, default zone will be used. -.sp -CLI Example: -.sp -To remove a service from a specific zone -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.firewalld.set_default_zone(zone) -Set default zone -.sp -CLI Example: -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.firewalld.version() -Return version from firewall\-cmd -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq firewalld.version -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.freebsd_sysctl .sp Module for viewing and modifying sysctl parameters @@ -63065,7 +58371,7 @@ New in version 2014.1.0. .sp This module allows you to install ports using \fBBATCH=yes\fP to bypass -configuration prompts. It is recommended to use the \fBports state\fP to install ports, but it it also possible to use +configuration prompts. It is recommended to use the the \fBports state\fP to install ports, but it it also possible to use this module exclusively from the command line. .INDENT 0.0 .INDENT 3.5 @@ -63374,7 +58680,7 @@ salt \(aq*\(aq service.enable .UNINDENT .INDENT 0.0 .TP -.B salt.modules.freebsdservice.enabled(name, **kwargs) +.B salt.modules.freebsdservice.enabled(name) Return True if the named service is enabled, false otherwise .INDENT 7.0 .TP @@ -63554,29 +58860,21 @@ salt \(aq*\(aq service.stop .UNINDENT .UNINDENT .UNINDENT -.SS salt.modules.fsutils -.sp -Run\-time utilities .SS salt.modules.gem .sp Manage ruby gems. .INDENT 0.0 .TP -.B salt.modules.gem.install(gems, ruby=None, gem_bin=None, runas=None, version=None, rdoc=False, ri=False, pre_releases=False, proxy=None) +.B salt.modules.gem.install(gems, ruby=None, runas=None, version=None, rdoc=False, ri=False, proxy=None) Installs one or several gems. .INDENT 7.0 .TP .B gems The gems to install .TP -.B gem_bin -None -Full path to \fBgem\fP binary to use. -.TP .B ruby None If RVM or rbenv are installed, the ruby version and gemset to use. -Ignored if \fBgem_bin\fP is specified. .TP .B runas None @@ -63595,9 +58893,6 @@ Generate RDoc documentation for the gem(s). False Generate RI documentation for the gem(s). .TP -.B pre_releases -Include pre\-releases in the available versions -.TP .B proxy None Use the specified HTTP proxy server for all outgoing traffic. @@ -63611,8 +58906,6 @@ CLI Example: .nf .ft C salt \(aq*\(aq gem.install vagrant - -salt \(aq*\(aq gem.install redphone gem_bin=/opt/sensu/embedded/bin/gem .ft P .fi .UNINDENT @@ -63620,21 +58913,16 @@ salt \(aq*\(aq gem.install redphone gem_bin=/opt/sensu/embedded/bin/gem .UNINDENT .INDENT 0.0 .TP -.B salt.modules.gem.list_(prefix=\(aq\(aq, ruby=None, runas=None, gem_bin=None) +.B salt.modules.gem.list_(prefix=\(aq\(aq, ruby=None, runas=None) List locally installed gems. .INDENT 7.0 .TP .B prefix : Only list gems when the name matches this prefix. .TP -.B gem_bin -None -Full path to \fBgem\fP binary to use. -.TP .B ruby None If RVM or rbenv are installed, the ruby version and gemset to use. -Ignored if \fBgem_bin\fP is specified. .TP .B runas None @@ -63655,21 +58943,16 @@ salt \(aq*\(aq gem.list .UNINDENT .INDENT 0.0 .TP -.B salt.modules.gem.sources_add(source_uri, ruby=None, runas=None, gem_bin=None) +.B salt.modules.gem.sources_add(source_uri, ruby=None, runas=None) Add a gem source. .INDENT 7.0 .TP .B source_uri The source URI to add. .TP -.B gem_bin -None -Full path to \fBgem\fP binary to use. -.TP .B ruby None If RVM or rbenv are installed, the ruby version and gemset to use. -Ignored if \fBgem_bin\fP is specified. .TP .B runas None @@ -63690,18 +58973,13 @@ salt \(aq*\(aq gem.sources_add http://rubygems.org/ .UNINDENT .INDENT 0.0 .TP -.B salt.modules.gem.sources_list(ruby=None, runas=None, gem_bin=None) +.B salt.modules.gem.sources_list(ruby=None, runas=None) List the configured gem sources. .INDENT 7.0 .TP -.B gem_bin -None -Full path to \fBgem\fP binary to use. -.TP .B ruby None If RVM or rbenv are installed, the ruby version and gemset to use. -Ignored if \fBgem_bin\fP is specified. .TP .B runas None @@ -63722,21 +59000,16 @@ salt \(aq*\(aq gem.sources_list .UNINDENT .INDENT 0.0 .TP -.B salt.modules.gem.sources_remove(source_uri, ruby=None, runas=None, gem_bin=None) +.B salt.modules.gem.sources_remove(source_uri, ruby=None, runas=None) Remove a gem source. .INDENT 7.0 .TP .B source_uri The source URI to remove. .TP -.B gem_bin -None -Full path to \fBgem\fP binary to use. -.TP .B ruby None If RVM or rbenv are installed, the ruby version and gemset to use. -Ignored if \fBgem_bin\fP is specified. .TP .B runas None @@ -63757,21 +59030,16 @@ salt \(aq*\(aq gem.sources_remove http://rubygems.org/ .UNINDENT .INDENT 0.0 .TP -.B salt.modules.gem.uninstall(gems, ruby=None, runas=None, gem_bin=None) +.B salt.modules.gem.uninstall(gems, ruby=None, runas=None) Uninstall one or several gems. .INDENT 7.0 .TP .B gems The gems to uninstall. .TP -.B gem_bin -None -Full path to \fBgem\fP binary to use. -.TP .B ruby None If RVM or rbenv are installed, the ruby version and gemset to use. -Ignored if \fBgem_bin\fP is specified. .TP .B runas None @@ -63792,21 +59060,16 @@ salt \(aq*\(aq gem.uninstall vagrant .UNINDENT .INDENT 0.0 .TP -.B salt.modules.gem.update(gems, ruby=None, runas=None, gem_bin=None) +.B salt.modules.gem.update(gems, ruby=None, runas=None) Update one or several gems. .INDENT 7.0 .TP .B gems The gems to update. .TP -.B gem_bin -None -Full path to \fBgem\fP binary to use. -.TP .B ruby None If RVM or rbenv are installed, the ruby version and gemset to use. -Ignored if \fBgem_bin\fP is specified. .TP .B runas None @@ -63827,7 +59090,7 @@ salt \(aq*\(aq gem.update vagrant .UNINDENT .INDENT 0.0 .TP -.B salt.modules.gem.update_system(version=\(aq\(aq, ruby=None, runas=None, gem_bin=None) +.B salt.modules.gem.update_system(version=\(aq\(aq, ruby=None, runas=None) Update rubygems. .INDENT 7.0 .TP @@ -63835,14 +59098,9 @@ Update rubygems. (newest) The version of rubygems to install. .TP -.B gem_bin -None -Full path to \fBgem\fP binary to use. -.TP .B ruby None If RVM or rbenv are installed, the ruby version and gemset to use. -Ignored if \fBgem_bin\fP is specified. .TP .B runas None @@ -64055,7 +59313,7 @@ salt \(aq*\(aq service.enable .UNINDENT .INDENT 0.0 .TP -.B salt.modules.gentoo_service.enabled(name, **kwargs) +.B salt.modules.gentoo_service.enabled(name) Return True if the named service is enabled, false otherwise .sp CLI Example: @@ -64539,7 +59797,7 @@ salt \(aq*\(aq git.checkout /path/to/repo rev=origin/mybranch opts=\-\-track .UNINDENT .INDENT 0.0 .TP -.B salt.modules.git.clone(cwd, repository, opts=None, user=None, identity=None, https_user=None, https_pass=None) +.B salt.modules.git.clone(cwd, repository, opts=None, user=None, identity=None) Clone a new repository .INDENT 7.0 .TP @@ -64560,14 +59818,6 @@ Run git as a user other than what the minion runs as .B identity None A path to a private key to use over SSH -.TP -.B https_user -None -HTTP Basic Auth username for HTTPS (only) clones -.TP -.B https_pass -None -HTTP Basic Auth password for HTTPS (only) clones .UNINDENT .sp CLI Example: @@ -64813,7 +60063,7 @@ salt \(aq*\(aq git.init /path/to/repo.git opts=\(aq\-\-bare\(aq .UNINDENT .INDENT 0.0 .TP -.B salt.modules.git.ls_remote(cwd, repository=\(aqorigin\(aq, branch=\(aqmaster\(aq, user=None, identity=None, https_user=None, https_pass=None) +.B salt.modules.git.ls_remote(cwd, repository=\(aqorigin\(aq, branch=\(aqmaster\(aq, user=None, identity=None) Returns the upstream hash for any given URL and branch. .INDENT 7.0 .TP @@ -64834,14 +60084,6 @@ run git as a user other than what the minion runs as .B identity none a path to a private key to use over ssh -.TP -.B https_user -None -HTTP Basic Auth username for HTTPS (only) clones -.TP -.B https_pass -None -HTTP Basic Auth password for HTTPS (only) clones .UNINDENT .sp CLI Example: @@ -65044,7 +60286,7 @@ salt \(aq*\(aq git.remote_get /path/to/repo upstream .UNINDENT .INDENT 0.0 .TP -.B salt.modules.git.remote_set(cwd, name=\(aqorigin\(aq, url=None, user=None, https_user=None, https_pass=None) +.B salt.modules.git.remote_set(cwd, name=\(aqorigin\(aq, url=None, user=None) sets a remote with name and URL like git remote add .INDENT 7.0 .TP @@ -65059,14 +60301,6 @@ defines the remote URL; should not be None! .B user None Run git as a user other than what the minion runs as -.TP -.B https_user -None -HTTP Basic Auth username for HTTPS (only) clones -.TP -.B https_pass -None -HTTP Basic Auth password for HTTPS (only) clones .UNINDENT .sp CLI Example: @@ -65447,19 +60681,6 @@ salt \(aq*\(aq glance.image_get Manage a glusterfs pool .INDENT 0.0 .TP -.B salt.modules.glusterfs.add_volume_bricks(name, bricks) -Add brick(s) to an existing volume -.INDENT 7.0 -.TP -.B name -Volume name -.TP -.B bricks -List of bricks to add to the volume -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.glusterfs.create(name, bricks, stripe=False, replica=False, device_vg=False, transport=\(aqtcp\(aq, start=False) Create a glusterfs volume. .INDENT 7.0 @@ -65529,29 +60750,6 @@ salt \(aq*\(aq glusterfs.list_peers .fi .UNINDENT .UNINDENT -.sp -GLUSTER direct CLI example (to show what salt is sending to gluster): -.INDENT 7.0 -.INDENT 3.5 -$ gluster peer status -.UNINDENT -.UNINDENT -.sp -GLUSTER CLI 3.4.4 return example (so we know what we are parsing): -.INDENT 7.0 -.INDENT 3.5 -Number of Peers: 2 -.sp -Hostname: ftp2 -Port: 24007 -Uuid: cbcb256b\-e66e\-4ec7\-a718\-21082d396c24 -State: Peer in Cluster (Connected) -.sp -Hostname: ftp3 -Uuid: 5ea10457\-6cb2\-427b\-a770\-7897509625e9 -State: Peer in Cluster (Connected) -.UNINDENT -.UNINDENT .UNINDENT .INDENT 0.0 .TP @@ -65591,25 +60789,6 @@ salt \(aqone.gluster.*\(aq glusterfs.peer two .fi .UNINDENT .UNINDENT -.sp -GLUSTER direct CLI example (to show what salt is sending to gluster): -.INDENT 7.0 -.INDENT 3.5 -$ gluster peer probe ftp2 -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B GLUSTER CLI 3.4.4 return example (so we know what we are parsing): -#if the "peer" is the local host: -peer probe: success: on localhost not needed -.sp -#if the peer was just added: -peer probe: success -.sp -#if the peer was already part of the cluster: -peer probe: success: host ftp2 port 24007 already in peer list -.UNINDENT .UNINDENT .INDENT 0.0 .TP @@ -65867,582 +61046,6 @@ salt \(aq*\(aq gnome.set user= schema=org.gnome.desktop.screensaver ke .UNINDENT .UNINDENT .UNINDENT -.SS salt.modules.gpg -.sp -Manage a GPG keychains, add keys, create keys, retrieve keys -from keyservers. Sign, encrypt and sign & encrypt text and files. -.sp -New in version 2015.2.0. - -.sp -\fBNOTE:\fP -.INDENT 0.0 -.INDENT 3.5 -The \fBpython\-gnupg\fP library and gpg binary are -required to be installed. -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.gpg.create_key(key_type=\(aqRSA\(aq, key_length=1024, name_real=\(aqAutogenerated Key\(aq, name_comment=\(aqGenerated by SaltStack\(aq, name_email=None, subkey_type=None, subkey_length=None, expire_date=None, use_passphrase=False, user=None) -Create a key in the GPG keychain -.sp -\fBNOTE:\fP -.INDENT 7.0 -.INDENT 3.5 -GPG key generation requires \fIa lot\fP of entropy and randomness. -Difficult to do over a remote connection, consider having another -process available which is generating randomness for the machine. -Also especially difficult on virtual machines, consider the rpg\-tools -package. -.sp -The create_key process takes awhile so increasing the timeout -may be necessary, e.g. \-t 15. -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B key_type -The type of the primary key to generate. It must be capable of signing. -\(aqRSA\(aq or \(aqDSA\(aq. -.TP -.B key_length -The length of the primary key in bits. -.TP -.B name_real -The real name of the user identity which is represented by the key. -.TP -.B name_comment -A comment to attach to the user id. -.TP -.B name_email -An email address for the user. -.TP -.B subkey_type -The type of the secondary key to generate. -.TP -.B subkey_length -The length of the secondary key in bits. -.TP -.B expire_date -The expiration date for the primary and any secondary key. -You can specify an ISO date, A number of days/weeks/months/years, -an epoch value, or 0 for a non\-expiring key. -.TP -.B use_passphrase -Whether to use a passphrase with the signing key. Passphrase is received from pillar. -.TP -.B user -Which user\(aqs keychain to access, defaults to user Salt is running as. Passing -the user as \(aqsalt\(aq will set the GPG home directory to /etc/salt/gpg. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \-t 15 \(aq*\(aq gpg.create_key -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.gpg.decrypt(user=None, text=None, filename=None, output=None, use_passphrase=False) -Decrypt a message or file -.INDENT 7.0 -.TP -.B user -Which user\(aqs keychain to access, defaults to user Salt is running as. Passing -the user as \(aqsalt\(aq will set the GPG home directory to /etc/salt/gpg. -.TP -.B text -The encrypted text to decrypt. -.TP -.B filename -The encrypted filename to decrypt. -.TP -.B output -The filename where the decrypted data will be written, default is standard out. -.TP -.B use_passphrase -Whether to use a passphrase with the signing key. Passphrase is received from pillar. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq gpg.decrypt filename=\(aq/path/to/important.file.gpg\(aq - -salt \(aq*\(aq gpg.decrypt filename=\(aq/path/to/important.file.gpg\(aq use_pasphrase=True -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.gpg.delete_key(keyid=None, fingerprint=None, delete_secret=False, user=None) -Get a key from the GPG keychain -.INDENT 7.0 -.TP -.B keyid -The keyid of the key to be deleted. -.TP -.B fingerprint -The fingerprint of the key to be deleted. -.TP -.B delete_secret -Whether to delete a corresponding secret key prior to deleting the public key. -Secret keys must be deleted before deleting any corresponding public keys. -.TP -.B user -Which user\(aqs keychain to access, defaults to user Salt is running as. Passing -the user as \(aqsalt\(aq will set the GPG home directory to /etc/salt/gpg. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq gpg.delete_key keyid=3FAD9F1E - -salt \(aq*\(aq gpg.delete_key fingerprint=53C96788253E58416D20BCD352952C84C3252192 - -salt \(aq*\(aq gpg.delete_key keyid=3FAD9F1E user=username - -salt \(aq*\(aq gpg.delete_key keyid=3FAD9F1E user=username delete_secret=True -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.gpg.encrypt(user=None, recipients=None, text=None, filename=None, output=None, sign=None, use_passphrase=False) -Encrypt a message or file -.INDENT 7.0 -.TP -.B user -Which user\(aqs keychain to access, defaults to user Salt is running as. Passing -the user as \(aqsalt\(aq will set the GPG home directory to /etc/salt/gpg. -.TP -.B recipients -The fingerprints for those recipient whom the data is being encrypted for. -.TP -.B text -The text to encrypt. -.TP -.B filename -The filename to encrypt. -.TP -.B output -The filename where the signed file will be written, default is standard out. -.TP -.B sign -Whether to sign, in addition to encrypt, the data. True to use default key or fingerprint -to specify a different key to sign with. -.TP -.B use_passphrase -Whether to use a passphrase with the signing key. Passphrase is received from pillar. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq gpg.encrypt text=\(aqHello there. How are you?\(aq - -salt \(aq*\(aq gpg.encrypt filename=\(aq/path/to/important.file\(aq - -salt \(aq*\(aq gpg.encrypt filename=\(aq/path/to/important.file\(aq use_pasphrase=True -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.gpg.export_key(keyids=None, secret=False, user=None) -Export a key from the GPG keychain -.INDENT 7.0 -.TP -.B keyids -The keyid(s) of the key(s) to be exported. Can be specified as a comma -separated string or a list. Anything which GnuPG itself accepts to -identify a key \- for example, the keyid or the fingerprint could be used. -.TP -.B secret -Export the secret key identified by the keyid information passed. -.TP -.B user -Which user\(aqs keychain to access, defaults to user Salt is running as. Passing -the user as \(aqsalt\(aq will set the GPG home directory to /etc/salt/gpg. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq gpg.export_key keyids=3FAD9F1E - -salt \(aq*\(aq gpg.export_key keyids=3FAD9F1E secret=True - -salt \(aq*\(aq gpg.export_key keyid="[\(aq3FAD9F1E\(aq,\(aq3FBD8F1E\(aq]" user=username -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.gpg.get_key(keyid=None, fingerprint=None, user=None) -Get a key from the GPG keychain -.INDENT 7.0 -.TP -.B keyid -The keyid of the key to be retrieved. -.TP -.B fingerprint -The fingerprint of the key to be retrieved. -.TP -.B user -Which user\(aqs keychain to access, defaults to user Salt is running as. Passing -the user as \(aqsalt\(aq will set the GPG home directory to /etc/salt/gpg. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq gpg.get_key keyid=3FAD9F1E - -salt \(aq*\(aq gpg.get_key fingerprint=53C96788253E58416D20BCD352952C84C3252192 - -salt \(aq*\(aq gpg.get_key keyid=3FAD9F1E user=username -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.gpg.get_secret_key(keyid=None, fingerprint=None, user=None) -Get a key from the GPG keychain -.INDENT 7.0 -.TP -.B keyid -The keyid of the key to be retrieved. -.TP -.B fingerprint -The fingerprint of the key to be retrieved. -.TP -.B user -Which user\(aqs keychain to access, defaults to user Salt is running as. Passing -the user as \(aqsalt\(aq will set the GPG home directory to /etc/salt/gpg. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq gpg.get_secret_key keyid=3FAD9F1E - -salt \(aq*\(aq gpg.get_secret_key fingerprint=53C96788253E58416D20BCD352952C84C3252192 - -salt \(aq*\(aq gpg.get_secret_key keyid=3FAD9F1E user=username -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.gpg.import_key(user=None, text=None, filename=None) -.INDENT 7.0 -.INDENT 3.5 -Import a key from text or file -.INDENT 0.0 -.TP -.B user -Which user\(aqs keychain to access, defaults to user Salt is running as. Passing -the user as \(aqsalt\(aq will set the GPG home directory to /etc/salt/gpg. -.TP -.B text -The text containing to import. -.TP -.B filename -The filename containing the key to import. -.UNINDENT -.sp -CLI Example: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq gpg.import_key text=\(aq\-\-\-\-\-BEGIN PGP PUBLIC KEY BLOCK\-\-\-\-\- -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.sp -\&... \-\-\-\-\-END PGP PUBLIC KEY BLOCK\-\-\-\-\-\(aq -.INDENT 7.0 -.INDENT 3.5 -salt \(aq*\(aq gpg.import_key filename=\(aq/path/to/public\-key\-file\(aq -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.gpg.list_keys(user=None) -List keys in GPG keychain -.INDENT 7.0 -.TP -.B user -Which user\(aqs keychain to access, defaults to user Salt is running as. Passing -the user as \(aqsalt\(aq will set the GPG home directory to /etc/salt/gpg. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq gpg.list_keys -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.gpg.list_secret_keys(user=None) -List secret keys in GPG keychain -.INDENT 7.0 -.TP -.B user -Which user\(aqs keychain to access, defaults to user Salt is running as. Passing -the user as \(aqsalt\(aq will set the GPG home directory to /etc/salt/gpg. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq gpg.list_secret_keys -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.gpg.receive_keys(keyserver=None, keys=None, user=None) -Receive key(s) from keyserver and add them to keychain -.INDENT 7.0 -.TP -.B keyserver -Keyserver to use for searching for GPG keys, defaults to pgp.mit.edu -.TP -.B keys -The keyID(s) to retrieve from the keyserver. Can be specified as a comma -separated string or a list. -.TP -.B user -Which user\(aqs keychain to access, defaults to user Salt is running as. Passing -the user as \(aqsalt\(aq will set the GPG home directory to /etc/salt/gpg. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq gpg.receive_key keys=\(aq3FAD9F1E\(aq - -salt \(aq*\(aq gpg.receive_key keys="[\(aq3FAD9F1E\(aq,\(aq3FBD9F2E\(aq]" - -salt \(aq*\(aq gpg.receive_key keys=3FAD9F1E user=username -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.gpg.search_keys(text, keyserver=None, user=None) -Search keys from keyserver -.INDENT 7.0 -.TP -.B text -Text to search the keyserver for, e.g. email address, keyID or fingerprint. -.TP -.B keyserver -Keyserver to use for searching for GPG keys, defaults to pgp.mit.edu -.TP -.B user -Which user\(aqs keychain to access, defaults to user Salt is running as. Passing -the user as \(aqsalt\(aq will set the GPG home directory to /etc/salt/gpg. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq gpg.search_keys user@example.com - -salt \(aq*\(aq gpg.search_keys user@example.com keyserver=keyserver.ubuntu.com - -salt \(aq*\(aq gpg.search_keys user@example.com keyserver=keyserver.ubuntu.com user=username -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.gpg.sign(user=None, keyid=None, text=None, filename=None, output=None, use_passphrase=False) -Sign message or file -.INDENT 7.0 -.TP -.B user -Which user\(aqs keychain to access, defaults to user Salt is running as. Passing -the user as \(aqsalt\(aq will set the GPG home directory to /etc/salt/gpg. -.TP -.B keyid -The keyid of the key to set the trust level for, defaults to -first key in the secret keyring. -.TP -.B text -The text to sign. -.TP -.B filename -The filename to sign. -.TP -.B output -The filename where the signed file will be written, default is standard out. -.TP -.B use_passphrase -Whether to use a passphrase with the signing key. Passphrase is received from pillar. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq gpg.sign text=\(aqHello there. How are you?\(aq - -salt \(aq*\(aq gpg.sign filename=\(aq/path/to/important.file\(aq - -salt \(aq*\(aq gpg.sign filename=\(aq/path/to/important.file\(aq use_pasphrase=True -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.gpg.trust_key(keyid=None, fingerprint=None, trust_level=None, user=None) -Set the trust level for a key in GPG keychain -.INDENT 7.0 -.TP -.B keyid -The keyid of the key to set the trust level for. -.TP -.B fingerprint -The fingerprint of the key to set the trust level for. -.TP -.B trust_level -The trust level to set for the specified key, must be one -of the following: -.INDENT 7.0 -.INDENT 3.5 -expired, unknown, not_trusted, marginally, fully, ultimately -.UNINDENT -.UNINDENT -.TP -.B user -Which user\(aqs keychain to access, defaults to user Salt is running as. Passing -the user as \(aqsalt\(aq will set the GPG home directory to /etc/salt/gpg. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq gpg.trust_key keyid=\(aq3FAD9F1E\(aq trust_level=\(aqmarginally\(aq - -salt \(aq*\(aq gpg.trust_key fingerprint=\(aq53C96788253E58416D20BCD352952C84C3252192\(aq trust_level=\(aqnot_trusted\(aq - -salt \(aq*\(aq gpg.trust_key keys=3FAD9F1E trust_level=\(aqultimately\(aq user=\(aqusername\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.gpg.verify(text=None, user=None, filename=None) -Verify a message or file -.INDENT 7.0 -.TP -.B text -The text to verify. -.TP -.B filename -The filename to verify. -.TP -.B user -Which user\(aqs keychain to access, defaults to user Salt is running as. Passing -the user as \(aqsalt\(aq will set the GPG home directory to /etc/salt/gpg. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq gpg.verify text=\(aqHello there. How are you?\(aq - -salt \(aq*\(aq gpg.verify filename=\(aq/path/to/important.file\(aq - -salt \(aq*\(aq gpg.verify filename=\(aq/path/to/important.file\(aq use_pasphrase=True -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.grains .sp Return/control aspects of the grains data @@ -66510,7 +61113,7 @@ salt \(aq*\(aq grains.delval key .UNINDENT .INDENT 0.0 .TP -.B salt.modules.grains.filter_by(lookup_dict, grain=\(aqos_family\(aq, merge=None, default=\(aqdefault\(aq, base=None) +.B salt.modules.grains.filter_by(lookup_dict, grain=\(aqos_family\(aq, merge=None, default=\(aqdefault\(aq) New in version 0.17.0. .sp @@ -66528,7 +61131,7 @@ tables for OS\-specific data. For example: {% set apache = salt[\(aqgrains.filter_by\(aq]({ \(aqDebian\(aq: {\(aqpkg\(aq: \(aqapache2\(aq, \(aqsrv\(aq: \(aqapache2\(aq}, \(aqRedHat\(aq: {\(aqpkg\(aq: \(aqhttpd\(aq, \(aqsrv\(aq: \(aqhttpd\(aq}, -}, default=\(aqDebian\(aq) %} +}), default=\(aqDebian\(aq %} myapache: pkg.installed: @@ -66585,8 +61188,8 @@ grains. For example, the value of the "os_family" grain for the current system could be used to pull values from the \fBlookup_dict\fP dictionary. .IP \(bu 2 -\fBmerge\fP \-\- A dictionary to merge with the results of the grain selection -from \fBlookup_dict\fP\&. This allows Pillar to override the values in the +\fBmerge\fP \-\- A dictionary to merge with the \fBlookup_dict\fP before doing +the lookup. This allows Pillar to override the values in the \fBlookup_dict\fP\&. This could be useful, for example, to override the values for non\-standard package names such as when using a different Python version from the default Python version provided by the OS @@ -66595,24 +61198,11 @@ Python version from the default Python version provided by the OS \fBdefault\fP \-\- .sp default lookup_dict\(aqs key used if the grain does not exists -or if the grain value has no match on lookup_dict. If unspecified -the value is "default". +or if the grain value has no match on lookup_dict. .sp New in version 2014.1.0. -.IP \(bu 2 -\fBbase\fP \-\- -.sp -A lookup_dict key to use for a base dictionary. The -grain\-selected \fBlookup_dict\fP is merged over this and then finally -the \fBmerge\fP dictionary is merged. This allows common values for -each case to be collected in the base and overridden by the grain -selection dictionary and the merge dictionary. Default is unset. -.sp -New in version 2015.2.0. - - .UNINDENT .UNINDENT .sp @@ -66625,9 +61215,6 @@ CLI Example: salt \(aq*\(aq grains.filter_by \(aq{Debian: Debheads rule, RedHat: I love my hat}\(aq # this one will render {D: {E: I, G: H}, J: K} salt \(aq*\(aq grains.filter_by \(aq{A: B, C: {D: {E: F,G: H}}}\(aq \(aqxxx\(aq \(aq{D: {E: I},J: K}\(aq \(aqC\(aq -# next one renders {A: {B: G}, D: J} -salt \(aq*\(aq grains.filter_by \(aq{default: {A: {B: C}, D: E}, F: {A: {B: G}}, H: {D: I}}\(aq \(aqxxx\(aq \(aq{D: J}\(aq \(aqF\(aq \(aqdefault\(aq -# next same as above when default=\(aqH\(aq instead of \(aqF\(aq renders {A: {B: C}, D: J} .ft P .fi .UNINDENT @@ -66906,7 +61493,7 @@ salt \(aq*\(aq grains.setvals "{\(aqkey1\(aq: \(aqval1\(aq, \(aqkey2\(aq: \(aqva .UNINDENT .SS salt.modules.groupadd .sp -Manage groups on Linux, OpenBSD and NetBSD +Manage groups on Linux and OpenBSD .INDENT 0.0 .TP .B salt.modules.groupadd.add(name, gid=None, system=False) @@ -67399,23 +61986,29 @@ A collection of hashing and encoding functions .INDENT 0.0 .TP .B salt.modules.hashutil.base64_decodestring(instr) +.INDENT 7.0 +.INDENT 3.5 Decode a base64\-encoded string .sp New in version 2014.7.0. .sp CLI Example: -.INDENT 7.0 +.INDENT 0.0 .INDENT 3.5 .sp .nf .ft C -salt \(aq*\(aq hashutil.base64_decodestring \(aqZ2V0IHNhbHRlZA==\en\(aq +salt \(aq*\(aq hashutil.base64_decodestring \(aqZ2V0IHNhbHRlZA== .ft P .fi .UNINDENT .UNINDENT .UNINDENT +.UNINDENT +.sp +\(aq +.UNINDENT .INDENT 0.0 .TP .B salt.modules.hashutil.base64_encodestring(instr) @@ -67566,7 +62159,7 @@ salt \(aq*\(aq hg.archive /path/to/repo output=/tmp/archive.tgz fmt=tgz .UNINDENT .INDENT 0.0 .TP -.B salt.modules.hg.clone(cwd, repository, opts=None, user=None, identity=None) +.B salt.modules.hg.clone(cwd, repository, opts=None, user=None) Clone a new repository .INDENT 7.0 .TP @@ -67583,13 +62176,6 @@ Any additional options to add to the command line .B user None Run hg as a user other than what the minion runs as -.TP -.B identity -None -Private SSH key on the minion server for authentication (\fI\%ssh://\fP) -.sp -New in version 2015.2.0. - .UNINDENT .sp CLI Example: @@ -67635,17 +62221,13 @@ salt \(aq*\(aq hg.describe /path/to/repo .UNINDENT .INDENT 0.0 .TP -.B salt.modules.hg.pull(cwd, opts=None, user=None, identity=None, repository=None) +.B salt.modules.hg.pull(cwd, opts=None, user=None) Perform a pull on the given repository .INDENT 7.0 .TP .B cwd The path to the Mercurial repository .TP -.B repository -None -Perform pull from the repository different from .hg/hgrc:[paths]:default -.TP .B opts None Any additional options to add to the command line @@ -67653,13 +62235,6 @@ Any additional options to add to the command line .B user None Run hg as a user other than what the minion runs as -.TP -.B identity -None -Private SSH key on the minion server for authentication (\fI\%ssh://\fP) -.sp -New in version 2015.2.0. - .UNINDENT .sp CLI Example: @@ -67955,428 +62530,6 @@ salt \(aq*\(aq webutil.userdel /etc/httpd/htpasswd larry .UNINDENT .UNINDENT .UNINDENT -.SS salt.modules.http -.sp -Module for making various web calls. Primarily designed for webhooks and the -like, but also useful for basic http testing. -.sp -New in version 2015.2. - -.INDENT 0.0 -.TP -.B salt.modules.http.query(url, **kwargs) -Query a resource, and decode the return data -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq http.query http://somelink.com/ -salt \(aq*\(aq http.query http://somelink.com/ method=POST params=\(aqkey1=val1&key2=val2\(aq -salt \(aq*\(aq http.query http://somelink.com/ method=POST data=\(aqsomecontent\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.http.update_ca_bundle(target=None, source=None, merge_files=None) -Update the local CA bundle file from a URL -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq http.update_ca_bundle -salt \(aq*\(aq http.update_ca_bundle target=/path/to/cacerts.pem -salt \(aq*\(aq http.update_ca_bundle source=https://example.com/cacerts.pem -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -If the \fBtarget\fP is not specified, it will be pulled from the \fBca_cert\fP -configuration variable available to the minion. If it cannot be found there, -it will be placed at \fB<>/cacerts.pem\fP\&. -.sp -If the \fBsource\fP is not specified, it will be pulled from the -\fBca_cert_url\fP configuration variable available to the minion. If it cannot -be found, it will be downloaded from the cURL website, using an http (not -https) URL. USING THE DEFAULT URL SHOULD BE AVOIDED! -.sp -\fBmerge_files\fP may also be specified, which includes a string or list of -strings representing a file or files to be appended to the end of the CA -bundle, once it is downloaded. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq http.update_ca_bundle merge_files=/path/to/mycert.pem -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.SS salt.modules.ilo -.sp -Manage HP ILO -.INDENT 0.0 -.TP -.B depends -hponcfg (SmartStart Scripting Toolkit Linux Edition) -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.ilo.change_password(username, password) -Reset a users password -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq ilo.change_password damianMyerscough -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.ilo.change_username(old_username, new_username) -Change a username -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq ilo.change_username damian diana -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.ilo.configure_network(ip, netmask, gateway) -Configure Network Interface -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq ilo.configure_network [IP ADDRESS] [NETMASK] [GATEWAY] -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.ilo.configure_snmp(community, snmp_port=161, snmp_trapport=161) -Configure SNMP -.sp -CLI Example: -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.ilo.create_user(name, password, *privileges) -Create user -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq ilo.create_user damian secretagent VIRTUAL_MEDIA_PRIV -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -If no permissions are specify the user will only have a read\-only account. -.sp -Supported privelges: -.INDENT 7.0 -.IP \(bu 2 -ADMIN_PRIV -Enables the user to administer user accounts. -.IP \(bu 2 -REMOTE_CONS_PRIV -Enables the user to access the Remote Console functionality. -.IP \(bu 2 -RESET_SERVER_PRIV -Enables the user to remotely manipulate the server power setting. -.IP \(bu 2 -VIRTUAL_MEDIA_PRIV -Enables the user permission to access the virtual media functionality. -.IP \(bu 2 -CONFIG_ILO_PRIV -Enables the user to configure iLO settings. -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.ilo.delete_ssh_key(username) -Delete a users SSH key from the ILO -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq ilo.delete_user_sshkey damian -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.ilo.delete_user(username) -Delete a user -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq ilo.delete_user damian -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.ilo.disable_dhcp() -Disable DHCP -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq ilo.disable_dhcp -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.ilo.disable_ssh() -Disable the SSH daemon -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq ilo.disable_ssh -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.ilo.enable_dhcp() -Enable DHCP -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq ilo.enable_dhcp -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.ilo.enable_ssh() -Enable the SSH daemon -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq ilo.enable_ssh -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.ilo.get_user(username) -Returns local user information, excluding the password -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq ilo.get_user damian -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.ilo.global_settings() -Show global settings -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq ilo.global_settings -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.ilo.list_users() -List all users -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq ilo.list_users -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.ilo.list_users_info() -List all users in detail -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq ilo.list_users_info -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.ilo.network() -Grab the current network settings -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq ilo.network -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.ilo.set_http_port(port=80) -Configure the port HTTP should listen on -.sp -CLI Example: -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.ilo.set_https_port(port=443) -Configure the port HTTPS should listen on -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq ilo.set_https_port 4334 -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.ilo.set_ssh_key(public_key) -Configure SSH public keys for specific users -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq ilo.set_ssh_key "ssh\-dss AAAAB3NzaC1kc3MAAACBA... damian" -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The SSH public key needs to be DSA and the last argument in the key needs -to be the username (case\-senstive) of the ILO username. -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.ilo.set_ssh_port(port=22) -Enable SSH on a user defined port -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq ilo.set_ssh_port 2222 -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.img .sp Virtual machine image management tools @@ -69928,528 +64081,6 @@ salt \(aq*\(aq iptables.version family=ipv6 .UNINDENT .UNINDENT .UNINDENT -.SS salt.modules.jboss7 -.sp -Module for managing JBoss AS 7 through the CLI interface. -.INDENT 0.0 -.TP -.B In order to run each function, jboss_config dictionary with the following properties must be passed: -.INDENT 7.0 -.IP \(bu 2 -cli_path: the path to jboss\-cli script, for example: \(aq/opt/jboss/jboss\-7.0/bin/jboss\-cli.sh\(aq -.IP \(bu 2 -controller: the ip addres and port of controller, for example: 10.11.12.13:9999 -.IP \(bu 2 -cli_user: username to connect to jboss administration console if necessary -.IP \(bu 2 -cli_password: password to connect to jboss administration console if necessary -.UNINDENT -.UNINDENT -.sp -Example: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -jboss_config: - cli_path: \(aq/opt/jboss/jboss\-7.0/bin/jboss\-cli.sh\(aq - controller: 10.11.12.13:9999 - cli_user: \(aqjbossadm\(aq - cli_password: \(aqjbossadm\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.jboss7.create_datasource(jboss_config, name, datasource_properties) -Create datasource in running jboss instance -.INDENT 7.0 -.TP -.B jboss_config -Configuration dictionary with properties specified above. -.TP -.B name -Datasource name -.TP -.B datasource_properties -.INDENT 7.0 -.TP -.B A dictionary of datasource properties to be created: -.INDENT 7.0 -.IP \(bu 2 -driver\-name: mysql -.IP \(bu 2 -connection\-url: \(aq\fI\%jdbc:mysql://localhost:3306/sampleDatabase\fP\(aq -.IP \(bu 2 -jndi\-name: \(aqjava:jboss/datasources/sampleDS\(aq -.IP \(bu 2 -user\-name: sampleuser -.IP \(bu 2 -password: secret -.IP \(bu 2 -min\-pool\-size: 3 -.IP \(bu 2 -use\-java\-context: True -.UNINDENT -.UNINDENT -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq jboss7.create_datasource \(aq{"cli_path": "integration.modules.sysmod.SysModuleTest.test_valid_docs", "controller": "10.11.12.13:9999", "cli_user": "jbossadm", "cli_password": "jbossadm"}\(aq \(aqmy_datasource\(aq \(aq{"driver\-name": "mysql", "connection\-url": "jdbc:mysql://localhost:3306/sampleDatabase", "jndi\-name": "java:jboss/datasources/sampleDS", "user\-name": "sampleuser", "password": "secret", "min\-pool\-size": 3, "use\-java\-context": True}\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.jboss7.create_simple_binding(jboss_config, binding_name, value) -Create a simple jndi binding in the running jboss instance -.INDENT 7.0 -.TP -.B jboss_config -Configuration dictionary with properties specified above. -.TP -.B binding_name -Binding name to be created -.TP -.B value -Binding value -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq jboss7.create_simple_binding \(aq{"cli_path": "integration.modules.sysmod.SysModuleTest.test_valid_docs", "controller": "10.11.12.13:9999", "cli_user": "jbossadm", "cli_password": "jbossadm"}\(aq my_binding_name my_binding_value -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.jboss7.deploy(jboss_config, source_file) -Deploy the application on the jboss instance from the local file system where minion is running. -.INDENT 7.0 -.TP -.B jboss_config -Configuration dictionary with properties specified above. -.TP -.B source_file -Source file to deploy from -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq jboss7.deploy \(aq{"cli_path": "integration.modules.sysmod.SysModuleTest.test_valid_docs", "controller": "10.11.12.13:9999", "cli_user": "jbossadm", "cli_password": "jbossadm"}\(aq /opt/deploy_files/my_deploy -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.jboss7.list_deployments(jboss_config) -List all deployments on the jboss instance -.INDENT 7.0 -.TP -.B jboss_config -.INDENT 7.0 -.INDENT 3.5 -Configuration dictionary with properties specified above. -.UNINDENT -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq jboss7.list_deployments \(aq{"cli_path": "integration.modules.sysmod.SysModuleTest.test_valid_docs", "controller": "10.11.12.13:9999", "cli_user": "jbossadm", "cli_password": "jbossadm"}\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.jboss7.read_datasource(jboss_config, name) -Read datasource properties in the running jboss instance. -.INDENT 7.0 -.TP -.B jboss_config -Configuration dictionary with properties specified above. -.TP -.B name -Datasource name -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq jboss7.read_datasource \(aq{"cli_path": "integration.modules.sysmod.SysModuleTest.test_valid_docs", "controller": "10.11.12.13:9999", "cli_user": "jbossadm", "cli_password": "jbossadm"}\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.jboss7.read_simple_binding(jboss_config, binding_name) -Read jndi binding in the running jboss instance -.INDENT 7.0 -.TP -.B jboss_config -Configuration dictionary with properties specified above. -.TP -.B binding_name -Binding name to be created -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C - -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -salt \(aq*\(aq jboss7.read_simple_binding \(aq{"cli_path": "integration.modules.sysmod.SysModuleTest.test_valid_docs", "controller": "10.11.12.13:9999", "cli_user": "jbossadm", "cli_password": "jbossadm"}\(aq my_binding_name -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.jboss7.reload(jboss_config) -Reload running jboss instance -.INDENT 7.0 -.TP -.B jboss_config -Configuration dictionary with properties specified above. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq jboss7.reload \(aq{"cli_path": "integration.modules.sysmod.SysModuleTest.test_valid_docs", "controller": "10.11.12.13:9999", "cli_user": "jbossadm", "cli_password": "jbossadm"}\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.jboss7.remove_datasource(jboss_config, name) -Remove an existing datasource from the running jboss instance. -.INDENT 7.0 -.TP -.B jboss_config -Configuration dictionary with properties specified above. -.TP -.B name -Datasource name -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq jboss7.remove_datasource \(aq{"cli_path": "integration.modules.sysmod.SysModuleTest.test_valid_docs", "controller": "10.11.12.13:9999", "cli_user": "jbossadm", "cli_password": "jbossadm"}\(aq my_datasource_name -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.jboss7.status(jboss_config, timeout=5) -Get status of running jboss instance. -.INDENT 7.0 -.TP -.B jboss_config -Configuration dictionary with properties specified above. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq jboss7.status \(aq{"cli_path": "integration.modules.sysmod.SysModuleTest.test_valid_docs", "controller": "10.11.12.13:9999", "cli_user": "jbossadm", "cli_password": "jbossadm"}\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.jboss7.stop_server(jboss_config) -Stop running jboss instance -.INDENT 7.0 -.TP -.B jboss_config -Configuration dictionary with properties specified above. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq jboss7.stop_server \(aq{"cli_path": "integration.modules.sysmod.SysModuleTest.test_valid_docs", "controller": "10.11.12.13:9999", "cli_user": "jbossadm", "cli_password": "jbossadm"}\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.jboss7.undeploy(jboss_config, deployment) -Undeploy the application from jboss instance -.INDENT 7.0 -.TP -.B jboss_config -Configuration dictionary with properties specified above. -.TP -.B deployment -Deployment name to undeploy -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq jboss7.undeploy \(aq{"cli_path": "integration.modules.sysmod.SysModuleTest.test_valid_docs", "controller": "10.11.12.13:9999", "cli_user": "jbossadm", "cli_password": "jbossadm"}\(aq my_deployment -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.jboss7.update_datasource(jboss_config, name, new_properties) -Update an existing datasource in running jboss instance. -If the property doesn\(aqt exist if will be created, if it does, it will be updated with the new value -.INDENT 7.0 -.TP -.B jboss_config -Configuration dictionary with properties specified above. -.TP -.B name -Datasource name -.TP -.B new_properties -.INDENT 7.0 -.TP -.B A dictionary of datasource properties to be updated. For example: -.INDENT 7.0 -.IP \(bu 2 -driver\-name: mysql -.IP \(bu 2 -connection\-url: \(aq\fI\%jdbc:mysql://localhost:3306/sampleDatabase\fP\(aq -.IP \(bu 2 -jndi\-name: \(aqjava:jboss/datasources/sampleDS\(aq -.IP \(bu 2 -user\-name: sampleuser -.IP \(bu 2 -password: secret -.IP \(bu 2 -min\-pool\-size: 3 -.IP \(bu 2 -use\-java\-context: True -.UNINDENT -.UNINDENT -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq jboss7.update_datasource \(aq{"cli_path": "integration.modules.sysmod.SysModuleTest.test_valid_docs", "controller": "10.11.12.13:9999", "cli_user": "jbossadm", "cli_password": "jbossadm"}\(aq \(aqmy_datasource\(aq \(aq{"driver\-name": "mysql", "connection\-url": "jdbc:mysql://localhost:3306/sampleDatabase", "jndi\-name": "java:jboss/datasources/sampleDS", "user\-name": "sampleuser", "password": "secret", "min\-pool\-size": 3, "use\-java\-context": True}\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.jboss7.update_simple_binding(jboss_config, binding_name, value) -Update the simple jndi binding in the running jboss instance -.INDENT 7.0 -.TP -.B jboss_config -Configuration dictionary with properties specified above. -.TP -.B binding_name -Binding name to be updated -.TP -.B value -New binding value -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq jboss7.update_simple_binding \(aq{"cli_path": "integration.modules.sysmod.SysModuleTest.test_valid_docs", "controller": "10.11.12.13:9999", "cli_user": "jbossadm", "cli_password": "jbossadm"}\(aq my_binding_name my_binding_value -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.SS salt.modules.jboss7_cli -.sp -Module for low\-level interaction with JbossAS7 through CLI. -.sp -This module exposes two ways of interaction with the CLI, either through commands or operations. -.sp -\fBNOTE:\fP -.INDENT 0.0 -.INDENT 3.5 -Following JBoss documentation (\fI\%https://developer.jboss.org/wiki/CommandLineInterface\fP): -"Operations are considered a low level but comprehensive way to manage the AS controller, i.e. if it can\(aqt be done with operations it can\(aqt be done in any other way. -Commands, on the other hand, are more user\-friendly in syntax, -although most of them still translate into operation requests and some of them even into a few -composite operation requests, i.e. commands also simplify some management operations from the user\(aqs point of view." -.UNINDENT -.UNINDENT -.sp -The difference between calling a command or operation is in handling the result. -Commands return a zero return code if operation is successful or return non\-zero return code and -print an error to standard output in plain text, in case of an error. -.sp -Operations return a json\-like structure, that contain more information about the result. -In case of a failure, they also return a specific return code. This module parses the output from the operations and -returns it as a dictionary so that an execution of an operation can then be verified against specific errors. -.INDENT 0.0 -.TP -.B In order to run each function, jboss_config dictionary with the following properties must be passed: -.INDENT 7.0 -.IP \(bu 2 -cli_path: the path to jboss\-cli script, for example: \(aq/opt/jboss/jboss\-7.0/bin/jboss\-cli.sh\(aq -.IP \(bu 2 -controller: the ip addres and port of controller, for example: 10.11.12.13:9999 -.IP \(bu 2 -cli_user: username to connect to jboss administration console if necessary -.IP \(bu 2 -cli_password: password to connect to jboss administration console if necessary -.UNINDENT -.UNINDENT -.sp -Example: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -jboss_config: - cli_path: \(aq/opt/jboss/jboss\-7.0/bin/jboss\-cli.sh\(aq - controller: 10.11.12.13:9999 - cli_user: \(aqjbossadm\(aq - cli_password: \(aqjbossadm\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.jboss7_cli.run_command(jboss_config, command, fail_on_error=True) -Execute a command against jboss instance through the CLI interface. -.INDENT 7.0 -.TP -.B jboss_config -Configuration dictionary with properties specified above. -.TP -.B command -Command to execute against jboss instance -.TP -.B fail_on_error (default=True) -Is true, raise CommandExecutionException exception if execution fails. -If false, \(aqsuccess\(aq property of the returned dictionary is set to False -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq jboss7_cli.run_command \(aq{"cli_path": "integration.modules.sysmod.SysModuleTest.test_valid_docs", "controller": "10.11.12.13:9999", "cli_user": "jbossadm", "cli_password": "jbossadm"}\(aq my_command -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.jboss7_cli.run_operation(jboss_config, operation, fail_on_error=True, retries=1) -Execute an operation against jboss instance through the CLI interface. -.INDENT 7.0 -.TP -.B jboss_config -Configuration dictionary with properties specified above. -.TP -.B operation -An operation to execute against jboss instance -.TP -.B fail_on_error (default=True) -Is true, raise CommandExecutionException exception if execution fails. -If false, \(aqsuccess\(aq property of the returned dictionary is set to False -.TP -.B retries: -Number of retries in case of "JBAS012144: Could not connect to remote" error. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq jboss7_cli.run_operation \(aq{"cli_path": "integration.modules.sysmod.SysModuleTest.test_valid_docs", "controller": "10.11.12.13:9999", "cli_user": "jbossadm", "cli_password": "jbossadm"}\(aq my_operation -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.junos .sp Module for interfacing to Junos devices @@ -70614,17 +64245,9 @@ keystone.password: verybadpass keystone.tenant: admin keystone.tenant_id: f80919baedab48ec8931f200c65a50df keystone.auth_url: \(aqhttp://127.0.0.1:5000/v2.0/\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.sp + OR (for token based authentication) -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C + keystone.token: \(aqADMIN\(aq keystone.endpoint: \(aqhttp://127.0.0.1:35357/v2.0\(aq .ft P @@ -70633,7 +64256,8 @@ keystone.endpoint: \(aqhttp://127.0.0.1:35357/v2.0\(aq .UNINDENT .sp If configuration for multiple openstack accounts is required, they can be -set up as different configuration profiles. For example: +set up as different configuration profiles: +For example: .INDENT 7.0 .INDENT 3.5 .sp @@ -70690,7 +64314,7 @@ CLI Examples: .nf .ft C salt \(aq*\(aq keystone.ec2_credentials_create name=admin tenant=admin -salt \(aq*\(aq keystone.ec2_credentials_create user_id=c965f79c4f864eaaa9c3b41904e67082 tenant_id=722787eb540849158668370dc627ec5f +salt \(aq*\(aq keystone.ec2_credentials_create user_id=c965f79c4f864eaaa9c3b41904e67082 tenant_id=722787eb540849158668370dc627ec5f .ft P .fi .UNINDENT @@ -70707,8 +64331,9 @@ CLI Examples: .sp .nf .ft C -salt \(aq*\(aq keystone.ec2_credentials_delete 860f8c2c38ca4fab989f9bc56a061a64 access_key=5f66d2f24f604b8bb9cd28886106f442 -salt \(aq*\(aq keystone.ec2_credentials_delete name=admin access_key=5f66d2f24f604b8bb9cd28886106f442 +salt \(aq*\(aq keystone.ec2_credentials_delete 860f8c2c38ca4fab989f9bc56a061a64 + access_key=5f66d2f24f604b8bb9cd28886106f442 +salt \(aq*\(aq keystone.ec2_credentials_delete name=admin access_key=5f66d2f24f604b8bb9cd28886106f442 .ft P .fi .UNINDENT @@ -70902,7 +64527,7 @@ CLI Examples: .sp .nf .ft C -salt \(aq*\(aq keystone.service_create nova compute \(aqOpenStack Compute Service\(aq +salt \(aq*\(aq keystone.service_create nova compute \(aqOpenStack Compute Service\(aq .ft P .fi .UNINDENT @@ -71174,7 +64799,7 @@ CLI Examples: .sp .nf .ft C -salt \(aq*\(aq keystone.user_role_add user_id=298ce377245c4ec9b70e1c639c89e654 tenant_id=7167a092ece84bae8cead4bf9d15bb3b role_id=ce377245c4ec9b70e1c639c89e8cead4 +salt \(aq*\(aq keystone.user_role_add user_id=298ce377245c4ec9b70e1c639c89e654 tenant_id=7167a092ece84bae8cead4bf9d15bb3b role_id=ce377245c4ec9b70e1c639c89e8cead4 salt \(aq*\(aq keystone.user_role_add user=admin tenant=admin role=admin .ft P .fi @@ -71192,7 +64817,7 @@ CLI Examples: .sp .nf .ft C -salt \(aq*\(aq keystone.user_role_list user_id=298ce377245c4ec9b70e1c639c89e654 tenant_id=7167a092ece84bae8cead4bf9d15bb3b +salt \(aq*\(aq keystone.user_role_list user_id=298ce377245c4ec9b70e1c639c89e654 tenant_id=7167a092ece84bae8cead4bf9d15bb3b salt \(aq*\(aq keystone.user_role_list user_name=admin tenant_name=admin .ft P .fi @@ -71210,7 +64835,7 @@ CLI Examples: .sp .nf .ft C -salt \(aq*\(aq keystone.user_role_remove user_id=298ce377245c4ec9b70e1c639c89e654 tenant_id=7167a092ece84bae8cead4bf9d15bb3b role_id=ce377245c4ec9b70e1c639c89e8cead4 +salt \(aq*\(aq keystone.user_role_remove user_id=298ce377245c4ec9b70e1c639c89e654 tenant_id=7167a092ece84bae8cead4bf9d15bb3b role_id=ce377245c4ec9b70e1c639c89e8cead4 salt \(aq*\(aq keystone.user_role_remove user=admin tenant=admin role=admin .ft P .fi @@ -71741,7 +65366,7 @@ scope=1 attrs=\(aq\(aq server=\(aqlocalhost\(aq port=\(aq7393\(aq tls=True bindp Support for Linux File Access Control Lists .INDENT 0.0 .TP -.B salt.modules.linux_acl.delfacl(acl_type, acl_name, *args, **kwargs) +.B salt.modules.linux_acl.delfacl(acl_type, acl_name, *args) Remove specific FACL from the specified file(s) .sp CLI Examples: @@ -71754,7 +65379,6 @@ salt \(aq*\(aq acl.delfacl user myuser /tmp/house/kitchen salt \(aq*\(aq acl.delfacl default:group mygroup /tmp/house/kitchen salt \(aq*\(aq acl.delfacl d:u myuser /tmp/house/kitchen salt \(aq*\(aq acl.delfacl g myuser /tmp/house/kitchen /tmp/house/livingroom -salt \(aq*\(aq acl.delfacl user myuser /tmp/house/kitchen recursive=True .ft P .fi .UNINDENT @@ -71762,7 +65386,7 @@ salt \(aq*\(aq acl.delfacl user myuser /tmp/house/kitchen recursive=True .UNINDENT .INDENT 0.0 .TP -.B salt.modules.linux_acl.getfacl(*args, **kwargs) +.B salt.modules.linux_acl.getfacl(*args) Return (extremely verbose) map of FACLs on specified file(s) .sp CLI Examples: @@ -71773,7 +65397,6 @@ CLI Examples: .ft C salt \(aq*\(aq acl.getfacl /tmp/house/kitchen salt \(aq*\(aq acl.getfacl /tmp/house/kitchen /tmp/house/livingroom -salt \(aq*\(aq acl.getfacl /tmp/house/kitchen /tmp/house/livingroom recursive=True .ft P .fi .UNINDENT @@ -71781,7 +65404,7 @@ salt \(aq*\(aq acl.getfacl /tmp/house/kitchen /tmp/house/livingroom recursive=Tr .UNINDENT .INDENT 0.0 .TP -.B salt.modules.linux_acl.modfacl(acl_type, acl_name, perms, *args, **kwargs) +.B salt.modules.linux_acl.modfacl(acl_type, acl_name, perms, *args) Add or modify a FACL for the specified file(s) .sp CLI Examples: @@ -71790,11 +65413,10 @@ CLI Examples: .sp .nf .ft C -salt \(aq*\(aq acl.modfacl user myuser rwx /tmp/house/kitchen -salt \(aq*\(aq acl.modfacl default:group mygroup rx /tmp/house/kitchen -salt \(aq*\(aq acl.modfacl d:u myuser 7 /tmp/house/kitchen -salt \(aq*\(aq acl.modfacl g mygroup 0 /tmp/house/kitchen /tmp/house/livingroom -salt \(aq*\(aq acl.modfacl user myuser rwx /tmp/house/kitchen recursive=True +salt \(aq*\(aq acl.addfacl user myuser rwx /tmp/house/kitchen +salt \(aq*\(aq acl.addfacl default:group mygroup rx /tmp/house/kitchen +salt \(aq*\(aq acl.addfacl d:u myuser 7 /tmp/house/kitchen +salt \(aq*\(aq acl.addfacl g mygroup 0 /tmp/house/kitchen /tmp/house/livingroom .ft P .fi .UNINDENT @@ -71819,7 +65441,7 @@ salt \(aq*\(aq acl.version .UNINDENT .INDENT 0.0 .TP -.B salt.modules.linux_acl.wipefacls(*args, **kwargs) +.B salt.modules.linux_acl.wipefacls(*args) Remove all FACLs from the specified file(s) .sp CLI Examples: @@ -71830,7 +65452,6 @@ CLI Examples: .ft C salt \(aq*\(aq acl.wipefacls /tmp/house/kitchen salt \(aq*\(aq acl.wipefacls /tmp/house/kitchen /tmp/house/livingroom -salt \(aq*\(aq acl.wipefacls /tmp/house/kitchen /tmp/house/livingroom recursive=True .ft P .fi .UNINDENT @@ -71912,23 +65533,6 @@ salt \(aq*\(aq lvm.lvremove lvname vgname force=True .UNINDENT .INDENT 0.0 .TP -.B salt.modules.linux_lvm.lvresize(size, lvpath) -Return information about the logical volume(s) -.sp -CLI Examples: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq lvm.lvresize +12M /dev/mapper/vg1\-test -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.linux_lvm.pvcreate(devices, **kwargs) Set a physical device to be used as an LVM physical volume .sp @@ -72035,24 +65639,6 @@ salt \(aq*\(aq lvm.vgdisplay nova\-volumes .UNINDENT .INDENT 0.0 .TP -.B salt.modules.linux_lvm.vgextend(vgname, devices) -Add physical volumes to an LVM volume group -.sp -CLI Examples: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt mymachine lvm.vgextend my_vg /dev/sdb1,/dev/sdb2 -salt mymachine lvm.vgextend my_vg /dev/sdb1 -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.linux_lvm.vgremove(vgname) Remove an LVM volume group .sp @@ -72192,13 +65778,8 @@ salt \(aq*\(aq locale.avail \(aqen_US.UTF\-8\(aq .UNINDENT .INDENT 0.0 .TP -.B salt.modules.localemod.gen_locale(locale, **kwargs) -Generate a locale. Options: -.INDENT 7.0 -.TP -.B verbose -Show extra warnings about errors that are normally ignored. -.UNINDENT +.B salt.modules.localemod.gen_locale(locale) +Generate a locale. .sp New in version 2014.7.0. @@ -72782,40 +66363,6 @@ lxc package for distribution lxc >= 1.0 (even beta alpha) is required .INDENT 0.0 .TP -.B salt.modules.lxc.apply_network_profile(name, network_profile, nic_opts=None) -New in version 2015.2.0. - -.sp -Apply a network profile to a container -.INDENT 7.0 -.TP -.B network_profile -profile name or default values (dict) -.TP -.B nic_opts -values to override in defaults (dict) -indexed by nic card names -.UNINDENT -.sp -CLI Examples: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aqminion\(aq lxc.apply_network_profile web1 centos -salt \(aqminion\(aq lxc.apply_network_profile web1 centos \e - nic_opts="{\(aqeth0\(aq: {\(aqmac\(aq: \(aqxx:xx:xx:xx:xx:xx\(aq}}" -salt \(aqminion\(aq lxc.apply_network_profile web1 \e - "{\(aqeth0\(aq: {\(aqmac\(aq: \(aqxx:xx:xx:xx:xx:yy\(aq}}" - nic_opts="{\(aqeth0\(aq: {\(aqmac\(aq: \(aqxx:xx:xx:xx:xx:xx\(aq}}" -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.lxc.attachable(name) Return True if the named container can be attached to via the lxc\-attach command @@ -72834,9 +66381,20 @@ salt \(aqminion\(aq lxc.attachable ubuntu .UNINDENT .INDENT 0.0 .TP -.B salt.modules.lxc.bootstrap(name, config=None, approve_key=True, install=True, pub_key=None, priv_key=None, bootstrap_url=None, force_install=False, unconditional_install=False, bootstrap_delay=None, bootstrap_args=None, bootstrap_shell=None) +.B salt.modules.lxc.bootstrap(name, config=None, approve_key=True, install=True, pub_key=None, priv_key=None, bootstrap_url=None, force_install=False, unconditional_install=False, bootstrap_args=None, bootstrap_shell=None) Install and configure salt in a container. .INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +salt \(aqminion\(aq lxc.bootstrap name [config=config_data] \e + [approve_key=(True|False)] [install=(True|False)] +.ft P +.fi +.UNINDENT +.UNINDENT +.INDENT 7.0 .TP .B config Minion configuration options. By default, the \fBmaster\fP option is set @@ -72854,13 +66412,6 @@ This can be either a filepath or a string representing the key .B priv_key Explicit private key to pressed the minion with (optional). This can be either a filepath or a string representing the key -.TP -.B bootstrap_delay -Delay in seconds between end of container creation and bootstrapping. -Useful when waiting for container to obtain a DHCP lease. -.sp -New in version 2015.2.0. - .TP .B bootstrap_url url, content or filepath to the salt bootstrap script @@ -72883,14 +66434,13 @@ if a salt minion is already present in the container Run the script even if the container seems seeded .UNINDENT .sp -CLI Examples: +CLI Example: .INDENT 7.0 .INDENT 3.5 .sp .nf .ft C -salt \(aqminion\(aq lxc.bootstrap container_name [config=config_data] \e - [approve_key=(True|False)] [install=(True|False)] +salt \(aq*\(aq lxc.bootstrap ubuntu .ft P .fi .UNINDENT @@ -72898,45 +66448,50 @@ salt \(aqminion\(aq lxc.bootstrap container_name [config=config_data] \e .UNINDENT .INDENT 0.0 .TP -.B salt.modules.lxc.clone(name, orig, profile=None, **kwargs) -Create a new container as a clone of another container -.INDENT 7.0 -.TP -.B name -Name of the container -.TP -.B orig -Name of the original container to be cloned -.TP -.B profile -Profile to use in container cloning (see -\fI\%lxc.get_container_profile\fP). Values in a profile will be -overridden by the \fBContainer Cloning Arguments\fP listed below. -.UNINDENT +.B salt.modules.lxc.clone(name, orig, snapshot=False, profile=None, **kwargs) +Create a new container. .sp -\fBContainer Cloning Arguments\fP -.INDENT 7.0 -.TP -.B snapshot -Use Copy On Write snapshots (LVM) -.TP -.B size -1G -Size of the volume to create. Only applicable if \fBbacking=lvm\fP\&. -.TP -.B backing -The type of storage to use. Set to \fBlvm\fP to use an LVM group. -Defaults to filesystem within /var/lib/lxc. -.UNINDENT -.sp -CLI Examples: +CLI Example: .INDENT 7.0 .INDENT 3.5 .sp .nf .ft C -salt \(aq*\(aq lxc.clone myclone orig=orig_container -salt \(aq*\(aq lxc.clone myclone orig=orig_container snapshot=True +salt \(aqminion\(aq lxc.clone name orig [snapshot=(True|False)] \e + [size=filesystem_size] [vgname=volume_group] \e + [profile=profile_name] +.ft P +.fi +.UNINDENT +.UNINDENT +.INDENT 7.0 +.TP +.B name +Name of the container. +.TP +.B orig +Name of the cloned original container +.TP +.B snapshot +Do we use Copy On Write snapshots (LVM) +.TP +.B size +Size of the container +.TP +.B vgname +LVM volume group(lxc) +.TP +.B profile +A LXC profile (defined in config or pillar). +.UNINDENT +.sp +CLI Example: +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +salt \(aq*\(aq lxc.clone myclone ubuntu "snapshot=True" .ft P .fi .UNINDENT @@ -72946,15 +66501,6 @@ salt \(aq*\(aq lxc.clone myclone orig=orig_container snapshot=True .TP .B salt.modules.lxc.cloud_init(name, vm_=None, **kwargs) Thin wrapper to lxc.init to be used from the saltcloud lxc driver -.INDENT 7.0 -.TP -.B name -Name of the container -may be None and then guessed from saltcloud mapping -.TP -.B \fIvm_\fP -saltcloud mapping defaults for the vm -.UNINDENT .sp CLI Example: .INDENT 7.0 @@ -72967,6 +66513,15 @@ salt \(aq*\(aq lxc.cloud_init foo .fi .UNINDENT .UNINDENT +.INDENT 7.0 +.TP +.B name +Name of the container. May be \fBNone\fP and then guessed from saltcloud +mapping. +.TP +.B \fBvm_\fP +saltcloud mapping defaults for the vm +.UNINDENT .UNINDENT .INDENT 0.0 .TP @@ -72983,14 +66538,23 @@ from the salt cloud driver because you find the argument to give easier here than using directly lxc.init .UNINDENT -.sp -\fBWARNING:\fP .INDENT 7.0 -.INDENT 3.5 -BE REALLY CAREFUL CHANGING DEFAULTS !!! +.TP +.B WARNING: BE REALLY CAREFUL CHANGING DEFAULTS !!! IT\(aqS A RETRO COMPATIBLE INTERFACE WITH THE SALT CLOUD DRIVER (ask kiorky). .UNINDENT +.sp +CLI Example: +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +salt \(aq*\(aq lxc.cloud_init_interface foo +.ft P +.fi +.UNINDENT .UNINDENT .INDENT 7.0 .TP @@ -73039,7 +66603,7 @@ Can be the keycontent or a filepath ip for the primary nic .TP .B mac -mac address for the primary nic +mac for the primary nic .TP .B netmask netmask for the primary nic (24) @@ -73052,11 +66616,11 @@ bridge for the primary nic (lxcbr0) network gateway for the container .TP .B additional_ips -additional ips which will be wired on the main bridge (br0) +additionnal ips which will be wired on the main bridge (br0) which is connected to internet. Be aware that you may use manual virtual mac addresses providen by you provider (online, ovh, etc). -This is a list of mappings {ip: \(aq\(aq, mac: \(aq\(aq, netmask:\(aq\(aq} +This is a list of mappings {ip: \(aq\(aq, mac: \(aq\(aq,netmask:\(aq\(aq} Set gateway to None and an interface with a gateway to escape from another interface that eth0. eg: @@ -73097,49 +66661,11 @@ administrative password for the container administrative users for the container default: [root] and [root, ubuntu] on ubuntu .UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq lxc.cloud_init_interface foo -.ft P -.fi -.UNINDENT -.UNINDENT .UNINDENT .INDENT 0.0 .TP -.B salt.modules.lxc.cp(name, source, dest, makedirs=False) -Copy a file or directory from the host into a container. -.INDENT 7.0 -.TP -.B name -Container name -.TP -.B source -File to be copied to the container -.TP -.B dest -Destination on the container. Must be an absolute path. -.sp -Changed in version 2015.2.0: If the destination is a directory, the file will be copied into -that directory. - -.UNINDENT -.sp -makedirs : False -.INDENT 7.0 -.INDENT 3.5 -Create the parent directory on the container if it does not already -exist. -.sp -New in version 2015.2.0. - -.UNINDENT -.UNINDENT +.B salt.modules.lxc.cp(name, src, dest) +Copy a file or directory from the host into a container .sp CLI Example: .INDENT 7.0 @@ -73155,165 +66681,8 @@ salt \(aqminion\(aq lxc.cp /tmp/foo /root/foo .UNINDENT .INDENT 0.0 .TP -.B salt.modules.lxc.create(name, config=None, profile=None, network_profile=None, nic_opts=None, **kwargs) +.B salt.modules.lxc.create(name, config=None, profile=None, options=None, **kwargs) Create a new container. -.INDENT 7.0 -.TP -.B name -Name of the container -.TP -.B config -The config file to use for the container. Defaults to system\-wide -config (usually in /etc/lxc/lxc.conf). -.TP -.B profile -Profile to use in container creation (see -\fI\%lxc.get_container_profile\fP). Values in a profile will be -overridden by the \fBContainer Creation Arguments\fP listed below. -.TP -.B network_profile -Network profile to use for container -.sp -New in version 2015.2.0. - -.UNINDENT -.sp -\fBContainer Creation Arguments\fP -.INDENT 7.0 -.TP -.B template -The template to use. For example, \fBubuntu\fP or \fBfedora\fP\&. Conflicts -with the \fBimage\fP argument. -.sp -\fBNOTE:\fP -.INDENT 7.0 -.INDENT 3.5 -The \fBdownload\fP template requires the following three parameters -to be defined in \fBoptions\fP: -.INDENT 0.0 -.IP \(bu 2 -\fBdist\fP \- The name of the distribution -.IP \(bu 2 -\fBrelease\fP \- Release name/version -.IP \(bu 2 -\fBarch\fP \- Architecture of the container -.UNINDENT -.sp -The available images can be listed using the \fI\%lxc.images\fP function. -.UNINDENT -.UNINDENT -.TP -.B options -Template\-specific options to pass to the lxc\-create command. These -correspond to the long options (ones beginning with two dashes) that -the template script accepts. For example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -options=\(aq{"dist": "centos", "release": "6", "arch": "amd64"}\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.TP -.B image -A tar archive to use as the rootfs for the container. Conflicts with -the \fBtemplate\fP argument. -.TP -.B backing -The type of storage to use. Set to \fBlvm\fP to use an LVM group. -Defaults to filesystem within /var/lib/lxc. -.TP -.B fstype -Filesystem type to use on LVM logical volume -.TP -.B size -1G -Size of the volume to create. Only applicable if \fBbacking=lvm\fP\&. -.TP -.B vgname -lxc -Name of the LVM volume group in which to create the volume for this -container. Only applicable if \fBbacking=lvm\fP\&. -.TP -.B lvname -Name of the LVM logical volume in which to create the volume for this -container. Only applicable if \fBbacking=lvm\fP\&. -.TP -.B nic_opts -give extra opts overriding network profile values -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.lxc.destroy(name, stop=False) -Destroy the named container. -.sp -\fBWARNING:\fP -.INDENT 7.0 -.INDENT 3.5 -Destroys all data associated with the container. -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B stop -False -If \fBTrue\fP, the container will be destroyed even if it is -running/frozen. -.sp -Changed in version 2015.2.0: Default value changed to \fBFalse\fP\&. This more closely matches the -behavior of \fBlxc\-destroy(1)\fP, and also makes it less likely that -an accidental command will destroy a running container that was -being used for important things. - -.UNINDENT -.sp -CLI Examples: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq lxc.destroy foo -salt \(aq*\(aq lxc.destroy foo stop=True -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.lxc.edit_conf(conf_file, out_format=\(aqsimple\(aq, read_only=False, lxc_config=None, **kwargs) -Edit an LXC configuration file. If a setting is already present inside the -file, its value will be replaced. If it does not exist, it will be appended -to the end of the file. Comments and blank lines will be kept in\-tact if -they already exist in the file. -.INDENT 7.0 -.TP -.B out_format: -Set to simple if you need backward compatbility (multiple items for a -simple key is not supported) -.TP -.B read_only: -return only the edited configuration without applying it -to the underlying lxc configuration file -.TP -.B lxc_config: -List of dict containning lxc configuration items -For network configuration, you also need to add the device it belongs -to, otherwise it will default to eth0. -Also, any change to a network parameter will result in the whole -network reconfiguration to avoid mismatchs, be aware of that ! -.UNINDENT -.sp -After the file is edited, its contents will be returned. By default, it -will be returned in \fBsimple\fP format, meaning an unordered dict (which -may not represent the actual file order). Passing in an \fBout_format\fP of -\fBcommented\fP will return a data structure which accurately represents the -order and content of the file. .sp CLI Example: .INDENT 7.0 @@ -73321,15 +66690,87 @@ CLI Example: .sp .nf .ft C -salt \(aqminion\(aq lxc.edit_conf /etc/lxc/mycontainer.conf \e - out_format=commented lxc.network.type=veth -salt \(aqminion\(aq lxc.edit_conf /etc/lxc/mycontainer.conf \e - out_format=commented \e - lxc_config="[{\(aqlxc.network.name\(aq: \(aqeth0\(aq, \e - \(aqlxc.network.ipv4\(aq: \(aq1.2.3.4\(aq}, - {\(aqlxc.network.name\(aq: \(aqeth2\(aq, \e - \(aqlxc.network.ipv4\(aq: \(aq1.2.3.5\(aq,\e - \(aqlxc.network.gateway\(aq: \(aq1.2.3.1\(aq}]" +salt \(aqminion\(aq lxc.create name [config=config_file] \e + [profile=profile] [template=template_name] \e + [backing=backing_store] [vgname=volume_group] \e + [size=filesystem_size] [options=template_options] +.ft P +.fi +.UNINDENT +.UNINDENT +.INDENT 7.0 +.TP +.B name +Name of the container. +.TP +.B config +The config file to use for the container. Defaults to system\-wide +config (usually in /etc/lxc/lxc.conf). +.TP +.B profile +A LXC profile (defined in config or pillar). +.TP +.B template +The template to use. E.g., \(aqubuntu\(aq or \(aqfedora\(aq. +.TP +.B backing +The type of storage to use. Set to \(aqlvm\(aq to use an LVM group. Defaults +to filesystem within /var/lib/lxc/. +.TP +.B vgname +Name of the LVM volume group in which to create the volume for this +container. Only applicable if backing=lvm. Defaults to \(aqlxc\(aq. +.TP +.B fstype +fstype to use on LVM lv. +.TP +.B size +Size of the volume to create. Only applicable if backing=lvm. +Defaults to 1G. +.TP +.B options +Template specific options to pass to the lxc\-create command. +.UNINDENT +.UNINDENT +.INDENT 0.0 +.TP +.B salt.modules.lxc.destroy(name, stop=True) +Destroy the named container. +WARNING: Destroys all data associated with the container. +.sp +CLI Example: +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +salt \(aq*\(aq lxc.destroy name [stop=(True|False)] +.ft P +.fi +.UNINDENT +.UNINDENT +.UNINDENT +.INDENT 0.0 +.TP +.B salt.modules.lxc.edit_conf(conf_file, out_format=\(aqsimple\(aq, **kwargs) +Edit an LXC configuration file. If a setting is already present inside the +file, its value will be replaced. If it does not exist, it will be appended +to the end of the file. Comments and blank lines will be kept in\-tact if +they already exist in the file. +.sp +After the file is edited, its contents will be returned. By default, it +will be returned in \fBsimple\fP format, meaning an unordered dict (which +may not represent the actual file order). Passing in an \fBout_format\fP of +\fBcommented\fP will return a data structure which accurately represents the +order and content of the file. +.sp +CLI Examples: +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +salt \(aqminion\(aq lxc.edit_conf /etc/lxc/mycontainer.conf out_format=commented lxc.network.type=veth .ft P .fi .UNINDENT @@ -73354,18 +66795,8 @@ salt \(aq*\(aq lxc.exists name .UNINDENT .INDENT 0.0 .TP -.B salt.modules.lxc.freeze(name, **kwargs) -Freeze the named container -.INDENT 7.0 -.TP -.B start -False -If \fBTrue\fP and the container is stopped, the container will be started -before attempting to freeze. -.sp -New in version 2015.2.0. - -.UNINDENT +.B salt.modules.lxc.freeze(name) +Freeze the named container. .sp CLI Example: .INDENT 7.0 @@ -73381,38 +66812,10 @@ salt \(aq*\(aq lxc.freeze name .UNINDENT .INDENT 0.0 .TP -.B salt.modules.lxc.get_container_profile(name=None, **kwargs) -New in version 2015.2.0. - -.sp -Gather a pre\-configured set of container configuration parameters. If no -arguments are passed, an empty profile is returned. -.sp -Profiles can be defined in the minion or master config files, or in pillar -or grains, and are loaded using \fBconfig.get\fP\&. The key under which LXC profiles must be -configured is \fBlxc.container_profile.profile_name\fP\&. An example container -profile would be as follows: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -lxc.container_profile: - ubuntu: - template: ubuntu - backing: lvm - vgname: lxc - size: 1G -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Parameters set in a profile can be overridden by passing additional -container creation arguments (such as the ones passed to \fI\%lxc.create\fP) to this function. -.sp -A profile can be defined either as the name of the profile, or a dictionary -of variable names and values. See the \fILXC Tutorial\fP for more information on how to use LXC profiles. +.B salt.modules.lxc.get_base(**kwargs) +If the needed base does not exist, then create it, if it does exist +create nothing and return the name of the base lxc container so +it can be cloned. .sp CLI Example: .INDENT 7.0 @@ -73420,103 +66823,11 @@ CLI Example: .sp .nf .ft C -\&.. code\-block:: bash -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.INDENT 3.5 -salt\-call lxc.get_container_profile centos -salt\-call lxc.get_container_profile ubuntu template=ubuntu backing=overlayfs -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.lxc.get_network_profile(name=None) -New in version 2015.2.0. - -.sp -Gather a pre\-configured set of network configuration parameters. If no -arguments are passed, the following default profile is returned: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -{\(aqeth0\(aq: {\(aqlink\(aq: \(aqbr0\(aq, \(aqtype\(aq: \(aqveth\(aq, \(aqflags\(aq: \(aqup\(aq}} -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Profiles can be defined in the minion or master config files, or in pillar -or grains, and are loaded using \fBconfig.get\fP\&. The key under which LXC profiles must be -configured is \fBlxc.network_profile\fP\&. An example network profile would be -as follows: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -lxc.network_profile.centos: - eth0: - link: br0 - type: veth - flags: up -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Parameters set in a profile can be overridden by passing additional -arguments to this function. -.sp -A profile can be passed either as the name of the profile, or a -dictionary of variable names and values. See the \fILXC Tutorial\fP for more information on how to use network -profiles. -.sp -\fBWARNING:\fP -.INDENT 7.0 -.INDENT 3.5 -The \fBipv4\fP, \fBipv6\fP, \fBgateway\fP, and \fBlink\fP (bridge) settings in -network profiles will only work if the container doesnt redefine the -network configuration (for example in -\fB/etc/sysconfig/network\-scripts/ifcfg\-\fP on -RHEL/CentOS, or \fB/etc/network/interfaces\fP on Debian/Ubuntu/etc.) -.UNINDENT -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -\&.. code\-block:: bash -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.INDENT 3.5 -salt\-call lxc.get_network_profile default -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.lxc.get_parameter(name, parameter) -Returns the value of a cgroup parameter for a container -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq lxc.get_parameter container_name memory.limit_in_bytes +salt \(aqminion\(aq lxc.init name [cpuset=cgroups_cpuset] \e + [nic=nic_profile] [profile=lxc_profile] \e + [nic_opts=nic_opts] [image=network image path]\e + [seed=(True|False)] [install=(True|False)] \e + [config=minion_config] .ft P .fi .UNINDENT @@ -73524,26 +66835,16 @@ salt \(aq*\(aq lxc.get_parameter container_name memory.limit_in_bytes .UNINDENT .INDENT 0.0 .TP -.B salt.modules.lxc.images(dist=None) -New in version 2015.2.0. - +.B salt.modules.lxc.get_parameter(name, parameter) +Returns the value of a cgroup parameter for a container. .sp -List the available images for LXC\(aqs \fBdownload\fP template. -.INDENT 7.0 -.TP -.B dist -None -Filter results to a single Linux distribution -.UNINDENT -.sp -CLI Examples: +CLI Example: .INDENT 7.0 .INDENT 3.5 .sp .nf .ft C -salt myminion lxc.images -salt myminion lxc.images dist=centos +salt \(aq*\(aq lxc.get_parameter name parameter .ft P .fi .UNINDENT @@ -73552,7 +66853,7 @@ salt myminion lxc.images dist=centos .INDENT 0.0 .TP .B salt.modules.lxc.info(name) -Returns information about a container +Returns information about a container. .sp CLI Example: .INDENT 7.0 @@ -73568,20 +66869,39 @@ salt \(aq*\(aq lxc.info name .UNINDENT .INDENT 0.0 .TP -.B salt.modules.lxc.init(name, config=None, cpuset=None, cpushare=None, memory=None, profile=None, network_profile=, nic=, nic_opts=None, cpu=None, autostart=True, password=None, password_encrypted=None, users=None, dnsservers=None, searchdomains=None, bridge=None, gateway=None, pub_key=None, priv_key=None, force_install=False, unconditional_install=False, bootstrap_delay=None, bootstrap_args=None, bootstrap_shell=None, bootstrap_url=None, **kwargs) +.B salt.modules.lxc.init(name, cpuset=None, cpushare=None, memory=None, nic=\(aqdefault\(aq, profile=None, nic_opts=None, cpu=None, autostart=True, password=None, users=None, dnsservers=None, bridge=None, gateway=None, pub_key=None, priv_key=None, force_install=False, unconditional_install=False, bootstrap_args=None, bootstrap_shell=None, bootstrap_url=None, **kwargs) Initialize a new container. .sp -This is a partial idempotent function as if it is already provisioned, we -will reset a bit the lxc configuration file but much of the hard work will -be escaped as markers will prevent re\-execution of harmful tasks. +This is a partial idempotent function as if it is already +provisioned, we will reset a bit the lxc configuration +file but much of the hard work will be escaped as +markers will prevent re\-execution of harmful tasks. +.sp +CLI Example: +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +salt \(aqminion\(aq lxc.init name [cpuset=cgroups_cpuset] \e + [cpushare=cgroups_cpushare] [memory=cgroups_memory] \e + [nic=nic_profile] [profile=lxc_profile] \e + [nic_opts=nic_opts] [start=(True|False)] \e + [seed=(True|False)] [install=(True|False)] \e + [config=minion_config] [approve_key=(True|False) \e + [clone=original] [autostart=True] \e + [priv_key=/path_or_content] [pub_key=/path_or_content] \e + [bridge=lxcbr0] [gateway=10.0.3.1] \e + [dnsservers[dns1,dns2]] \e + [users=[foo]] password=\(aqsecret\(aq +.ft P +.fi +.UNINDENT +.UNINDENT .INDENT 7.0 .TP .B name -Name of the container -.TP -.B image -A tar archive to use as the rootfs for the container. Conflicts with -the \fBtemplate\fP argument. +Name of the container. .TP .B cpus Select a random number of cpu cores and assign it to the cpuset, if the @@ -73591,18 +66911,14 @@ cpuset option is set then this option will be ignored Explicitly define the cpus this container will be bound to .TP .B cpushare -cgroups cpu shares +cgroups cpu shares. .TP .B autostart autostart container on reboot .TP .B memory -cgroups memory limit, in MB -.sp -Changed in version 2015.2.0: If no value is passed, no limit is set. In earlier Salt versions, -not passing this value causes a 1024MB memory limit to be set, and -it was necessary to pass \fBmemory=0\fP to set no limit. - +cgroups memory limit, in MB. +(0 for nolimit, None for old default 1024MB) .TP .B gateway the ipv4 gateway to use @@ -73611,50 +66927,35 @@ the default does nothing more than lxcutils does .B bridge the bridge to use the default does nothing more than lxcutils does -.TP -.B network_profile -Network profile to use for the container -.sp -New in version 2015.2.0. - .TP .B nic -Deprecated since version 2015.2.0: Use \fBnetwork_profile\fP instead - -.TP -.B nic_opts -Extra options for network interfaces, will override -.sp -\fB{"eth0": {"hwaddr": "aa:bb:cc:dd:ee:ff", "ipv4": "10.1.1.1", "ipv6": "2001:db8::ff00:42:8329"}}\fP -.sp -or -.sp -\fB{"eth0": {"hwaddr": "aa:bb:cc:dd:ee:ff", "ipv4": "10.1.1.1/24", "ipv6": "2001:db8::ff00:42:8329"}}\fP +Network interfaces profile (defined in config or pillar). .TP .B users -Users for which the password defined in the \fBpassword\fP param should -be set. Can be passed as a comma separated list or a python list. -Defaults to just the \fBroot\fP user. +Sysadmins users to set the administrative password to +e.g. [root, ubuntu, sysadmin], default [root] and [root, ubuntu] +on ubuntu .TP .B password -Set the initial password for the users defined in the \fBusers\fP -parameter -.TP -.B password_encrypted -False -Set to \fBTrue\fP to denote a password hash instead of a plaintext -password -.sp -New in version 2015.2.0. - +Set the initial password for default sysadmin users, at least root +but also can be used for sudoers, e.g. [root, ubuntu, sysadmin] .TP .B profile A LXC profile (defined in config or pillar). This can be either a real profile mapping or a string to retrieve it in configuration .TP +.B nic_opts +Extra options for network interfaces. E.g: +.sp +\fB{"eth0": {"mac": "aa:bb:cc:dd:ee:ff", "ipv4": "10.1.1.1", "ipv6": "2001:db8::ff00:42:8329"}}\fP +.sp +or +.sp +\fB{"eth0": {"mac": "aa:bb:cc:dd:ee:ff", "ipv4": "10.1.1.1/24", "ipv6": "2001:db8::ff00:42:8329"}}\fP +.TP .B start -Start the newly\-created container +Start the newly created container. .TP .B dnsservers list of dns servers to set in the container, default [] (no setting) @@ -73682,22 +66983,12 @@ If explicit preseeding is not used; Attempt to request key approval from the master. Default: \fBTrue\fP .TP .B clone -Deprecated since version 2015.2.0: Use \fBclone_from\fP instead - -.TP -.B clone_from Original from which to use a clone operation to create the container. Default: \fBNone\fP -.TP -.B bootstrap_delay -Delay in seconds between end of container creation and bootstrapping. -Useful when waiting for container to obtain a DHCP lease. -.sp -New in version 2015.2.0. - .TP .B bootstrap_url See lxc.bootstrap +* .TP .B bootstrap_shell See lxc.bootstrap @@ -73713,6 +67004,35 @@ if a salt minion is already present in the container .B unconditional_install Run the script even if the container seems seeded .UNINDENT +.UNINDENT +.INDENT 0.0 +.TP +.B salt.modules.lxc.list_(extra=False) +List defined containers classified by status. +Status can be running, stopped, and frozen. +.INDENT 7.0 +.INDENT 3.5 +.INDENT 0.0 +.TP +.B extra +Also get per container specific info at once. +Warning: it will not return a collection of list +but a collection of mappings by status and then per +container name: +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +{\(aqrunning\(aq: [\(aqfoo\(aq]} # normal mode +{\(aqrunning\(aq: {\(aqfoo\(aq: {\(aqinfo1\(aq: \(aqbar\(aq}} # extra mode +.ft P +.fi +.UNINDENT +.UNINDENT +.UNINDENT +.UNINDENT +.UNINDENT .sp CLI Example: .INDENT 7.0 @@ -73720,51 +67040,8 @@ CLI Example: .sp .nf .ft C -salt \(aqminion\(aq lxc.init name [cpuset=cgroups_cpuset] \e - [cpushare=cgroups_cpushare] [memory=cgroups_memory] \e - [nic=nic_profile] [profile=lxc_profile] \e - [nic_opts=nic_opts] [start=(True|False)] \e - [seed=(True|False)] [install=(True|False)] \e - [config=minion_config] [approve_key=(True|False) \e - [clone_from=original] [autostart=True] \e - [priv_key=/path_or_content] [pub_key=/path_or_content] \e - [bridge=lxcbr0] [gateway=10.0.3.1] \e - [dnsservers[dns1,dns2]] \e - [users=[foo]] [password=\(aqsecret\(aq] \e - [password_encrypted=(True|False)] -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.lxc.list_(extra=False, limit=None) -List containers classified by state -.INDENT 7.0 -.TP -.B extra -Also get per\-container specific info. This will change the return data. -Instead of returning a list of containers, a dictionary of containers -and each container\(aqs output from \fI\%lxc.info\fP\&. -.TP -.B limit -Return output matching a specific state (\fBfrozen\fP, \fBrunning\fP, or -\fBstopped\fP). -.sp -New in version 2015.2.0. - -.UNINDENT -.sp -CLI Examples: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C salt \(aq*\(aq lxc.list salt \(aq*\(aq lxc.list extra=True -salt \(aq*\(aq lxc.list limit=running .ft P .fi .UNINDENT @@ -73772,16 +67049,8 @@ salt \(aq*\(aq lxc.list limit=running .UNINDENT .INDENT 0.0 .TP -.B salt.modules.lxc.ls_(active=None) -Return a list of the containers available on the minion -.INDENT 7.0 -.TP -.B active -If \fBTrue\fP, return only active (i.e. running) containers -.sp -New in version 2015.2.0. - -.UNINDENT +.B salt.modules.lxc.ls() +Return just a list of the containers available .sp CLI Example: .INDENT 7.0 @@ -73790,7 +67059,6 @@ CLI Example: .nf .ft C salt \(aq*\(aq lxc.ls -salt \(aq*\(aq lxc.ls active=True .ft P .fi .UNINDENT @@ -73802,16 +67070,6 @@ salt \(aq*\(aq lxc.ls active=True Read in an LXC configuration file. By default returns a simple, unsorted dict, but can also return a more detailed structure including blank lines and comments. -.INDENT 7.0 -.INDENT 3.5 -.INDENT 0.0 -.TP -.B out_format: -set to \(aqsimple\(aq if you need the old and unsupported behavior. -This wont support the multiple lxc values (eg: multiple network nics) -.UNINDENT -.UNINDENT -.UNINDENT .sp CLI Examples: .INDENT 7.0 @@ -73820,7 +67078,7 @@ CLI Examples: .nf .ft C salt \(aqminion\(aq lxc.read_conf /etc/lxc/mycontainer.conf -salt \(aqminion\(aq lxc.read_conf /etc/lxc/mycontainer.conf out_format=commented +salt \(aqminion\(aq lxc.read_conf /etc/lxc/mycontainer.conf out_format=commented .ft P .fi .UNINDENT @@ -73828,22 +67086,8 @@ salt \(aqminion\(aq lxc.read_conf /etc/lxc/mycontainer.conf out_format=commented .UNINDENT .INDENT 0.0 .TP -.B salt.modules.lxc.restart(name, force=False) -New in version 2015.2.0. - -.sp -Restart the named container. If the container was not running, the -container will merely be started. -.INDENT 7.0 -.TP -.B name -The name of the container -.TP -.B force -False -If \fBTrue\fP, the container will be force\-stopped instead of gracefully -shut down -.UNINDENT +.B salt.modules.lxc.run_cmd(name, cmd, no_start=False, preserve_state=True, stdout=True, stderr=False, use_vt=False, keep_env=\(aqhttp_proxy, https_proxy, no_proxy\(aq) +Run a command inside the container. .sp CLI Example: .INDENT 7.0 @@ -73851,407 +67095,56 @@ CLI Example: .sp .nf .ft C -salt myminion lxc.restart name +salt \(aqminion\(aq name command [no_start=(True|False)] \e + [preserve_state=(True|False)] [stdout=(True|False)] \e + [stderr=(True|False)] .ft P .fi .UNINDENT .UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.lxc.retcode(name, cmd, no_start=False, preserve_state=True, stdin=None, python_shell=True, output_loglevel=\(aqdebug\(aq, use_vt=False, ignore_retcode=False, keep_env=\(aqhttp_proxy, https_proxy, no_proxy\(aq) -New in version 2015.2.0. - -.sp -Run \fBcmd.retcode\fP within a container -.sp -\fBWARNING:\fP -.INDENT 7.0 -.INDENT 3.5 -Many shell builtins do not work, failing with stderr similar to the -following: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -lxc_container: No such file or directory \- failed to exec \(aqcommand\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The same error will be displayed in stderr if the command being run -does not exist. If the retcode is nonzero and not what was expected, -try using \fI\%lxc.run_stderr\fP -or \fI\%lxc.run_all\fP\&. -.UNINDENT -.UNINDENT .INDENT 7.0 .TP .B name -Name of the container in which to run the command +Name of the container on which to operate. .TP .B cmd Command to run .TP .B no_start -False -If the container is not running, don\(aqt start it +If the container is not running, don\(aqt start it. Default: \fBFalse\fP .TP .B preserve_state -True -After running the command, return the container to its previous state +After running the command, return the container to its previous +state. Default: \fBTrue\fP .TP -.B stdin -None -Standard input to be used for the command +.B stdout: +Return stdout. Default: \fBTrue\fP .TP -.B output_loglevel -debug -Level at which to log the output from the command. Set to \fBquiet\fP to -suppress logging. +.B stderr: +Return stderr. Default: \fBFalse\fP .TP .B use_vt -False -Use SaltStack\(aqs utils.vt to stream output to console -\fBoutput=all\fP\&. +use saltstack utils.vt to stream output to console .TP .B keep_env -http_proxy,https_proxy,no_proxy A list of env vars to preserve. May be passed as commma\-delimited list. +Defaults to http_proxy,https_proxy. .UNINDENT .sp -CLI Example: +\fBNOTE:\fP .INDENT 7.0 .INDENT 3.5 -.sp -.nf -.ft C -salt myminion lxc.retcode mycontainer \(aqip addr show\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.lxc.run(name, cmd, no_start=False, preserve_state=True, stdin=None, python_shell=True, output_loglevel=\(aqdebug\(aq, use_vt=False, ignore_retcode=False, keep_env=\(aqhttp_proxy, https_proxy, no_proxy\(aq) -New in version 2015.2.0. - -.sp -Run \fBcmd.run\fP within a container -.sp -\fBWARNING:\fP -.INDENT 7.0 -.INDENT 3.5 -Many shell builtins do not work, failing with stderr similar to the -following: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -lxc_container: No such file or directory \- failed to exec \(aqcommand\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The same error will be displayed in stderr if the command being run -does not exist. If no output is returned using this function, try using -\fI\%lxc.run_stderr\fP or -\fI\%lxc.run_all\fP\&. -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B name -Name of the container in which to run the command -.TP -.B cmd -Command to run -.TP -.B no_start -False -If the container is not running, don\(aqt start it -.TP -.B preserve_state -True -After running the command, return the container to its previous state -.TP -.B stdin -None -Standard input to be used for the command -.TP -.B output_loglevel -debug -Level at which to log the output from the command. Set to \fBquiet\fP to -suppress logging. -.TP -.B use_vt -False -Use SaltStack\(aqs utils.vt to stream output to console. Assumes -\fBoutput=all\fP\&. -.TP -.B keep_env -http_proxy,https_proxy,no_proxy -A list of env vars to preserve. May be passed as commma\-delimited list. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt myminion lxc.run mycontainer \(aqifconfig \-a\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.lxc.run_all(name, cmd, no_start=False, preserve_state=True, stdin=None, python_shell=True, output_loglevel=\(aqdebug\(aq, use_vt=False, ignore_retcode=False, keep_env=\(aqhttp_proxy, https_proxy, no_proxy\(aq) -New in version 2015.2.0. - -.sp -Run \fBcmd.run_all\fP within a container -.sp -\fBWARNING:\fP -.INDENT 7.0 -.INDENT 3.5 -Many shell builtins do not work, failing with stderr similar to the -following: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -lxc_container: No such file or directory \- failed to exec \(aqcommand\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The same error will be displayed in stderr if the command being run -does not exist. -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B name -Name of the container in which to run the command -.TP -.B cmd -Command to run -.TP -.B no_start -False -If the container is not running, don\(aqt start it -.TP -.B preserve_state -True -After running the command, return the container to its previous state -.TP -.B stdin -None -Standard input to be used for the command -.TP -.B output_loglevel -debug -Level at which to log the output from the command. Set to \fBquiet\fP to -suppress logging. -.TP -.B use_vt -False -Use SaltStack\(aqs utils.vt to stream output to console -\fBoutput=all\fP\&. -.TP -.B keep_env -http_proxy,https_proxy,no_proxy -A list of env vars to preserve. May be passed as commma\-delimited list. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt myminion lxc.run_all mycontainer \(aqip addr show\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.lxc.run_cmd(name, cmd, no_start=False, preserve_state=True, stdin=None, stdout=True, stderr=False, python_shell=True, output_loglevel=\(aqdebug\(aq, use_vt=False, ignore_retcode=False, keep_env=\(aqhttp_proxy, https_proxy, no_proxy\(aq) -Deprecated since version 2015.2.0: Use \fI\%lxc.run\fP instead - -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.lxc.run_stderr(name, cmd, no_start=False, preserve_state=True, stdin=None, python_shell=True, output_loglevel=\(aqdebug\(aq, use_vt=False, ignore_retcode=False, keep_env=\(aqhttp_proxy, https_proxy, no_proxy\(aq) -New in version 2015.2.0. - -.sp -Run \fBcmd.run_stderr\fP within a container -.sp -\fBWARNING:\fP -.INDENT 7.0 -.INDENT 3.5 -Many shell builtins do not work, failing with stderr similar to the -following: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -lxc_container: No such file or directory \- failed to exec \(aqcommand\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The same error will be displayed if the command being run does not -exist. -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B name -Name of the container in which to run the command -.TP -.B cmd -Command to run -.TP -.B no_start -False -If the container is not running, don\(aqt start it -.TP -.B preserve_state -True -After running the command, return the container to its previous state -.TP -.B stdin -None -Standard input to be used for the command -.TP -.B output_loglevel -debug -Level at which to log the output from the command. Set to \fBquiet\fP to -suppress logging. -.TP -.B use_vt -False -Use SaltStack\(aqs utils.vt to stream output to console -\fBoutput=all\fP\&. -.TP -.B keep_env -http_proxy,https_proxy,no_proxy -A list of env vars to preserve. May be passed as commma\-delimited list. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt myminion lxc.run_stderr mycontainer \(aqip addr show\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.lxc.run_stdout(name, cmd, no_start=False, preserve_state=True, stdin=None, python_shell=True, output_loglevel=\(aqdebug\(aq, use_vt=False, ignore_retcode=False, keep_env=\(aqhttp_proxy, https_proxy, no_proxy\(aq) -New in version 2015.2.0. - -.sp -Run \fBcmd.run_stdout\fP within a container -.sp -\fBWARNING:\fP -.INDENT 7.0 -.INDENT 3.5 -Many shell builtins do not work, failing with stderr similar to the -following: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -lxc_container: No such file or directory \- failed to exec \(aqcommand\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The same error will be displayed in stderr if the command being run -does not exist. If no output is returned using this function, try using -\fI\%lxc.run_stderr\fP or -\fI\%lxc.run_all\fP\&. -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B name -Name of the container in which to run the command -.TP -.B cmd -Command to run -.TP -.B no_start -False -If the container is not running, don\(aqt start it -.TP -.B preserve_state -True -After running the command, return the container to its previous state -.TP -.B stdin -None -Standard input to be used for the command -.TP -.B output_loglevel -debug -Level at which to log the output from the command. Set to \fBquiet\fP to -suppress logging. -.TP -.B use_vt -False -Use SaltStack\(aqs utils.vt to stream output to console -\fBoutput=all\fP\&. -.TP -.B keep_env -http_proxy,https_proxy,no_proxy -A list of env vars to preserve. May be passed as commma\-delimited list. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt myminion lxc.run_stdout mycontainer \(aqifconfig \-a\(aq -.ft P -.fi +If stderr and stdout are both \fBFalse\fP, the return code is returned. +If stderr and stdout are both \fBTrue\fP, the pid and return code are +also returned. .UNINDENT .UNINDENT .UNINDENT .INDENT 0.0 .TP .B salt.modules.lxc.set_dns(name, dnsservers=None, searchdomains=None) -Changed in version 2015.2.0: The \fBdnsservers\fP and \fBsearchdomains\fP parameters can now be passed -as a comma\-separated list. - -.sp -Update /etc/resolv.conf +Update container DNS configuration +and possibly also resolv.conf one. .sp CLI Example: .INDENT 7.0 @@ -74259,7 +67152,7 @@ CLI Example: .sp .nf .ft C -salt myminion lxc.set_dns ubuntu "[\(aq8.8.8.8\(aq, \(aq4.4.4.4\(aq]" +salt\-call \-lall lxc.set_dns ubuntu [\(aq8.8.8.8\(aq, \(aq4.4.4.4\(aq] .ft P .fi .UNINDENT @@ -74284,29 +67177,8 @@ salt \(aq*\(aq lxc.set_parameter name parameter value .UNINDENT .INDENT 0.0 .TP -.B salt.modules.lxc.set_password(name, users, password, encrypted=True) -Changed in version 2015.2.0: Function renamed from \fBset_pass\fP to \fBset_password\fP\&. Additionally, -this function now supports (and defaults to using) a password hash -instead of a plaintext password. - -.sp +.B salt.modules.lxc.set_pass(name, users, password) Set the password of one or more system users inside containers -.INDENT 7.0 -.TP -.B users -Comma\-separated list (or python list) of users to change password -.TP -.B password -Password to set for the specified user(s) -.TP -.B encrypted -True -If true, \fBpassword\fP must be a password hash. Set to \fBFalse\fP to set -a plaintext password (not recommended). -.sp -New in version 2015.2.0. - -.UNINDENT .sp CLI Example: .INDENT 7.0 @@ -74314,8 +67186,7 @@ CLI Example: .sp .nf .ft C -salt \(aq*\(aq lxc.set_pass container\-name root \(aq$6$uJ2uAyLU$KoI67t8As/0fXtJOPcHKGXmUpcoYUcVR2K6x93walnShTCQvjRwq25yIkiCBOqgbfdKQSFnAo28/ek6716vEV1\(aq -salt \(aq*\(aq lxc.set_pass container\-name root foo encrypted=False +salt \(aq*\(aq lxc.set_pass container\-name root foo .ft P .fi .UNINDENT @@ -74323,17 +67194,8 @@ salt \(aq*\(aq lxc.set_pass container\-name root foo encrypted=False .UNINDENT .INDENT 0.0 .TP -.B salt.modules.lxc.start(name, **kwargs) -Start the named container -.INDENT 7.0 -.TP -.B restart -False -Deprecated since version 2015.2.0: Use \fI\%lxc.restart\fP - -.sp -Restart the container if it is already running -.UNINDENT +.B salt.modules.lxc.start(name, restart=False) +Start the named container. .sp CLI Example: .INDENT 7.0 @@ -74341,7 +67203,7 @@ CLI Example: .sp .nf .ft C -salt myminion lxc.start name +salt \(aq*\(aq lxc.start name .ft P .fi .UNINDENT @@ -74366,19 +67228,8 @@ salt \(aq*\(aq lxc.state name .UNINDENT .INDENT 0.0 .TP -.B salt.modules.lxc.stop(name, kill=False) -Stop the named container -.INDENT 7.0 -.TP -.B kill -False -Do not wait for the container to stop, kill all tasks in the container. -Older LXC versions will stop containers like this irrespective of this -argument. -.sp -Changed in version 2015.2.0: Default value changed to \fBFalse\fP - -.UNINDENT +.B salt.modules.lxc.stop(name, kill=True) +Stop the named container. .sp CLI Example: .INDENT 7.0 @@ -74386,7 +67237,7 @@ CLI Example: .sp .nf .ft C -salt myminion lxc.stop name +salt \(aq*\(aq lxc.stop name .ft P .fi .UNINDENT @@ -74394,19 +67245,16 @@ salt myminion lxc.stop name .UNINDENT .INDENT 0.0 .TP -.B salt.modules.lxc.templates() -New in version 2015.2.0. - +.B salt.modules.lxc.templates(templates_dir=\(aq/usr/share/lxc/templates\(aq) +Returns a list of existing templates .sp -List the available LXC template scripts installed on the minion -.sp -CLI Examples: +CLI Example: .INDENT 7.0 .INDENT 3.5 .sp .nf .ft C -salt myminion lxc.templates +salt \(aq*\(aq lxc.templates .ft P .fi .UNINDENT @@ -74440,9 +67288,7 @@ CLI Example: .sp .nf .ft C -salt myminion lxc.update_lxc_conf ubuntu \e - lxc_conf="[{\(aqnetwork.ipv4.ip\(aq:\(aq10.0.3.5\(aq}]" \e - lxc_conf_unset="[\(aqlxc.utsname\(aq]" +salt\-call \-lall lxc.update_lxc_conf ubuntu lxc_conf="[{\(aqnetwork.ipv4.ip\(aq:\(aq10.0.3.5\(aq}]" lxc_conf_unset="[\(aqlxc.utsname\(aq]" .ft P .fi .UNINDENT @@ -74474,7 +67320,7 @@ An example might look like: {\(aqlxc.network.type\(aq: \(aqveth\(aq}, {\(aqlxc.network.flags\(aq: \(aqup\(aq}, {\(aqlxc.network.link\(aq: \(aqbr0\(aq}, - {\(aqlxc.network.mac\(aq: \(aq$CONTAINER_MACADDR\(aq}, + {\(aqlxc.network.hwaddr\(aq: \(aq$CONTAINER_MACADDR\(aq}, {\(aqlxc.network.ipv4\(aq: \(aq$CONTAINER_IPADDR\(aq}, {\(aqlxc.network.name\(aq: \(aq$CONTAINER_DEVICENAME\(aq}, ] @@ -74483,7 +67329,7 @@ An example might look like: .UNINDENT .UNINDENT .sp -CLI Example: +CLI Examples: .INDENT 7.0 .INDENT 3.5 .sp @@ -74803,23 +67649,6 @@ salt \(aq*\(aq user.list_users .UNINDENT .UNINDENT .UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.mac_user.rename(name, new_name) -Change the username for a named user -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq user.rename name new_name -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.macports .sp Support for MacPorts under Mac OSX. @@ -76590,9 +69419,6 @@ The RAID level to use when creating the raid. .B devices A list of devices used to build the array. .TP -.B metadata -Version of metadata to use when creating the array. -.TP .B kwargs Optional arguments to be passed to mdadm. .TP @@ -76704,26 +69530,8 @@ salt \(aq*\(aq raid.save_config .UNINDENT .UNINDENT .UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.mdadm.stop() -Shut down all arrays that can be shut down (i.e. are not currently in use). -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq raid.stop -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.memcached -.sp -Module for Management of Memcached Keys +.SS Module for Management of Memcached Keys .sp New in version 2014.1.0. @@ -76980,8 +69788,7 @@ CLI Example: .sp .nf .ft C -salt \(aq*\(aq mine.send network.ip_addrs eth0 -salt \(aq*\(aq mine.send eth0_ip_addrs mine_function=network.ip_addrs eth0 +salt \(aq*\(aq mine.send network.interfaces eth0 .ft P .fi .UNINDENT @@ -77600,44 +70407,6 @@ salt \(aq*\(aq mongodb.db_remove .UNINDENT .INDENT 0.0 .TP -.B salt.modules.mongodb.find(collection, query=None, user=None, password=None, host=None, port=None, database=\(aqadmin\(aq) -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.mongodb.insert(objects, collection, user=None, password=None, host=None, port=None, database=\(aqadmin\(aq) -Insert an object or list of objects into a collection -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq mongodb.insert \(aq[{"foo": "FOO", "bar": "BAR"}, {"foo": "BAZ", "bar": "BAM"}]\(aq mycollection -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.mongodb.remove(collection, query=None, user=None, password=None, host=None, port=None, database=\(aqadmin\(aq, w=1) -Remove an object or list of objects into a collection -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq mongodb.remove mycollection \(aq[{"foo": "FOO", "bar": "BAR"}, {"foo": "BAZ", "bar": "BAM"}]\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.mongodb.user_create(name, passwd, user=None, password=None, host=None, port=None, database=\(aqadmin\(aq) Create a Mongodb user .sp @@ -77759,24 +70528,6 @@ salt \(aq*\(aq monit.start .UNINDENT .INDENT 0.0 .TP -.B salt.modules.monit.status(svc_name=\(aq\(aq) -Display a process status from monit -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq monit.status -salt \(aq*\(aq monit.status -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.monit.stop(name) Stops service via monit .sp @@ -77921,23 +70672,6 @@ salt \(aq*\(aq mount.active .UNINDENT .INDENT 0.0 .TP -.B salt.modules.mount.automaster(config=\(aq/etc/auto_salt\(aq) -List the contents of the fstab -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq mount.fstab -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.mount.fstab(config=\(aq/etc/fstab\(aq) List the contents of the fstab .sp @@ -77992,7 +70726,7 @@ salt \(aq*\(aq mount.is_mounted /mnt/share .UNINDENT .INDENT 0.0 .TP -.B salt.modules.mount.mount(name, device, mkmnt=False, fstype=\(aq\(aq, opts=\(aqdefaults\(aq, user=None) +.B salt.modules.mount.mount(name, device, mkmnt=False, fstype=\(aq\(aq, opts=\(aqdefaults\(aq) Mount a device .sp CLI Example: @@ -78009,7 +70743,7 @@ salt \(aq*\(aq mount.mount /mnt/foo /dev/sdz1 True .UNINDENT .INDENT 0.0 .TP -.B salt.modules.mount.remount(name, device, mkmnt=False, fstype=\(aq\(aq, opts=\(aqdefaults\(aq, user=None) +.B salt.modules.mount.remount(name, device, mkmnt=False, fstype=\(aq\(aq, opts=\(aqdefaults\(aq) Attempt to remount a device, if the device is not already mounted, mount is called .sp @@ -78027,24 +70761,7 @@ salt \(aq*\(aq mount.remount /mnt/foo /dev/sdz1 True .UNINDENT .INDENT 0.0 .TP -.B salt.modules.mount.rm_automaster(name, device, config=\(aq/etc/auto_salt\(aq) -Remove the mount point from the auto_master -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq mount.rm_automaster /mnt/foo -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.mount.rm_fstab(name, device, config=\(aq/etc/fstab\(aq) +.B salt.modules.mount.rm_fstab(name, config=\(aq/etc/fstab\(aq) Remove the mount point from the fstab .sp CLI Example: @@ -78061,25 +70778,7 @@ salt \(aq*\(aq mount.rm_fstab /mnt/foo .UNINDENT .INDENT 0.0 .TP -.B salt.modules.mount.set_automaster(name, device, fstype, opts=\(aq\(aq, config=\(aq/etc/auto_salt\(aq, test=False, **kwargs) -Verify that this mount is represented in the auto_salt, change the mount -to match the data passed, or add the mount if it is not present. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq mount.set_automaster /mnt/foo /dev/sdz1 ext4 -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.mount.set_fstab(name, device, fstype, opts=\(aqdefaults\(aq, dump=0, pass_num=0, config=\(aq/etc/fstab\(aq, test=False, match_on=\(aqauto\(aq, **kwargs) +.B salt.modules.mount.set_fstab(name, device, fstype, opts=\(aqdefaults\(aq, dump=0, pass_num=0, config=\(aq/etc/fstab\(aq, test=False, **kwargs) Verify that this mount is represented in the fstab, change the mount to match the data passed, or add the mount if it is not present. .sp @@ -78148,7 +70847,7 @@ salt \(aq*\(aq mount.swaps .UNINDENT .INDENT 0.0 .TP -.B salt.modules.mount.umount(name, device=None, user=None) +.B salt.modules.mount.umount(name) Attempt to unmount a device by specifying the directory it is mounted on .sp CLI Example: @@ -78158,10 +70857,6 @@ CLI Example: .nf .ft C salt \(aq*\(aq mount.umount /mnt/foo - -\&.. versionadded:: 2015.2.0 - -salt \(aq*\(aq mount.umount /mnt/foo /dev/xvdc1 .ft P .fi .UNINDENT @@ -79167,10 +71862,10 @@ The pillar have to be in this format: \-\-\-\-\-\- webserver: Ping_google: - \- check_icmp: 8.8.8.8 - \- check_icmp: google.com + \- check_icmp:8.8.8.8 + \- check_icmp:google.com Load: - \- check_load: \-w 0.8 \-c 1 + \- check_load:\-w 0.8 \-c 1 APT: \- check_apt \-\-\-\-\-\-\- @@ -79220,10 +71915,10 @@ The pillar have to be in this format: \-\-\-\-\-\- webserver: Ping_google: - \- check_icmp: 8.8.8.8 - \- check_icmp: google.com + \- check_icmp:8.8.8.8 + \- check_icmp:google.com Load: - \- check_load: \-w 0.8 \-c 1 + \- check_load:\-w 0.8 \-c 1 APT: \- check_apt \-\-\-\-\-\-\- @@ -79262,10 +71957,10 @@ The pillar have to be in this format: \-\-\-\-\-\- webserver: Ping_google: - \- check_icmp: 8.8.8.8 - \- check_icmp: google.com + \- check_icmp:8.8.8.8 + \- check_icmp:google.com Load: - \- check_load: \-w 0.8 \-c 1 + \- check_load:\-w 0.8 \-c 1 APT: \- check_apt \-\-\-\-\-\-\- @@ -79436,7 +72131,7 @@ salt \(aq*\(aq service.enable .UNINDENT .INDENT 0.0 .TP -.B salt.modules.netbsdservice.enabled(name, **kwargs) +.B salt.modules.netbsdservice.enabled(name) Return True if the named service is enabled, false otherwise .sp CLI Example: @@ -79624,507 +72319,6 @@ salt \(aq*\(aq service.stop .UNINDENT .UNINDENT .UNINDENT -.SS salt.modules.netscaler -.INDENT 0.0 -.TP -.B salt.modules.netscaler.server_add(s_name, s_ip, s_state=None, **connection_args) -Add a server -Note: The default server state is ENABLED -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.server_add \(aqserverName\(aq \(aqserverIpAddress\(aq -salt \(aq*\(aq netscaler.server_add \(aqserverName\(aq \(aqserverIpAddress\(aq \(aqserverState\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.server_delete(s_name, **connection_args) -Delete a server -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.server_delete \(aqserverName\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.server_disable(s_name, **connection_args) -Disable a server globally -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.server_disable \(aqserverName\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.server_enable(s_name, **connection_args) -Enables a server globally -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.server_enable \(aqserverName\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.server_enabled(s_name, **connection_args) -Check if a server is enabled globally -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.server_enabled \(aqserverName\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.server_exists(s_name, ip=None, s_state=None, **connection_args) -Checks if a server exists -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.server_exists \(aqserverName\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.server_update(s_name, s_ip, **connection_args) -Update a server\(aqs attributes -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.server_update \(aqserverName\(aq \(aqserverIP\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.service_disable(s_name, s_delay=None, **connection_args) -Disable a service -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.service_disable \(aqserviceName\(aq -salt \(aq*\(aq netscaler.service_disable \(aqserviceName\(aq \(aqdelayInSeconds\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.service_enable(s_name, **connection_args) -Enable a service -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.service_enable \(aqserviceName\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.service_exists(s_name, **connection_args) -Checks if a service exists -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.service_exists \(aqserviceName\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.service_up(s_name, **connection_args) -Checks if a service is UP -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.service_up \(aqserviceName\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.servicegroup_add(sg_name, sg_type=\(aqHTTP\(aq, **connection_args) -Add a new service group -If no service type is specified, HTTP will be used. -Most common service types: HTTP, SSL, and SSL_BRIDGE -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.servicegroup_add \(aqserviceGroupName\(aq -salt \(aq*\(aq netscaler.servicegroup_add \(aqserviceGroupName\(aq \(aqserviceGroupType\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.servicegroup_delete(sg_name, **connection_args) -Delete a new service group -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.servicegroup_delete \(aqserviceGroupName\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.servicegroup_exists(sg_name, sg_type=None, **connection_args) -Checks if a service group exists -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.servicegroup_exists \(aqserviceGroupName\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.servicegroup_server_add(sg_name, s_name, s_port, **connection_args) -Add a server:port member to a servicegroup -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.servicegroup_server_add \(aqserviceGroupName\(aq \(aqserverName\(aq \(aqserverPort\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.servicegroup_server_delete(sg_name, s_name, s_port, **connection_args) -Remove a server:port member from a servicegroup -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.servicegroup_server_delete \(aqserviceGroupName\(aq \(aqserverName\(aq \(aqserverPort\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.servicegroup_server_disable(sg_name, s_name, s_port, **connection_args) -Disable a server:port member of a servicegroup -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.servicegroup_server_disable \(aqserviceGroupName\(aq \(aqserverName\(aq \(aqserverPort\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.servicegroup_server_enable(sg_name, s_name, s_port, **connection_args) -Enable a server:port member of a servicegroup -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.servicegroup_server_enable \(aqserviceGroupName\(aq \(aqserverName\(aq \(aqserverPort\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.servicegroup_server_exists(sg_name, s_name, s_port=None, **connection_args) -Check if a server:port combination is a member of a servicegroup -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.servicegroup_server_exists \(aqserviceGroupName\(aq \(aqserverName\(aq \(aqserverPort\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.servicegroup_server_up(sg_name, s_name, s_port, **connection_args) -Check if a server:port combination is in state UP in a servicegroup -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.servicegroup_server_up \(aqserviceGroupName\(aq \(aqserverName\(aq \(aqserverPort\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.vserver_add(v_name, v_ip, v_port, v_type, **connection_args) -Add a new lb vserver -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.vserver_add \(aqvserverName\(aq \(aqvserverIP\(aq \(aqvserverPort\(aq \(aqvserverType\(aq -salt \(aq*\(aq netscaler.vserver_add \(aqalex.patate.chaude.443\(aq \(aq1.2.3.4\(aq \(aq443\(aq \(aqSSL\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.vserver_delete(v_name, **connection_args) -Delete a lb vserver -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.vserver_delete \(aqvserverName\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.vserver_exists(v_name, v_ip=None, v_port=None, v_type=None, **connection_args) -Checks if a vserver exists -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.vserver_exists \(aqvserverName\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.vserver_servicegroup_add(v_name, sg_name, **connection_args) -Bind a servicegroup to a vserver -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.vserver_servicegroup_add \(aqvserverName\(aq \(aqserviceGroupName\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.vserver_servicegroup_delete(v_name, sg_name, **connection_args) -Unbind a servicegroup from a vserver -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.vserver_servicegroup_delete \(aqvserverName\(aq \(aqserviceGroupName\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.vserver_servicegroup_exists(v_name, sg_name, **connection_args) -Checks if a servicegroup is tied to a vserver -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.vserver_servicegroup_exists \(aqvserverName\(aq \(aqserviceGroupName\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.vserver_sslcert_add(v_name, sc_name, **connection_args) -Binds a SSL certificate to a vserver -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.vserver_sslcert_add \(aqvserverName\(aq \(aqsslCertificateName\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.vserver_sslcert_delete(v_name, sc_name, **connection_args) -Unbinds a SSL certificate from a vserver -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.vserver_sslcert_delete \(aqvserverName\(aq \(aqsslCertificateName\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.netscaler.vserver_sslcert_exists(v_name, sc_name, **connection_args) -Checks if a SSL certificate is tied to a vserver -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq netscaler.vserver_sslcert_exists \(aqvserverName\(aq \(aqsslCertificateName\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.network .sp Module for gathering and managing network information @@ -80191,23 +72385,6 @@ salt \(aq*\(aq network.connect google\-public\-dns\-a.google.com port=53 proto=u .UNINDENT .INDENT 0.0 .TP -.B salt.modules.network.default_route(family=None) -Return default route(s) from routing table -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq network.default_route -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.network.dig(host) Performs a DNS lookup with dig .sp @@ -80225,23 +72402,6 @@ salt \(aq*\(aq network.dig archlinux.org .UNINDENT .INDENT 0.0 .TP -.B salt.modules.network.get_bufsize(iface) -Return network buffer sizes as a dict -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq network.getbufsize -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.network.get_hostname() Get hostname .sp @@ -80407,23 +72567,6 @@ salt \(aq*\(aq network.ip_addrs6 .UNINDENT .INDENT 0.0 .TP -.B salt.modules.network.ip_in_subnet(ip_addr, cidr) -Returns True if given IP is within specified subnet, otherwise False. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq network.ip_in_subnet 172.17.0.4 172.16.0.0/12 -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.network.ipaddrs(interface=None, include_loopback=False, cidr=None) Returns a list of IPv4 addresses assigned to the host. 127.0.0.1 is ignored, unless \(aqinclude_loopback=True\(aq is indicated. If \(aqinterface\(aq is @@ -80504,23 +72647,6 @@ salt \(aq*\(aq network.is_private 10.0.0.3 .UNINDENT .INDENT 0.0 .TP -.B salt.modules.network.mod_bufsize(iface, *args, **kwargs) -Modify network interface buffers (currently linux only) -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq network.getBuffers -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.network.mod_hostname(hostname) Modify hostname .sp @@ -80566,7 +72692,7 @@ salt \(aq*\(aq network.netstat .UNINDENT .INDENT 0.0 .TP -.B salt.modules.network.ping(host, timeout=False, return_boolean=False) +.B salt.modules.network.ping(host) Performs a ping to a host .sp CLI Example: @@ -80580,57 +72706,6 @@ salt \(aq*\(aq network.ping archlinux.org .fi .UNINDENT .UNINDENT -.sp -New in version 2015.2.0. - -.sp -Return a True or False instead of ping output. -.INDENT 7.0 -.INDENT 3.5 -salt \(aq*\(aq network.ping archlinux.org return_boolean=True -.UNINDENT -.UNINDENT -.sp -Set the time to wait for a response in seconds. -.INDENT 7.0 -.INDENT 3.5 -salt \(aq*\(aq network.ping archlinux.org timeout=3 -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.network.reverse_ip(ip_addr) -Returns the reversed IP address -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq network.reverse_ip 172.17.0.4 -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.network.routes(family=None) -Return currently configured routes from routing table -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq network.routes -.ft P -.fi -.UNINDENT -.UNINDENT .UNINDENT .INDENT 0.0 .TP @@ -80666,2055 +72741,6 @@ salt \(aq*\(aq network.traceroute archlinux.org .UNINDENT .UNINDENT .UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.network.wol(mac, bcast=\(aq255.255.255.255\(aq, destport=9) -Send Wake On Lan packet to a host -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq network.wol 08\-00\-27\-13\-69\-77 -salt \(aq*\(aq network.wol 080027136977 255.255.255.255 7 -salt \(aq*\(aq network.wol 08:00:27:13:69:77 255.255.255.255 7 -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.SS salt.modules.neutron -.sp -Module for handling OpenStack Neutron calls -.INDENT 0.0 -.TP -.B depends -.INDENT 7.0 -.IP \(bu 2 -neutronclient Python module -.UNINDENT -.TP -.B configuration -This module is not usable until the user, password, tenant, and -auth URL are specified either in a pillar or in the minion\(aqs config file. -For example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -keystone.user: \(aqadmin\(aq -keystone.password: \(aqpassword\(aq -keystone.tenant: \(aqadmin\(aq -keystone.auth_url: \(aqhttp://127.0.0.1:5000/v2.0/\(aq -keystone.region_name: \(aqRegionOne\(aq -keystone.service_type: \(aqnetwork\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -If configuration for multiple OpenStack accounts is required, they can be -set up as different configuration profiles: -For example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -openstack1: - keystone.user: \(aqadmin\(aq - keystone.password: \(aqpassword\(aq - keystone.tenant: \(aqadmin\(aq - keystone.auth_url: \(aqhttp://127.0.0.1:5000/v2.0/\(aq - keystone.region_name: \(aqRegionOne\(aq - keystone.service_type: \(aqnetwork\(aq - -openstack2: - keystone.user: \(aqadmin\(aq - keystone.password: \(aqpassword\(aq - keystone.tenant: \(aqadmin\(aq - keystone.auth_url: \(aqhttp://127.0.0.2:5000/v2.0/\(aq - keystone.region_name: \(aqRegionOne\(aq - keystone.service_type: \(aqnetwork\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -With this configuration in place, any of the neutron functions -can make use of a configuration profile by declaring it explicitly. -For example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.network_list profile=openstack1 -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.add_gateway_router(router, ext_network, profile=None) -Adds an external network gateway to the specified router -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.add_gateway_router router\-name ext\-network\-name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBrouter\fP \-\- ID or name of the router -.IP \(bu 2 -\fBext_network\fP \-\- ID or name of the external network the gateway -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Added Gateway router information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.add_interface_router(router, subnet, profile=None) -Adds an internal network interface to the specified router -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.add_interface_router router\-name subnet\-name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBrouter\fP \-\- ID or name of the router -.IP \(bu 2 -\fBsubnet\fP \-\- ID or name of the subnet -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Added interface information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.create_floatingip(floating_network, port=None, profile=None) -Creates a new floatingIP -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.create_floatingip network\-name port\-name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBfloating_network\fP \-\- Network name or ID to allocate floatingIP from -.IP \(bu 2 -\fBport\fP \-\- Of the port to be associated with the floatingIP (Optional) -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Created floatingIP information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.create_ikepolicy(name, profile=None, **kwargs) -Creates a new IKEPolicy -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.create_ikepolicy ikepolicy\-name - phase1_negotiation_mode=main auth_algorithm=sha1 - encryption_algorithm=aes\-128 pfs=group5 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBname\fP \-\- Name of the IKE policy -.IP \(bu 2 -\fBphase1_negotiation_mode\fP \-\- IKE Phase1 negotiation mode in lowercase, -default: main (Optional) -.IP \(bu 2 -\fBauth_algorithm\fP \-\- Authentication algorithm in lowercase, -default: sha1 (Optional) -.IP \(bu 2 -\fBencryption_algorithm\fP \-\- Encryption algorithm in lowercase. -default:aes\-128 (Optional) -.IP \(bu 2 -\fBpfs\fP \-\- Prefect Forward Security in lowercase, -default: group5 (Optional) -.IP \(bu 2 -\fBunits\fP \-\- IKE lifetime attribute. default: seconds (Optional) -.IP \(bu 2 -\fBvalue\fP \-\- IKE lifetime attribute. default: 3600 (Optional) -.IP \(bu 2 -\fBike_version\fP \-\- IKE version in lowercase, default: v1 (Optional) -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.IP \(bu 2 -\fBkwargs\fP \-\- -.UNINDENT -.TP -.B Returns -Created IKE policy information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.create_ipsec_site_connection(name, ipsecpolicy, ikepolicy, vpnservice, peer_cidrs, peer_address, peer_id, psk, admin_state_up=True, profile=None, **kwargs) -Creates a new IPsecSiteConnection -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.show_ipsec_site_connection connection\-name - ipsec\-policy\-name ikepolicy\-name vpnservice\-name - 192.168.XXX.XXX/24 192.168.XXX.XXX 192.168.XXX.XXX secret -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBname\fP \-\- Set friendly name for the connection -.IP \(bu 2 -\fBipsecpolicy\fP \-\- IPSec policy ID or name associated with this connection -.IP \(bu 2 -\fBikepolicy\fP \-\- IKE policy ID or name associated with this connection -.IP \(bu 2 -\fBvpnservice\fP \-\- VPN service instance ID or name associated with -this connection -.IP \(bu 2 -\fBpeer_cidrs\fP \-\- Remote subnet(s) in CIDR format -.IP \(bu 2 -\fBpeer_address\fP \-\- Peer gateway public IPv4/IPv6 address or FQDN -.IP \(bu 2 -\fBpeer_id\fP \-\- Peer router identity for authentication -Can be IPv4/IPv6 address, e\-mail address, key id, or FQDN -.IP \(bu 2 -\fBpsk\fP \-\- Pre\-shared key string -.IP \(bu 2 -\fBinitiator\fP \-\- Initiator state in lowercase, default:bi\-directional -.IP \(bu 2 -\fBadmin_state_up\fP \-\- Set admin state up to true or false, -default: True (Optional) -.IP \(bu 2 -\fBmtu\fP \-\- size for the connection, default:1500 (Optional) -.IP \(bu 2 -\fBdpd_action\fP \-\- Dead Peer Detection attribute: hold/clear/disabled/ -restart/restart\-by\-peer (Optional) -.IP \(bu 2 -\fBdpd_interval\fP \-\- Dead Peer Detection attribute (Optional) -.IP \(bu 2 -\fBdpd_timeout\fP \-\- Dead Peer Detection attribute (Optional) -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Created IPSec site connection information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.create_ipsecpolicy(name, profile=None, **kwargs) -Creates a new IPsecPolicy -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.create_ipsecpolicy ipsecpolicy\-name - transform_protocol=esp auth_algorithm=sha1 - encapsulation_mode=tunnel encryption_algorithm=aes\-128 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBname\fP \-\- Name of the IPSec policy -.IP \(bu 2 -\fBtransform_protocol\fP \-\- Transform protocol in lowercase, -default: esp (Optional) -.IP \(bu 2 -\fBauth_algorithm\fP \-\- Authentication algorithm in lowercase, -default: sha1 (Optional) -.IP \(bu 2 -\fBencapsulation_mode\fP \-\- Encapsulation mode in lowercase, -default: tunnel (Optional) -.IP \(bu 2 -\fBencryption_algorithm\fP \-\- Encryption algorithm in lowercase, -default:aes\-128 (Optional) -.IP \(bu 2 -\fBpfs\fP \-\- Prefect Forward Security in lowercase, -default: group5 (Optional) -.IP \(bu 2 -\fBunits\fP \-\- IPSec lifetime attribute. default: seconds (Optional) -.IP \(bu 2 -\fBvalue\fP \-\- IPSec lifetime attribute. default: 3600 (Optional) -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Created IPSec policy information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.create_network(name, router_ext=False, profile=None) -Creates a new network -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.create_network network\-name -salt \(aq*\(aq neutron.create_network network\-name profile=openstack1 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBname\fP \-\- Name of network to create -.IP \(bu 2 -\fBrouter_ext\fP \-\- True then if create the external network, -default: False (Optional) -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Created network information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.create_port(name, network, device_id=None, admin_state_up=True, profile=None) -Creates a new port -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.create_port network\-name port\-name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBname\fP \-\- Name of port to create -.IP \(bu 2 -\fBnetwork\fP \-\- Network name or ID -.IP \(bu 2 -\fBdevice_id\fP \-\- ID of device (Optional) -.IP \(bu 2 -\fBadmin_state_up\fP \-\- Set admin state up to true or false, -default: true (Optional) -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Created port information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.create_router(name, ext_network=None, admin_state_up=True, profile=None) -Creates a new router -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.create_router new\-router\-name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBname\fP \-\- Name of router to create (must be first) -.IP \(bu 2 -\fBext_network\fP \-\- ID or name of the external for the gateway (Optional) -.IP \(bu 2 -\fBadmin_state_up\fP \-\- Set admin state up to true or false, -default:true (Optional) -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Created router information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.create_security_group(name=None, description=None, profile=None) -Creates a new security group -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.create_security_group security\-group\-name description=\(aqSecurity group for servers\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBname\fP \-\- Name of security group (Optional) -.IP \(bu 2 -\fBdescription\fP \-\- Description of security group (Optional) -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Created security group information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.create_security_group_rule(security_group, remote_group_id=None, direction=\(aqingress\(aq, protocol=None, port_range_min=None, port_range_max=None, ethertype=\(aqIPv4\(aq, profile=None) -Creates a new security group rule -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.show_security_group_rule security\-group\-rule\-id -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBsecurity_group\fP \-\- Security group name or ID to add rule -.IP \(bu 2 -\fBremote_group_id\fP \-\- Remote security group name or ID to -apply rule (Optional) -.IP \(bu 2 -\fBdirection\fP \-\- Direction of traffic: ingress/egress, -default: ingress (Optional) -.IP \(bu 2 -\fBprotocol\fP \-\- Protocol of packet: null/icmp/tcp/udp, -default: null (Optional) -.IP \(bu 2 -\fBport_range_min\fP \-\- Starting port range (Optional) -.IP \(bu 2 -\fBport_range_max\fP \-\- Ending port range (Optional) -.IP \(bu 2 -\fBethertype\fP \-\- IPv4/IPv6, default: IPv4 (Optional) -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Created security group rule information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.create_subnet(network, cidr, name=None, ip_version=4, profile=None) -Creates a new subnet -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.create_subnet network\-name 192.168.1.0/24 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBnetwork\fP \-\- Network ID or name this subnet belongs to -.IP \(bu 2 -\fBcidr\fP \-\- CIDR of subnet to create (Ex. \(aq192.168.1.0/24\(aq) -.IP \(bu 2 -\fBname\fP \-\- Name of the subnet to create (Optional) -.IP \(bu 2 -\fBip_version\fP \-\- Version to use, default is 4(IPv4) (Optional) -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Created subnet information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.create_vpnservice(subnet, router, name, admin_state_up=True, profile=None) -Creates a new VPN service -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.create_vpnservice router\-name name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBsubnet\fP \-\- Subnet unique identifier for the VPN service deployment -.IP \(bu 2 -\fBrouter\fP \-\- Router unique identifier for the VPN service -.IP \(bu 2 -\fBname\fP \-\- Set a name for the VPN service -.IP \(bu 2 -\fBadmin_state_up\fP \-\- Set admin state up to true or false, -default:True (Optional) -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Created VPN service information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.delete_floatingip(floatingip_id, profile=None) -Deletes the specified floating IP -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.delete_floatingip floatingip\-id -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBfloatingip_id\fP \-\- ID of floatingIP to delete -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -True(Succeed) or False -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.delete_ikepolicy(ikepolicy, profile=None) -Deletes the specified IKEPolicy -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.delete_ikepolicy ikepolicy\-name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBikepolicy\fP \-\- ID or name of IKE policy to delete -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -True(Succeed) or False -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.delete_ipsec_site_connection(ipsec_site_connection, profile=None) -Deletes the specified IPsecSiteConnection -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.delete_ipsec_site_connection connection\-name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBipsec_site_connection\fP \-\- ID or name of ipsec site connection to delete -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -True(Succeed) or False -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.delete_ipsecpolicy(ipsecpolicy, profile=None) -Deletes the specified IPsecPolicy -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.delete_ipsecpolicy ipsecpolicy\-name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBipsecpolicy\fP \-\- ID or name of IPSec policy to delete -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -True(Succeed) or False -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.delete_network(network, profile=None) -Deletes the specified network -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.delete_network network\-name -salt \(aq*\(aq neutron.delete_network network\-name profile=openstack1 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBnetwork\fP \-\- ID or name of network to delete -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -True(Succeed) or False -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.delete_port(port, profile=None) -Deletes the specified port -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.delete_network port\-name -salt \(aq*\(aq neutron.delete_network port\-name profile=openstack1 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBport\fP \-\- port name or ID -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -True(Succeed) or False -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.delete_quota(tenant_id, profile=None) -Delete the specified tenant\(aqs quota value -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.update_quota tenant\-id -salt \(aq*\(aq neutron.update_quota tenant\-id profile=openstack1 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBtenant_id\fP \-\- ID of tenant to quota delete -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -True(Delete succeed) or False(Delete failed) -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.delete_router(router, profile=None) -Delete the specified router -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.delete_router router\-name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBrouter\fP \-\- ID or name of router to delete -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -True(Succeed) or False -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.delete_security_group(security_group, profile=None) -Deletes the specified security group -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.delete_security_group security\-group\-name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBsecurity_group\fP \-\- ID or name of security group to delete -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -True(Succeed) or False -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.delete_security_group_rule(security_group_rule_id, profile=None) -Deletes the specified security group rule -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.delete_security_group_rule security\-group\-rule\-id -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBsecurity_group_rule_id\fP \-\- ID of security group rule to delete -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -True(Succeed) or False -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.delete_subnet(subnet, profile=None) -Deletes the specified subnet -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.delete_subnet subnet\-name -salt \(aq*\(aq neutron.delete_subnet subnet\-name profile=openstack1 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBsubnet\fP \-\- ID or name of subnet to delete -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -True(Succeed) or False -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.delete_vpnservice(vpnservice, profile=None) -Deletes the specified VPN service -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.delete_vpnservice vpnservice\-name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBvpnservice\fP \-\- ID or name of vpn service to delete -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -True(Succeed) or False -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.get_quotas_tenant(profile=None) -Fetches tenant info in server\(aqs context for following quota operation -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.get_quotas_tenant -salt \(aq*\(aq neutron.get_quotas_tenant profile=openstack1 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -\fBprofile\fP \-\- Profile to build on (Optional) -.TP -.B Returns -Quotas information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.list_extensions(profile=None) -Fetches a list of all extensions on server side -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.list_extensions -salt \(aq*\(aq neutron.list_extensions profile=openstack1 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -\fBprofile\fP \-\- Profile to build on (Optional) -.TP -.B Returns -List of extensions -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.list_floatingips(profile=None) -Fetch a list of all floatingIPs for a tenant -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.list_floatingips -salt \(aq*\(aq neutron.list_floatingips profile=openstack1 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -\fBprofile\fP \-\- Profile to build on (Optional) -.TP -.B Returns -List of floatingIP -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.list_ikepolicies(profile=None) -Fetches a list of all configured IKEPolicies for a tenant -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.list_ikepolicies -salt \(aq*\(aq neutron.list_ikepolicies profile=openstack1 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -\fBprofile\fP \-\- Profile to build on (Optional) -.TP -.B Returns -List of IKE policy -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.list_ipsec_site_connections(profile=None) -Fetches all configured IPsec Site Connections for a tenant -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.list_ipsec_site_connections -salt \(aq*\(aq neutron.list_ipsec_site_connections profile=openstack1 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -\fBprofile\fP \-\- Profile to build on (Optional) -.TP -.B Returns -List of IPSec site connection -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.list_ipsecpolicies(profile=None) -Fetches a list of all configured IPsecPolicies for a tenant -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.list_ipsecpolicies ipsecpolicy\-name -salt \(aq*\(aq neutron.list_ipsecpolicies ipsecpolicy\-name profile=openstack1 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -\fBprofile\fP \-\- Profile to build on (Optional) -.TP -.B Returns -List of IPSec policy -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.list_networks(profile=None) -Fetches a list of all networks for a tenant -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.list_networks -salt \(aq*\(aq neutron.list_networks profile=openstack1 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -\fBprofile\fP \-\- Profile to build on (Optional) -.TP -.B Returns -List of network -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.list_ports(profile=None) -Fetches a list of all networks for a tenant -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.list_ports -salt \(aq*\(aq neutron.list_ports profile=openstack1 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -\fBprofile\fP \-\- Profile to build on (Optional) -.TP -.B Returns -List of port -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.list_quotas(profile=None) -Fetches all tenants quotas -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.list_quotas -salt \(aq*\(aq neutron.list_quotas profile=openstack1 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -\fBprofile\fP \-\- Profile to build on (Optional) -.TP -.B Returns -List of quotas -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.list_routers(profile=None) -Fetches a list of all routers for a tenant -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.list_routers -salt \(aq*\(aq neutron.list_routers profile=openstack1 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -\fBprofile\fP \-\- Profile to build on (Optional) -.TP -.B Returns -List of router -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.list_security_group_rules(profile=None) -Fetches a list of all security group rules for a tenant -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.list_security_group_rules -salt \(aq*\(aq neutron.list_security_group_rules profile=openstack1 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -\fBprofile\fP \-\- Profile to build on (Optional) -.TP -.B Returns -List of security group rule -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.list_security_groups(profile=None) -Fetches a list of all security groups for a tenant -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.list_security_groups -salt \(aq*\(aq neutron.list_security_groups profile=openstack1 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -\fBprofile\fP \-\- Profile to build on (Optional) -.TP -.B Returns -List of security group -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.list_subnets(profile=None) -Fetches a list of all networks for a tenant -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.list_subnets -salt \(aq*\(aq neutron.list_subnets profile=openstack1 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -\fBprofile\fP \-\- Profile to build on (Optional) -.TP -.B Returns -List of subnet -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.list_vpnservices(retrive_all=True, profile=None, **kwargs) -Fetches a list of all configured VPN services for a tenant -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.list_vpnservices -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBretrive_all\fP \-\- True or False, default: True (Optional) -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -List of VPN service -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.remove_gateway_router(router, profile=None) -Removes an external network gateway from the specified router -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.remove_gateway_router router\-name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBrouter\fP \-\- ID or name of router -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -True(Succeed) or False -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.remove_interface_router(router, subnet, profile=None) -Removes an internal network interface from the specified router -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.remove_interface_router router\-name subnet\-name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBrouter\fP \-\- ID or name of the router -.IP \(bu 2 -\fBsubnet\fP \-\- ID or name of the subnet -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -True(Succeed) or False -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.show_floatingip(floatingip_id, profile=None) -Fetches information of a certain floatingIP -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.show_floatingip floatingip\-id -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBfloatingip_id\fP \-\- ID of floatingIP to look up -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Floating IP information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.show_ikepolicy(ikepolicy, profile=None) -Fetches information of a specific IKEPolicy -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.show_ikepolicy ikepolicy\-name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBikepolicy\fP \-\- ID or name of ikepolicy to look up -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -IKE policy information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.show_ipsec_site_connection(ipsec_site_connection, profile=None) -Fetches information of a specific IPsecSiteConnection -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.show_ipsec_site_connection connection\-name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBipsec_site_connection\fP \-\- ID or name of ipsec site connection -to look up -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -IPSec site connection information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.show_ipsecpolicy(ipsecpolicy, profile=None) -Fetches information of a specific IPsecPolicy -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.show_ipsecpolicy ipsecpolicy\-name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBipsecpolicy\fP \-\- ID or name of IPSec policy to look up -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -IPSec policy information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.show_network(network, profile=None) -Fetches information of a certain network -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.show_network network\-name -salt \(aq*\(aq neutron.show_network network\-name profile=openstack1 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBnetwork\fP \-\- ID or name of network to look up -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Network information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.show_port(port, profile=None) -Fetches information of a certain port -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.show_port port\-id -salt \(aq*\(aq neutron.show_port port\-id profile=openstack1 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBport\fP \-\- ID or name of port to look up -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Port information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.show_quota(tenant_id, profile=None) -Fetches information of a certain tenant\(aqs quotas -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.show_quota tenant\-id -salt \(aq*\(aq neutron.show_quota tenant\-id profile=openstack1 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBtenant_id\fP \-\- ID of tenant -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Quota information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.show_router(router, profile=None) -Fetches information of a certain router -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.show_router router\-name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBrouter\fP \-\- ID or name of router to look up -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Router information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.show_security_group(security_group, profile=None) -Fetches information of a certain security group -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.show_security_group security\-group\-name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBsecurity_group\fP \-\- ID or name of security group to look up -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Security group information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.show_security_group_rule(security_group_rule_id, profile=None) -Fetches information of a certain security group rule -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.show_security_group_rule security\-group\-rule\-id -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBsecurity_group_rule_id\fP \-\- ID of security group rule to look up -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Security group rule information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.show_subnet(subnet, profile=None) -Fetches information of a certain subnet -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.show_subnet subnet\-name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBsubnet\fP \-\- ID or name of subnet to look up -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Subnet information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.show_vpnservice(vpnservice, profile=None, **kwargs) -Fetches information of a specific VPN service -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.show_vpnservice vpnservice\-name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBvpnservice\fP \-\- ID or name of vpn service to look up -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -VPN service information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.update_floatingip(floatingip_id, port, profile=None) -Updates a floatingIP -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.update_floatingip network\-name port\-name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBfloatingip_id\fP \-\- ID of floatingIP -.IP \(bu 2 -\fBport\fP \-\- ID or name of port -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Value of updated floating IP information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.update_network(network, name, profile=None) -Updates a network -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.update_network network\-name new\-network\-name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBnetwork\fP \-\- ID or name of network to update -.IP \(bu 2 -\fBname\fP \-\- Name of this network -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Value of updated network information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.update_port(port, name, admin_state_up=True, profile=None) -Updates a port -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.update_port port\-name network\-name new\-port\-name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBport\fP \-\- Port name or ID -.IP \(bu 2 -\fBname\fP \-\- Name of this port -.IP \(bu 2 -\fBadmin_state_up\fP \-\- Set admin state up to true or false, -default: true (Optional) -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Value of updated port information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.update_quota(tenant_id, subnet=None, router=None, network=None, floatingip=None, port=None, security_group=None, security_group_rule=None, profile=None) -Update a tenant\(aqs quota -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.update_quota tenant\-id subnet=40 router=50 - network=10 floatingip=30 port=30 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBtenant_id\fP \-\- ID of tenant -.IP \(bu 2 -\fBsubnet\fP \-\- Value of subnet quota (Optional) -.IP \(bu 2 -\fBrouter\fP \-\- Value of router quota (Optional) -.IP \(bu 2 -\fBnetwork\fP \-\- Value of network quota (Optional) -.IP \(bu 2 -\fBfloatingip\fP \-\- Value of floatingip quota (Optional) -.IP \(bu 2 -\fBport\fP \-\- Value of port quota (Optional) -.IP \(bu 2 -\fBsecurity_group\fP \-\- Value of security group (Optional) -.IP \(bu 2 -\fBsecurity_group_rule\fP \-\- Value of security group rule (Optional) -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Value of updated quota -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.update_router(router, name=None, admin_state_up=None, profile=None, **kwargs) -Updates a router -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.update_router router_id name=new\-router\-name - admin_state_up=True -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBrouter\fP \-\- ID or name of router to update -.IP \(bu 2 -\fBname\fP \-\- Name of this router -.IP \(bu 2 -\fBext_network\fP \-\- ID or name of the external for the gateway (Optional) -.IP \(bu 2 -\fBadmin_state_up\fP \-\- Set admin state up to true or false, -default: true (Optional) -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.IP \(bu 2 -\fBkwargs\fP \-\- -.UNINDENT -.TP -.B Returns -Value of updated router information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.update_security_group(security_group, name=None, description=None, profile=None) -Updates a security group -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.update_security_group security\-group\-name new\-security\-group\-name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBsecurity_group\fP \-\- ID or name of security group to update -.IP \(bu 2 -\fBname\fP \-\- Name of this security group (Optional) -.IP \(bu 2 -\fBdescription\fP \-\- Description of security group (Optional) -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Value of updated security group information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.update_subnet(subnet, name, profile=None) -Updates a subnet -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.update_subnet subnet\-name new\-subnet\-name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBsubnet\fP \-\- ID or name of subnet to update -.IP \(bu 2 -\fBname\fP \-\- Name of this subnet -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Value of updated subnet information -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.neutron.update_vpnservice(vpnservice, desc, profile=None) -Updates a VPN service -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq neutron.update_vpnservice vpnservice\-name desc=\(aqVPN Service1\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBvpnservice\fP \-\- ID or name of vpn service to update -.IP \(bu 2 -\fBdesc\fP \-\- Set a description for the VPN service -.IP \(bu 2 -\fBprofile\fP \-\- Profile to build on (Optional) -.UNINDENT -.TP -.B Returns -Value of updated VPN service information -.UNINDENT -.UNINDENT .SS salt.modules.nfs3 .sp Module for managing NFS version 3. @@ -84176,77 +74202,6 @@ salt dhcp\-server omapi.delete_host mac=ab:ab:ab:ab:ab:ab .UNINDENT .UNINDENT .UNINDENT -.SS salt.modules.openbsd_sysctl -.sp -Module for viewing and modifying OpenBSD sysctl parameters -.INDENT 0.0 -.TP -.B salt.modules.openbsd_sysctl.assign(name, value) -Assign a single sysctl parameter for this minion -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sysctl.assign net.inet.ip.forwarding 1 -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.openbsd_sysctl.get(name) -Return a single sysctl parameter for this minion -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sysctl.get hw.physmem -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.openbsd_sysctl.persist(name, value, config=\(aq/etc/sysctl.conf\(aq) -Assign and persist a simple sysctl parameter for this minion -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sysctl.persist net.inet.ip.forwarding 1 -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.openbsd_sysctl.show(config_file=False) -Return a list of sysctl parameters for this minion -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sysctl.show -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.openbsdpkg .sp Package support for OpenBSD @@ -84438,265 +74393,6 @@ salt \(aq*\(aq pkg.version ... .UNINDENT .UNINDENT .UNINDENT -.SS salt.modules.openbsdrcctl -.sp -The rcctl service module for OpenBSD -.INDENT 0.0 -.TP -.B salt.modules.openbsdrcctl.available(name) -Return True if the named service is available. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq service.available sshd -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.openbsdrcctl.disable(name, **kwargs) -Disable the named service to not start at boot. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq service.disable -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.openbsdrcctl.disabled(name) -Return True if the named service is disabled at boot, False otherwise. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq service.disabled -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.openbsdrcctl.enable(name, **kwargs) -Enable the named service to start at boot. -.INDENT 7.0 -.TP -.B flags -None -Set optional flags to run the service with. -.UNINDENT -.sp -service.flags can be used to change the default flags. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq service.enable -salt \(aq*\(aq service.enable flags= -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.openbsdrcctl.enabled(name, **kwargs) -Return True if the named service is enabled at boot and the provided -flags match the configured ones (if any). Return False otherwise. -.INDENT 7.0 -.TP -.B name -Service name -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq service.enabled -salt \(aq*\(aq service.enabled flags= -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.openbsdrcctl.get_all() -Return all installed services. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq service.get_all -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.openbsdrcctl.get_disabled() -Return what services are available but not enabled to start at boot. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq service.get_disabled -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.openbsdrcctl.get_enabled() -Return what services are set to run on boot. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq service.get_enabled -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.openbsdrcctl.missing(name) -The inverse of service.available. -Return True if the named service is not available. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq service.missing sshd -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.openbsdrcctl.reload_(name) -Reload the named service. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq service.reload -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.openbsdrcctl.restart(name) -Restart the named service. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq service.restart -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.openbsdrcctl.start(name) -Start the named service. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq service.start -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.openbsdrcctl.status(name, sig=None) -Return the status for a service, returns a bool whether the service is -running. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq service.status -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.openbsdrcctl.stop(name) -Stop the named service. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq service.stop -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.openbsdservice .sp The service module for OpenBSD @@ -84743,7 +74439,7 @@ salt \(aq*\(aq service.disabled .UNINDENT .INDENT 0.0 .TP -.B salt.modules.openbsdservice.enabled(name, **kwargs) +.B salt.modules.openbsdservice.enabled(name) New in version 2014.7.0. .sp @@ -85040,7 +74736,7 @@ salt\-call openstack_config.set /etc/keystone/keystone.conf sql connection foo Oracle DataBase connection module .INDENT 0.0 .TP -.B maintainer +.B mainteiner Vladimir Bormotov <\fI\%bormotov@gmail.com\fP> .TP .B maturity @@ -85104,7 +74800,7 @@ salt \(aq*\(aq oracle.client_version .B salt.modules.oracle.run_query(db, query) Run SQL query and return result .sp -CLI Example: +CLI example: .INDENT 7.0 .INDENT 3.5 .sp @@ -85119,9 +74815,7 @@ salt \(aq*\(aq oracle.run_query my_db "select * from my_table" .INDENT 0.0 .TP .B salt.modules.oracle.show_dbs(*dbs) -Show databases configuration from pillar. Filter by \fI*args\fP -.sp -CLI Example: +Show databases configuration from pillar. Filter by args .INDENT 7.0 .INDENT 3.5 .sp @@ -85709,20 +75403,21 @@ my\-pagerduty\-account: .INDENT 0.0 .TP .B salt.modules.pagerduty.create_event(service_key=None, description=None, details=None, incident_key=None, profile=None) +.INDENT 7.0 +.INDENT 3.5 Create an event in PagerDuty. Designed for use in states. .sp CLI Example: -.INDENT 7.0 +.INDENT 0.0 .INDENT 3.5 -.sp -.nf -.ft C -salt myminion pagerduty.create_event
profile=my\-pagerduty\-account -.ft P -.fi +pagerduty.create_event
profile=my\-pagerduty\-account .UNINDENT .UNINDENT -.sp +.UNINDENT +.UNINDENT +.INDENT 7.0 +.TP +.B : The following parameters are required: .INDENT 7.0 .TP @@ -85740,66 +75435,16 @@ This refers to the configuration profile to use to connect to the PagerDuty service. .UNINDENT .UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.pagerduty.list_escalation_policies(profile=None, api_key=None) -List escalation policies belonging to this account -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -salt myminion pagerduty.list_policies my\-pagerduty\-account -salt myminion pagerduty.list_escalation_policies my\-pagerduty\-account -.UNINDENT -.UNINDENT .UNINDENT .INDENT 0.0 .TP .B salt.modules.pagerduty.list_incidents(profile=None, api_key=None) -List incidents belonging to this account +List services belonging to this account .sp CLI Example: .INDENT 7.0 .INDENT 3.5 -salt myminion pagerduty.list_incidents my\-pagerduty\-account -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.pagerduty.list_maintenance_windows(profile=None, api_key=None) -List maintenance windows belonging to this account -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -salt myminion pagerduty.list_windows my\-pagerduty\-account -salt myminion pagerduty.list_maintenance_windows my\-pagerduty\-account -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.pagerduty.list_policies(profile=None, api_key=None) -List escalation policies belonging to this account -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -salt myminion pagerduty.list_policies my\-pagerduty\-account -salt myminion pagerduty.list_escalation_policies my\-pagerduty\-account -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.pagerduty.list_schedules(profile=None, api_key=None) -List schedules belonging to this account -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -salt myminion pagerduty.list_schedules my\-pagerduty\-account +pagerduty.list_incidents my\-pagerduty\-account .UNINDENT .UNINDENT .UNINDENT @@ -85811,32 +75456,7 @@ List services belonging to this account CLI Example: .INDENT 7.0 .INDENT 3.5 -salt myminion pagerduty.list_services my\-pagerduty\-account -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.pagerduty.list_users(profile=None, api_key=None) -List users belonging to this account -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -salt myminion pagerduty.list_users my\-pagerduty\-account -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.pagerduty.list_windows(profile=None, api_key=None) -List maintenance windows belonging to this account -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -salt myminion pagerduty.list_windows my\-pagerduty\-account -salt myminion pagerduty.list_maintenance_windows my\-pagerduty\-account +pagerduty.list_services my\-pagerduty\-account .UNINDENT .UNINDENT .UNINDENT @@ -86173,12 +75793,8 @@ salt \(aq*\(aq partition.part_list /dev/sda unit=kB .UNINDENT .INDENT 0.0 .TP -.B salt.modules.parted.probe(*devices, **kwargs) -Ask the kernel to update its local partition data. When no args are -specified all block devices are tried. -.sp -Caution: Generally only works on devices with no mounted partitions and -may take a long time to return if specified devices are in use. +.B salt.modules.parted.probe(device=\(aq\(aq) +Ask the kernel to update its local partition data .sp CLI Examples: .INDENT 7.0 @@ -86188,7 +75804,6 @@ CLI Examples: .ft C salt \(aq*\(aq partition.probe salt \(aq*\(aq partition.probe /dev/sda -salt \(aq*\(aq partition.probe /dev/sda /dev/sdb .ft P .fi .UNINDENT @@ -86454,23 +76069,11 @@ salt \(aq*\(aq pecl.update fuse Extract the pillar data for this minion .INDENT 0.0 .TP -.B salt.modules.pillar.ext(external, pillar=None) +.B salt.modules.pillar.ext(external) Generate the pillar and apply an explicit external pillar .sp CLI Example: .INDENT 7.0 -.TP -.B pillar -None -If specified, allows for a dictionary of pillar data to be made -available to pillar and ext_pillar rendering. These pillar variables -will also override any variables of the same name in pillar or -ext_pillar. -.sp -New in version 2015.2.0. - -.UNINDENT -.INDENT 7.0 .INDENT 3.5 .sp .nf @@ -86483,14 +76086,12 @@ salt \(aq*\(aq pillar.ext \(aq{libvirt: _}\(aq .UNINDENT .INDENT 0.0 .TP -.B salt.modules.pillar.get(key, default=, merge=False, delimiter=\(aq:\(aq) +.B salt.modules.pillar.get(key, default=\(aq\(aq, merge=False, delimiter=\(aq:\(aq) New in version 0.14. .sp Attempt to retrieve the named value from pillar, if the named value is not -available return the passed default. The default return is an empty string -except __opts__[\(aqPILLAR_RAISE_ON_MISSING\(aq] is set to True, in which case a -KeyError will be raised. +available return the passed default. The default return is an empty string. .sp If the merge parameter is set to \fBTrue\fP, the default will be recursively merged into the returned pillar data. @@ -86550,23 +76151,11 @@ salt \(aq*\(aq pillar.get pkg:apache .UNINDENT .INDENT 0.0 .TP -.B salt.modules.pillar.item(*args, **kwargs) +.B salt.modules.pillar.item(*args) New in version 0.16.2. .sp -Return one or more pillar entries -.INDENT 7.0 -.TP -.B pillar -none -if specified, allows for a dictionary of pillar data to be made -available to pillar and ext_pillar rendering. these pillar variables -will also override any variables of the same name in pillar or -ext_pillar. -.sp -New in version 2015.2.0. - -.UNINDENT +Return one ore more pillar entries .sp CLI Examples: .INDENT 7.0 @@ -86583,24 +76172,12 @@ salt \(aq*\(aq pillar.item foo bar baz .UNINDENT .INDENT 0.0 .TP -.B salt.modules.pillar.items(*args, **kwargs) +.B salt.modules.pillar.items(*args) Calls the master for a fresh pillar and generates the pillar data on the fly .sp Contrast with \fI\%raw()\fP which returns the pillar data that is currently loaded into the minion. -.INDENT 7.0 -.TP -.B pillar -none -if specified, allows for a dictionary of pillar data to be made -available to pillar and ext_pillar rendering. these pillar variables -will also override any variables of the same name in pillar or -ext_pillar. -.sp -New in version 2015.2.0. - -.UNINDENT .sp CLI Example: .INDENT 7.0 @@ -86652,7 +76229,7 @@ salt \(aq*\(aq pillar.raw key=\(aqroles\(aq Install Python packages with pip to either the system or a virtualenv .INDENT 0.0 .TP -.B salt.modules.pip.freeze(bin_env=None, user=None, cwd=None, use_vt=False) +.B salt.modules.pip.freeze(bin_env=None, user=None, runas=None, cwd=None) Return a list of installed packages either globally or in the specified virtualenv .INDENT 7.0 @@ -86666,6 +76243,16 @@ If uninstalling from a virtualenv, just use the path to the virtualenv .TP .B user The user under which to run pip +.UNINDENT +.sp +\fBNOTE:\fP +.INDENT 7.0 +.INDENT 3.5 +The \fBrunas\fP argument is deprecated as of 0.16.2. \fBuser\fP should be +used instead. +.UNINDENT +.UNINDENT +.INDENT 7.0 .TP .B cwd Current working directory to run pip from @@ -86685,7 +76272,7 @@ salt \(aq*\(aq pip.freeze /home/code/path/to/virtualenv/ .UNINDENT .INDENT 0.0 .TP -.B salt.modules.pip.install(pkgs=None, requirements=None, env=None, bin_env=None, use_wheel=False, no_use_wheel=False, log=None, proxy=None, timeout=None, editable=None, find_links=None, index_url=None, extra_index_url=None, no_index=False, mirrors=None, build=None, target=None, download=None, download_cache=None, source=None, upgrade=False, force_reinstall=False, ignore_installed=False, exists_action=None, no_deps=False, no_install=False, no_download=False, global_options=None, install_options=None, user=None, no_chown=False, cwd=None, activate=False, pre_releases=False, cert=None, allow_all_external=False, allow_external=None, allow_unverified=None, process_dependency_links=False, __env__=None, saltenv=\(aqbase\(aq, env_vars=None, use_vt=False) +.B salt.modules.pip.install(pkgs=None, requirements=None, env=None, bin_env=None, use_wheel=False, no_use_wheel=False, log=None, proxy=None, timeout=None, editable=None, find_links=None, index_url=None, extra_index_url=None, no_index=False, mirrors=None, build=None, target=None, download=None, download_cache=None, source=None, upgrade=False, force_reinstall=False, ignore_installed=False, exists_action=None, no_deps=False, no_install=False, no_download=False, global_options=None, install_options=None, user=None, runas=None, no_chown=False, cwd=None, activate=False, pre_releases=False, cert=None, allow_all_external=False, allow_external=None, allow_unverified=None, process_dependency_links=False, __env__=None, saltenv=\(aqbase\(aq) Install packages with pip .sp Install packages individually or from a pip requirements file. Install @@ -86801,6 +76388,16 @@ install command. .TP .B user The user under which to run pip +.UNINDENT +.sp +\fBNOTE:\fP +.INDENT 7.0 +.INDENT 3.5 +The \fBrunas\fP argument is deprecated as of 0.16.2. \fBuser\fP should be +used instead. +.UNINDENT +.UNINDENT +.INDENT 7.0 .TP .B no_chown When user is given, do not attempt to copy and chown @@ -86834,14 +76431,6 @@ Allow the installation of insecure and unverifiable files (comma separated list) .TP .B process_dependency_links Enable the processing of dependency links -.TP -.B use_vt -Use VT terminal emulation (see ouptut while installing) -.TP -.B env_vars -Set environment variables that some builds will depend on. For example, -a Python C\-module may have a Makefile that needs INCLUDE_PATH set to -pick up a header file while compiling. .UNINDENT .sp CLI Example: @@ -86873,7 +76462,7 @@ salt \(aq*\(aq pip.install markdown,django editable=git+https:// .UNINDENT .INDENT 0.0 .TP -.B salt.modules.pip.list_(prefix=None, bin_env=None, user=None, cwd=None) +.B salt.modules.pip.list_(prefix=None, bin_env=None, user=None, runas=None, cwd=None) Filter list of installed apps from \fBfreeze\fP and check to see if \fBprefix\fP exists in the list of packages installed. .sp @@ -86891,24 +76480,7 @@ salt \(aq*\(aq pip.list salt .UNINDENT .INDENT 0.0 .TP -.B salt.modules.pip.list_upgrades(bin_env=None, user=None, cwd=None) -Check whether or not an upgrade is available for all packages -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pip.list_upgrades -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.pip.uninstall(pkgs=None, requirements=None, bin_env=None, log=None, proxy=None, timeout=None, user=None, no_chown=False, cwd=None, __env__=None, saltenv=\(aqbase\(aq, use_vt=False) +.B salt.modules.pip.uninstall(pkgs=None, requirements=None, bin_env=None, log=None, proxy=None, timeout=None, user=None, runas=None, no_chown=False, cwd=None, __env__=None, saltenv=\(aqbase\(aq) Uninstall packages with pip .sp Uninstall packages individually or from a pip requirements file. Uninstall @@ -86944,6 +76516,16 @@ Set the socket timeout (default 15 seconds) .TP .B user The user under which to run pip +.UNINDENT +.sp +\fBNOTE:\fP +.INDENT 7.0 +.INDENT 3.5 +The \fBrunas\fP argument is deprecated as of 0.16.2. \fBuser\fP should be +used instead. +.UNINDENT +.UNINDENT +.INDENT 7.0 .TP .B no_chown When user is given, do not attempt to copy and chown @@ -86951,9 +76533,6 @@ a requirements file .TP .B cwd Current working directory to run pip from -.TP -.B use_vt -Use VT terminal emulation (see ouptut while installing) .UNINDENT .sp CLI Example: @@ -86973,57 +76552,6 @@ salt \(aq*\(aq pip.uninstall bin_env=/path/to/pip_bin .UNINDENT .INDENT 0.0 .TP -.B salt.modules.pip.upgrade(bin_env=None, user=None, cwd=None, use_vt=False) -New in version 2015.2.0. - -.sp -Upgrades outdated pip packages -.sp -Returns a dict containing the changes. -.INDENT 7.0 -.INDENT 3.5 -.INDENT 0.0 -.TP -.B {\(aq\(aq: {\(aqold\(aq: \(aq\(aq, -\(aqnew\(aq: \(aq\(aq}} -.UNINDENT -.UNINDENT -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pip.upgrade -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.pip.upgrade_available(pkg, bin_env=None, user=None, cwd=None) -New in version 2015.2.0. - -.sp -Check whether or not an upgrade is available for a given package -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pip.upgrade_available -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.pip.version(bin_env=None) New in version 0.17.0. @@ -88939,9 +78467,8 @@ salt \(aq*\(aq pkg.updating foo filename=/tmp/UPDATING .UNINDENT .INDENT 0.0 .TP -.B salt.modules.pkgng.upgrade(*names, **kwargs) -Upgrade named or all packages (run a \fBpkg upgrade\fP). If is -ommitted, the operation is executed on all packages. +.B salt.modules.pkgng.upgrade(jail=None, chroot=None, force=False, local=False, dryrun=False) +Upgrade all packages (run a \fBpkg upgrade\fP) .sp CLI Example: .INDENT 7.0 @@ -88949,7 +78476,7 @@ CLI Example: .sp .nf .ft C -salt \(aq*\(aq pkg.upgrade +salt \(aq*\(aq pkg.upgrade .ft P .fi .UNINDENT @@ -88965,7 +78492,7 @@ CLI Example: .sp .nf .ft C -salt \(aq*\(aq pkg.upgrade jail= +salt \(aq*\(aq pkg.upgrade jail= .ft P .fi .UNINDENT @@ -88981,7 +78508,7 @@ CLI Example: .sp .nf .ft C -salt \(aq*\(aq pkg.upgrade chroot=/path/to/chroot +salt \(aq*\(aq pkg.upgrade chroot=/path/to/chroot .ft P .fi .UNINDENT @@ -89000,7 +78527,7 @@ CLI Example: .sp .nf .ft C -salt \(aq*\(aq pkg.upgrade force=True +salt \(aq*\(aq pkg.upgrade force=True .ft P .fi .UNINDENT @@ -89017,7 +78544,7 @@ CLI Example: .sp .nf .ft C -salt \(aq*\(aq pkg.upgrade local=True +salt \(aq*\(aq pkg.upgrade local=True .ft P .fi .UNINDENT @@ -89034,7 +78561,7 @@ CLI Example: .sp .nf .ft C -salt \(aq*\(aq pkg.upgrade dryrun=True +salt \(aq*\(aq pkg.upgrade dryrun=True .ft P .fi .UNINDENT @@ -89623,63 +79150,6 @@ changes are made to them. Each file should look as if it has been edited by hand; order, comments and whitespace are all preserved. .INDENT 0.0 .TP -.B salt.modules.postfix.delete(queue_id) -Delete message(s) from the mail queue -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq postfix.delete 5C33CA0DEA - -salt \(aq*\(aq postfix.delete ALL -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.postfix.hold(queue_id) -Put message(s) on hold from the mail queue -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq postfix.hold 5C33CA0DEA - -salt \(aq*\(aq postfix.hold ALL -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.postfix.requeue(queue_id) -Requeue message(s) in the mail queue -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq postfix.requeue 5C33CA0DEA - -salt \(aq*\(aq postfix.requeue ALL -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.postfix.set_main(key, value, path=\(aq/etc/postfix/main.cf\(aq) Set a single config value in the main.cf file. If the value does not already exist, it will be appended to the end. @@ -89752,42 +79222,6 @@ salt postfix.show_master path=/path/to/master.cf .UNINDENT .UNINDENT .UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.postfix.show_queue() -Show contents of the mail queue -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq postfix.show_queue -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.postfix.unhold(queue_id) -Set held message(s) in the mail queue to unheld -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq postfix.unhold 5C33CA0DEA - -salt \(aq*\(aq postfix.unhold ALL -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.postgres .sp Module to provide Postgres compatibility to salt. @@ -89858,7 +79292,7 @@ salt \(aq*\(aq postgres.create_extension \(aqadminpack\(aq .INDENT 0.0 .TP .B salt.modules.postgres.create_metadata(name, ext_version=None, schema=None, user=None, host=None, port=None, maintenance_db=None, password=None, runas=None) -Get lifecycle information about an extension +Get lifecycle informations about an extension .sp CLI Example: .INDENT 7.0 @@ -90050,7 +79484,7 @@ salt \(aq*\(aq postgres.group_remove \(aqgroupname\(aq .INDENT 0.0 .TP .B salt.modules.postgres.group_update(groupname, user=None, host=None, port=None, maintenance_db=None, password=None, createdb=None, createroles=None, createuser=None, encrypted=None, inherit=None, login=None, superuser=None, replication=None, rolepassword=None, groups=None, runas=None) -Updates a postgres group +Updated a postgres group .sp CLI Examples: .INDENT 7.0 @@ -90086,7 +79520,7 @@ salt \(aq*\(aq postgres.installed_extensions .INDENT 0.0 .TP .B salt.modules.postgres.is_available_extension(name, user=None, host=None, port=None, maintenance_db=None, password=None, runas=None) -Test if a specific extension is available +Test if a specific extension is installed .sp CLI Example: .INDENT 7.0 @@ -90094,7 +79528,7 @@ CLI Example: .sp .nf .ft C -salt \(aq*\(aq postgres.is_available_extension +salt \(aq*\(aq postgres.is_installed_extension .ft P .fi .UNINDENT @@ -90178,175 +79612,7 @@ salt \(aq*\(aq postgres.role_get postgres .UNINDENT .INDENT 0.0 .TP -.B salt.modules.postgres.schema_create(dbname, name, owner=None, user=None, db_user=None, db_password=None, db_host=None, db_port=None) -Creates a Postgres schema. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq postgres.schema_create dbname name owner=\(aqowner\(aq \e - user=\(aquser\(aq \e - db_user=\(aquser\(aq db_password=\(aqpassword\(aq - db_host=\(aqhostname\(aq db_port=\(aqport\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.postgres.schema_exists(dbname, name, db_user=None, db_password=None, db_host=None, db_port=None) -Checks if a schema exists on the Postgres server. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq postgres.schema_exists dbname schemaname -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B dbname -Database name we query on -.TP -.B name -Schema name we look for -.TP -.B db_user -database username if different from config or default -.TP -.B db_password -user password if any password for a specified user -.TP -.B db_host -Database host if different from config or default -.TP -.B db_port -Database port if different from config or default -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.postgres.schema_get(dbname, name, db_user=None, db_password=None, db_host=None, db_port=None) -Return a dict with information about schemas in a database. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq postgres.schema_get dbname name -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B dbname -Database name we query on -.TP -.B name -Schema name we look for -.TP -.B db_user -database username if different from config or default -.TP -.B db_password -user password if any password for a specified user -.TP -.B db_host -Database host if different from config or default -.TP -.B db_port -Database port if different from config or default -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.postgres.schema_list(dbname, db_user=None, db_password=None, db_host=None, db_port=None) -Return a dict with information about schemas in a Postgres database. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq postgres.schema_list dbname -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B dbname -Database name we query on -.TP -.B db_user -database username if different from config or default -.TP -.B db_password -user password if any password for a specified user -.TP -.B db_host -Database host if different from config or default -.TP -.B db_port -Database port if different from config or default -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.postgres.schema_remove(dbname, name, user=None, db_user=None, db_password=None, db_host=None, db_port=None) -Removes a schema from the Postgres server. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq postgres.schema_remove dbname schemaname -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B dbname -Database name we work on -.TP -.B schemaname -The schema\(aqs name we\(aqll remove -.TP -.B user -System user all operations should be performed on behalf of -.TP -.B db_user -database username if different from config or default -.TP -.B db_password -user password if any password for a specified user -.TP -.B db_host -Database host if different from config or default -.TP -.B db_port -Database port if different from config or default -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.postgres.user_create(username, user=None, host=None, port=None, maintenance_db=None, password=None, createdb=None, createuser=None, createroles=None, inherit=None, login=None, connlimit=None, encrypted=None, superuser=None, replication=None, rolepassword=None, groups=None, runas=None) +.B salt.modules.postgres.user_create(username, user=None, host=None, port=None, maintenance_db=None, password=None, createdb=None, createuser=None, createroles=None, inherit=None, login=None, encrypted=None, superuser=None, replication=None, rolepassword=None, groups=None, runas=None) Creates a Postgres user. .sp CLI Examples: @@ -90418,7 +79684,7 @@ salt \(aq*\(aq postgres.user_remove \(aqusername\(aq .UNINDENT .INDENT 0.0 .TP -.B salt.modules.postgres.user_update(username, user=None, host=None, port=None, maintenance_db=None, password=None, createdb=None, createuser=None, createroles=None, encrypted=None, superuser=None, inherit=None, login=None, connlimit=None, replication=None, rolepassword=None, groups=None, runas=None) +.B salt.modules.postgres.user_update(username, user=None, host=None, port=None, maintenance_db=None, password=None, createdb=None, createuser=None, createroles=None, encrypted=None, superuser=None, inherit=None, login=None, replication=None, rolepassword=None, groups=None, runas=None) Updates a Postgres user. .sp CLI Examples: @@ -91069,34 +80335,6 @@ salt \(aq*\(aq ps.pkill bash signal=9 user=tom .UNINDENT .INDENT 0.0 .TP -.B salt.modules.ps.proc_info(pid, attrs=None) -Return a dictionary of information for a process id (PID). -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq ps.proc_info 2322 -salt \(aq*\(aq ps.proc_info 2322 attrs=\(aq["pid", "name"]\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B pid -PID of process to query. -.TP -.B attrs -Optional list of desired process attributes. The list of possible -attributes can be found here: -\fI\%http://pythonhosted.org/psutil/#psutil.Process\fP -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.ps.swap_memory() New in version 2014.7.0. @@ -91305,18 +80543,6 @@ salt \(aq*\(aq publish.publish test.kwarg arg=\(aqcheese=spam\(aq .fi .UNINDENT .UNINDENT -.sp -Multiple keyword arguments should be passed as a list. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq publish.publish test.kwarg arg="[\(aqcheese=spam\(aq,\(aqspam=cheese\(aq]" -.ft P -.fi -.UNINDENT -.UNINDENT .UNINDENT .UNINDENT .UNINDENT @@ -91375,7 +80601,7 @@ CLI Example: .sp .nf .ft C -salt \(aq*\(aq puppet.enable +salt \(aq*\(aq puppet.disable .ft P .fi .UNINDENT @@ -91850,23 +81076,6 @@ salt \(aq*\(aq user.list_users .UNINDENT .UNINDENT .UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.pw_user.rename(name, new_name) -Change the username for a named user -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq user.rename name new_name -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.pyenv .sp Manage python installations with pyenv. @@ -92111,8 +81320,7 @@ salt \(aq*\(aq qemu_img.make_image /tmp/image.raw 10240 raw .UNINDENT .UNINDENT .SS salt.modules.qemu_nbd -.sp -Qemu Command Wrapper +.SS Qemu Command Wrapper .sp The qemu system comes with powerful tools, such as qemu\-img and qemu\-nbd which are used here to build up kvm images. @@ -92508,7 +81716,7 @@ salt \(aq*\(aq rabbitmq.force_reset .UNINDENT .INDENT 0.0 .TP -.B salt.modules.rabbitmq.join_cluster(host, user=\(aqrabbit\(aq, ram_node=None, runas=None) +.B salt.modules.rabbitmq.join_cluster(host, user=\(aqrabbit\(aq, runas=None) Join a rabbit cluster .sp CLI Example: @@ -92517,7 +81725,7 @@ CLI Example: .sp .nf .ft C -salt \(aq*\(aq rabbitmq.join_cluster \(aqrabbit.example.com\(aq \(aqrabbit\(aq +salt \(aq*\(aq rabbitmq.join_cluster \(aqrabbit\(aq \(aqrabbit.example.com\(aq .ft P .fi .UNINDENT @@ -94348,7 +83556,7 @@ salt \(aq*\(aq service.enable .UNINDENT .INDENT 0.0 .TP -.B salt.modules.rh_service.enabled(name, **kwargs) +.B salt.modules.rh_service.enabled(name) Check to see if the named service is enabled to start on boot .sp CLI Example: @@ -94641,38 +83849,6 @@ salt \(aq*\(aq riak.stop Support for rpm .INDENT 0.0 .TP -.B salt.modules.rpm.diff(package, path) -Return a formatted diff between current file and original in a package. -NOTE: this function includes all files (configuration and not), but does -not work on binary content. -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBpackage\fP \-\- The name of the package -.IP \(bu 2 -\fBpath\fP \-\- Full path to the installed file -.UNINDENT -.TP -.B Returns -Difference or empty string. For binary files only a notification. -.UNINDENT -.sp -CLI example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq lowpkg.diff apache2 /etc/apache2/httpd.conf -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.rpm.file_dict(*packages) List the files that belong to a package, sorted by group. Not specifying any packages will return a list of _every_ file on the system\(aqs rpm @@ -94742,53 +83918,6 @@ salt \(aq*\(aq lowpkg.list_pkgs .UNINDENT .INDENT 0.0 .TP -.B salt.modules.rpm.modified(*packages, **flags) -List the modified files that belong to a package. Not specifying any packages -will return a list of _all_ modified files on the system\(aqs RPM database. -.sp -New in version 2015.2.0. - -.sp -CLI examples: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq lowpkg.modified httpd -salt \(aq*\(aq lowpkg.modified httpd postfix -salt \(aq*\(aq lowpkg.modified -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.rpm.owner(*paths) -Return the name of the package that owns the file. Multiple file paths can -be passed. If a single path is passed, a string will be returned, -and if multiple paths are passed, a dictionary of file/package name pairs -will be returned. -.sp -If the file is not owned by a package, or is not present on the minion, -then an empty string will be returned for that path. -.sp -CLI Examples: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq lowpkg.owner /usr/bin/apachectl -salt \(aq*\(aq lowpkg.owner /usr/bin/apachectl /etc/httpd/conf/httpd.conf -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.rpm.verify(*package, **kwargs) Runs an rpm \-Va on a system, and returns the results in a dict .sp @@ -94871,200 +84000,6 @@ salt \(aq*\(aq rsync.version .UNINDENT .UNINDENT .UNINDENT -.SS salt.modules.runit -.sp -runit service module -.sp -This module is compatible with the \fBservice\fP states, -so it can be used to maintain services using the \fBprovider\fP argument: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -myservice: - service: - \- running - \- provider: runit -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Note that the \fBenabled\fP argument is not available with this provider. -.INDENT 0.0 -.TP -.B salt.modules.runit.available(name) -Returns \fBTrue\fP if the specified service is available, otherwise returns -\fBFalse\fP\&. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq runit.available foo -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.runit.full_restart(name) -Calls runit.restart() function -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq runit.full_restart -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.runit.get_all() -Return a list of all available services -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq runit.get_all -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.runit.missing(name) -The inverse of runit.available. -Returns \fBTrue\fP if the specified service is not available, otherwise returns -\fBFalse\fP\&. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq runit.missing foo -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.runit.reload_(name) -Send a HUP to service via runit -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq runit.reload -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.runit.restart(name) -Restart service via runit. This will stop/start service -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq runit.restart -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.runit.start(name) -Starts service via runit -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq runit.start -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.runit.status(name, sig=None) -Return the status for a service via runit, return pid if running -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq runit.status -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.runit.stop(name) -Stops service via runit -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq runit.stop -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.runit.term(name) -Send a TERM to service via runit -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq runit.term -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.rvm .sp Manage ruby installations and gemsets with RVM, the Ruby Version Manager. @@ -95824,7 +84759,7 @@ CLI Example: .sp .nf .ft C -salt \(aq*\(aq saltutil.cmd_iter +salt \(aq*\(aq saltutil.cmd .ft P .fi .UNINDENT @@ -95919,23 +84854,6 @@ salt \(aq*\(aq saltutil.mmodule base test.ping .UNINDENT .INDENT 0.0 .TP -.B salt.modules.saltutil.pillar_refresh() -Signal the minion to refresh the pillar data. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq saltutil.refresh_pillar -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.saltutil.refresh_modules() Signal the minion to refresh the module and grain data .sp @@ -95987,14 +84905,11 @@ salt \(aq*\(aq saltutil.regen_keys .UNINDENT .INDENT 0.0 .TP -.B salt.modules.saltutil.revoke_auth(preserve_minion_cache=False) +.B salt.modules.saltutil.revoke_auth() The minion sends a request to the master to revoke its own key. Note that the minion session will be revoked and the minion may not be able to return the result of this command back to the master. .sp -If the \(aqpreserve_minion_cache\(aq flag is set to True, the master -cache for this minion will not be removed. -.sp CLI Example: .INDENT 7.0 .INDENT 3.5 @@ -96310,7 +85225,7 @@ salt \(aq*\(aq saltutil.wheel key.accept match=jerry .UNINDENT .SS salt.modules.schedule .sp -Module for managing the Salt schedule on a minion +Module for manging the Salt schedule on a minion .sp New in version 2014.7.0. @@ -96326,8 +85241,6 @@ CLI Example: .nf .ft C salt \(aq*\(aq schedule.add job1 function=\(aqtest.ping\(aq seconds=3600 -# If function have some arguments, use job_args -salt \(aq*\(aq schedule.add job2 function=\(aqcmd.run\(aq job_args=[\(aqdate >> /tmp/date.log\(aq] seconds=60 .ft P .fi .UNINDENT @@ -96352,23 +85265,6 @@ salt \(aq*\(aq schedule.build_schedule_item job1 function=\(aqtest.ping\(aq seco .UNINDENT .INDENT 0.0 .TP -.B salt.modules.schedule.copy(name, target, **kwargs) -Copy scheduled job to another minion or minions. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq schedule.copy jobname target -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.schedule.delete(name, **kwargs) Delete a job from the minion\(aqs schedule .sp @@ -96490,23 +85386,6 @@ salt \(aq*\(aq schedule.modify job1 function=\(aqtest.ping\(aq seconds=3600 .UNINDENT .INDENT 0.0 .TP -.B salt.modules.schedule.move(name, target, **kwargs) -Move scheduled job to another minion or minions. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq schedule.move jobname target -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.schedule.purge(**kwargs) Purge all the jobs currently scheduled on the minion .sp @@ -96576,82 +85455,6 @@ salt \(aq*\(aq schedule.save .UNINDENT .UNINDENT .UNINDENT -.SS salt.modules.scsi -.sp -SCSI administration module -.INDENT 0.0 -.TP -.B salt.modules.scsi.ls_() -List SCSI devices, with details -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq scsi.ls -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.scsi.rescan_all(host) -List scsi devices -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq scsi.rescan_all(0) -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.SS salt.modules.sdb -.SS Module for Manipulating Data via the Salt DB API -.INDENT 0.0 -.TP -.B salt.modules.sdb.get(uri) -Get a value from a db, using a uri in the form of sdb:///. If -the uri provided does not start with sdb://, then it will be returned as\-is. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sdb.get sdb://mymemcached/foo -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.sdb.set_(uri, value) -Set a value in a db, using a uri in the form of \fBsdb:///\fP\&. -If the uri provided does not start with \fBsdb://\fP or the value is not -successfully set, return \fBFalse\fP\&. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sdb.set sdb://mymemcached/foo bar -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.seed .sp Virtual machine image management tools @@ -96725,23 +85528,6 @@ salt \(aqminion\(aq seed.mkconfig [config=config_data] [tmp=tmp_dir] \e .UNINDENT .UNINDENT .UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.seed.prep_bootstrap(mpt) -Update and get the random script to a random place -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq seed.prep_bootstrap /tmp -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.selinux .sp Execute calls on selinux @@ -97192,9 +85978,6 @@ salt \(aq*\(aq shadow.default_hash .INDENT 0.0 .TP .B salt.modules.shadow.del_password(name) -New in version 2014.7.0. - -.sp Delete the password from name user .sp CLI Example: @@ -97212,9 +85995,6 @@ salt \(aq*\(aq shadow.del_password username .INDENT 0.0 .TP .B salt.modules.shadow.gen_password(password, crypt_salt=None, algorithm=\(aqsha512\(aq) -New in version 2014.7.0. - -.sp Generate hashed password .INDENT 7.0 .TP @@ -97766,8 +86546,8 @@ that use SMF also. (e.g. SmartOS) Returns \fBTrue\fP if the specified service is available, otherwise returns \fBFalse\fP\&. .sp -We look up the name with the svcs command to get back the FMRI -This allows users to use simpler service names +The Solaris and SmartOS "if" statement uses svcs to return the service name from the +package name. .sp CLI Example: .INDENT 7.0 @@ -97834,7 +86614,7 @@ salt \(aq*\(aq service.enable .UNINDENT .INDENT 0.0 .TP -.B salt.modules.smf.enabled(name, **kwargs) +.B salt.modules.smf.enabled(name) Check to see if the named service is enabled to start on boot .sp CLI Example: @@ -98066,7 +86846,6 @@ For example: .ft C my\-smtp\-login: smtp.server: smtp.domain.com - smtp.tls: True smtp.sender: admin@domain.com smtp.username: myuser smtp.password: verybadpass @@ -98084,14 +86863,12 @@ user\-definable, and optional. The following configurations are both valid: .ft C my\-smtp\-login: smtp.server: smtp.domain.com - smtp.tls: True smtp.sender: admin@domain.com smtp.username: myuser smtp.password: verybadpass another\-smtp\-login: smtp.server: smtp.domain.com - smtp.tls: True smtp.sender: admin@domain.com smtp.username: myuser smtp.password: verybadpass @@ -98801,391 +87578,6 @@ salt \(aq*\(aq user.list_groups foo .UNINDENT .UNINDENT .UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.solaris_user.rename(name, new_name) -Change the username for a named user -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq user.rename name new_name -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.SS salt.modules.solarisips -.sp -IPS pkg support for Solaris -.sp -This module provides support for Solaris 11 new package management \- IPS (Image Packaging System). -In order to manage the IPS packages using salt, you need to override the \fBpkg\fP provider -by setting the \fBproviders\fP parameter in your Minion config file like this: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -providers: - pkg: solarisips -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Or you can set the provider in sls for each pkg: -.. code\-block:: yaml -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.TP -.B mypackage: -.INDENT 7.0 -.TP -.B pkg.installed: -.INDENT 7.0 -.IP \(bu 2 -provider: solarisips -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.solarisips.available_version(name, **kwargs) -The available version of the package in the repository. -In case of multiple match, it returns list of all matched packages. -Accepts full or partial FMRI. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.latest_version pkg://solaris/entire -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.solarisips.get_fmri(name, **kwargs) -Returns FMRI from partial name. Returns \(aq\(aq if not found. -In case of multiple match, the function returns list of all matched packages. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.get_fmri bash -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.solarisips.install(name=None, refresh=False, pkgs=None, version=None, test=False, **kwargs) -Install the named package using the IPS pkg command. -Accepts full or partial FMRI. -.sp -Returns a dict containing the new package names and versions: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -{\(aq\(aq: {\(aqold\(aq: \(aq\(aq, - \(aqnew\(aq: \(aq\(aq}} -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Multiple Package Installation Options: -.INDENT 7.0 -.TP -.B pkgs -A list of packages to install. Must be passed as a python list. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.install vim -salt \(aq*\(aq pkg.install pkg://solaris/editor/vim -salt \(aq*\(aq pkg.install pkg://solaris/editor/vim refresh=True -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.solarisips.is_installed(name, **kwargs) -Returns True if the package is installed. Otherwise returns False. -Name can be full or partial FMRI. -In case of multiple match from partial FMRI name, it returns True. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.is_installed bash -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.solarisips.latest_version(name, **kwargs) -The available version of the package in the repository. -In case of multiple match, it returns list of all matched packages. -Accepts full or partial FMRI. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.latest_version pkg://solaris/entire -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.solarisips.list_pkgs(versions_as_list=False, **kwargs) -List the currently installed packages as a dict: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -{\(aq\(aq: \(aq\(aq} -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.list_pkgs -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.solarisips.list_upgrades(refresh=False) -Lists all packages available for update. -When run in global zone, it reports only upgradable packages for the global zone. -When run in non\-global zone, it can report more upgradable packages than "pkg update \-vn" because "pkg update" hides packages that require newer version of pkg://solaris/entire (which means that they can be upgraded only from global zone). Simply said: if you see pkg://solaris/entire in the list of upgrades, you should upgrade the global zone to get all possible updates. -You can force full pkg DB refresh before listing. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.list_upgrades -salt \(aq*\(aq pkg.list_upgrades refresh=True -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.solarisips.normalize_name(name, **kwargs) -Normalizes pkg name to full FMRI before running pkg.install. -In case of multiple match or no match, it returns the name without modifications and lets the "pkg install" to decide what to do. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.normalize_name vim -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.solarisips.purge(name, **kwargs) -Remove specified package. Accepts full or partial FMRI. -.sp -Returns a list containing the removed packages. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.purge -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.solarisips.refresh_db(full=False) -Updates the remote repos database. You can force the full pkg DB refresh from all publishers regardless the last refresh time. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.refresh_db -salt \(aq*\(aq pkg.refresh_db full=True -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.solarisips.remove(name=None, pkgs=None, **kwargs) -Remove specified package. Accepts full or partial FMRI. -In case of multiple match, the command fails and won\(aqt modify the OS. -.INDENT 7.0 -.TP -.B name -The name of the package to be deleted. -.UNINDENT -.sp -Multiple Package Options: -.INDENT 7.0 -.TP -.B pkgs -A list of packages to delete. Must be passed as a python list. The -\fBname\fP parameter will be ignored if this option is passed. -.UNINDENT -.sp -Returns a list containing the removed packages. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.remove -salt \(aq*\(aq pkg.remove tcsh -salt \(aq*\(aq pkg.remove pkg://solaris/shell/tcsh -salt \(aq*\(aq pkg.remove pkgs=\(aq["foo", "bar"]\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.solarisips.search(name, versions_as_list=False, **kwargs) -Searches the repository for given pkg name. -The name can be full or partial FMRI. All matches are printed. Globs are also supported. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.is_installed bash -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.solarisips.upgrade(refresh=False, **kwargs) -Upgrade all packages to the latest possible version. -When run in global zone, it updates also all non\-global zones. -In non\-global zones upgrade is limited by dependency constrains linked to the version of pkg://solaris/entire. -.sp -Returns also a raw output of "pkg update" command (because if update creates a new boot environment, no immediate changes are visible in "pkg list"). -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.upgrade -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.solarisips.upgrade_available(name) -Check if there is an upgrade available for a certain package -Accepts full or partial FMRI. Returns all matches found. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.upgrade_available apache\-22 -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.solarisips.version(*names, **kwargs) -Common interface for obtaining the version of installed packages. -Accepts full or partial FMRI. If called using pkg_resource, full FMRI is required. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.version vim -salt \(aq*\(aq pkg.version foo bar baz -salt \(aq*\(aq pkg_resource.version pkg://solaris/entire -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.solarispkg .sp Package support for Solaris @@ -99595,8 +87987,7 @@ salt \(aq*\(aq pkg.version ... .UNINDENT .UNINDENT .SS salt.modules.solr -.sp -Apache Solr Salt Module +.SS Apache Solr Salt Module .sp Author: Jed Glazner Version: 0.2.1 @@ -100478,153 +88869,6 @@ salt \(aq*\(aq solr.version .UNINDENT .UNINDENT .UNINDENT -.SS salt.modules.splunk_search -.sp -Module for interop with the Splunk API -.sp -New in version 2015.2. - -.INDENT 0.0 -.TP -.B depends -.INDENT 7.0 -.IP \(bu 2 -splunk\-sdk python module -.UNINDENT -.TP -.B configuration -Configure this module by specifying the name of a configuration -profile in the minion config, minion pillar, or master config. The module -will use the \(aqsplunk\(aq key by default, if defined. -.sp -For example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -splunk: - username: alice - password: abc123 - host: example.splunkcloud.com - port: 8080 -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.splunk_search.create(name, profile=\(aqsplunk\(aq, **kwargs) -Create a splunk search -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -splunk_search.create \(aqmy search name\(aq search=\(aqerror msg\(aq -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.splunk_search.delete(name, profile=\(aqsplunk\(aq) -Delete a splunk search -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -splunk_search.delete \(aqmy search name\(aq -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.splunk_search.get(name, profile=\(aqsplunk\(aq) -Get a splunk search -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -splunk_search.get \(aqmy search name\(aq -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.splunk_search.list(profile=\(aqsplunk\(aq) -List splunk searches (names only) -.INDENT 7.0 -.TP -.B CLI Example: -splunk_search.list -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.splunk_search.list_all(prefix=None, app=None, owner=None, description_contains=None, name_not_contains=None, profile=\(aqsplunk\(aq) -Get all splunk search details. Produces results that can be used to create -an sls file. -.sp -if app or owner are specified, results will be limited to matching saved -searches. -.sp -if description_contains is specified, results will be limited to those -where "description_contains in description" is true if name_not_contains is -specified, results will be limited to those where "name_not_contains not in -name" is true. -.sp -If prefix parameter is given, alarm names in the output will be prepended -with the prefix; alarms that have the prefix will be skipped. This can be -used to convert existing alarms to be managed by salt, as follows: -.sp -CLI example: -.INDENT 7.0 -.INDENT 3.5 -.INDENT 0.0 -.IP 1. 3 -.INDENT 3.0 -.TP -.B Make a "backup" of all existing searches -$ salt\-call splunk_search.list_all \-\-out=txt | sed "s/local: //" > legacy_searches.sls -.UNINDENT -.IP 2. 3 -.INDENT 3.0 -.TP -.B Get all searches with new prefixed names -$ salt\-call splunk_search.list_all "prefix=**MANAGED BY SALT** " \-\-out=txt | sed "s/local: //" > managed_searches.sls -.UNINDENT -.IP 3. 3 -.INDENT 3.0 -.TP -.B Insert the managed searches into splunk -$ salt\-call state.sls managed_searches.sls -.UNINDENT -.IP 4. 3 -Manually verify that the new searches look right -.IP 5. 3 -Delete the original searches -$ sed s/present/absent/ legacy_searches.sls > remove_legacy_searches.sls -$ salt\-call state.sls remove_legacy_searches.sls -.IP 6. 3 -Get all searches again, verify no changes -$ salt\-call splunk_search.list_all \-\-out=txt | sed "s/local: //" > final_searches.sls -$ diff final_searches.sls managed_searches.sls -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.splunk_search.update(name, profile=\(aqsplunk\(aq, **kwargs) -Update a splunk search -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -splunk_search.update \(aqmy search name\(aq sharing=app -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.sqlite3 .sp Support for SQLite3 @@ -100762,8 +89006,8 @@ this module should be disabled or removed. .UNINDENT .INDENT 0.0 .TP -.B salt.modules.ssh.auth_keys(user=None, config=\(aq.ssh/authorized_keys\(aq) -Return the authorized keys for users +.B salt.modules.ssh.auth_keys(user, config=\(aq.ssh/authorized_keys\(aq) +Return the authorized keys for the specified user .sp CLI Example: .INDENT 7.0 @@ -100771,10 +89015,7 @@ CLI Example: .sp .nf .ft C -salt \(aq*\(aq ssh.auth_keys salt \(aq*\(aq ssh.auth_keys root -salt \(aq*\(aq ssh.auth_keys user=root -salt \(aq*\(aq ssh.auth_keys user="[user1, user2]" .ft P .fi .UNINDENT @@ -101022,66 +89263,17 @@ CLI Example: salt \(aq*\(aq ssh.user_keys salt \(aq*\(aq ssh.user_keys user=user1 salt \(aq*\(aq ssh.user_keys user=user1 pubfile=/home/user1/.ssh/id_rsa.pub prvfile=/home/user1/.ssh/id_rsa -salt \(aq*\(aq ssh.user_keys user=user1 prvfile=False salt \(aq*\(aq ssh.user_keys user="[\(aquser1\(aq,\(aquser2\(aq] pubfile=id_rsa.pub prvfile=id_rsa .ft P .fi .UNINDENT .UNINDENT -.sp -As you can see you can tell Salt not to read from the user\(aqs private (or public) key file by setting the -file path to \fBFalse\fP\&. This can be useful to prevent Salt from publishing private data via Salt Mine or -others. .UNINDENT .SS salt.modules.state .sp Control the state system on the minion .INDENT 0.0 .TP -.B salt.modules.state.apply_(mods=None, **kwargs) -New in version 2015.2.0. - -.sp -Apply states! This function will call highstate or state.sls based on the -arguments passed in, state.apply is intended to be the main gateway for -all state executions. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq state.apply -salt \(aq*\(aq state.apply test -salt \(aq*\(aq state.apply test,pkgs -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.state.check_request(name=None) -New in version 2015.2.0. - -.sp -Return the state request information, if any -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq state.check_request -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.state.clear_cache() Clear out cached state files, forcing even cache runs to refresh the cache on the next state execution. @@ -101103,85 +89295,7 @@ salt \(aq*\(aq state.clear_cache .UNINDENT .INDENT 0.0 .TP -.B salt.modules.state.clear_request(name=None) -New in version 2015.2.0. - -.sp -Clear out the state execution request without executing it -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq state.clear_request -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.state.disable(states) -Disable state runs. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq state.disable highstate - -salt \(aq*\(aq state.disable highstate,test.succeed_without_changes -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -\fBNOTE:\fP -.INDENT 7.0 -.INDENT 3.5 -To disable a state file from running provide the same name that would -be passed in a state.sls call. -.sp -salt \(aq*\(aq state.disable bind.config -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.state.enable(states) -Enable state function or sls run -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq state.enable highstate - -salt \(aq*\(aq state.enable test.succeed_without_changes -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -\fBNOTE:\fP -.INDENT 7.0 -.INDENT 3.5 -To enable a state file from running provide the same name that would -be passed in a state.sls call. -.sp -salt \(aq*\(aq state.disable bind.config -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.state.high(data, test=False, queue=False, **kwargs) +.B salt.modules.state.high(data, queue=False, **kwargs) Execute the compound calls stored in a single set of high data This function is mostly intended for testing the state system .sp @@ -101248,23 +89362,6 @@ salt \(aq*\(aq state.highstate pillar="{foo: \(aqFoo!\(aq, bar: \(aqBar!\(aq}" .UNINDENT .INDENT 0.0 .TP -.B salt.modules.state.list_disabled() -List the states which are currently disabled -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq state.list_disabled -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.state.low(data, queue=False, **kwargs) Execute a single low data call This function is mostly intended for testing the state system @@ -101302,50 +89399,6 @@ salt \(aq*\(aq state.pkg /tmp/state_pkg.tgz .UNINDENT .INDENT 0.0 .TP -.B salt.modules.state.request(mods=None, **kwargs) -New in version 2015.2.0. - -.sp -Request that the local admin execute a state run via -\fIsalt\-call state.run_request\fP -All arguments match state.apply -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq state.request -salt \(aq*\(aq state.request test -salt \(aq*\(aq state.request test,pkgs -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.state.run_request(name=\(aqdefault\(aq, **kwargs) -New in version 2015.2.0. - -.sp -Execute the pending state request -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq state.run_request -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.state.running(concurrent=False) Return a dict of state return data if a state function is already running. This function is used to prevent multiple state calls from being run at @@ -101484,7 +89537,7 @@ salt \(aq*\(aq state.single pkg.installed name=vim .UNINDENT .INDENT 0.0 .TP -.B salt.modules.state.sls(mods, saltenv=None, test=None, exclude=None, queue=False, env=None, **kwargs) +.B salt.modules.state.sls(mods, saltenv=\(aqbase\(aq, test=None, exclude=None, queue=False, env=None, **kwargs) Execute a set list of state files from an environment. .INDENT 7.0 .TP @@ -101507,16 +89560,11 @@ This option starts a new thread for each queued state run so use this option sparingly. .TP .B saltenv -None +base Specify a \fBfile_roots\fP environment. .sp Changed in version 0.17.0: Argument name changed from \fBenv\fP to \fBsaltenv\fP\&. -.sp -Changed in version 2014.7: Defaults to None. If no saltenv is specified, the minion config will -be checked for a saltenv and if found, it will be used. If none is found, -base will be used. - .TP .B concurrent: WARNING: This flag is potentially dangerous. It is designed @@ -101977,26 +90025,6 @@ salt \(aq*\(aq status.w .UNINDENT .UNINDENT .UNINDENT -.SS salt.modules.sudo -.sp -Allow for the calling of execution modules via sudo -.INDENT 0.0 -.TP -.B salt.modules.sudo.salt_call(runas, fun, *args, **kwargs) -Wrap a shell execution out to salt call with sudo -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sudo.salt_call root test.ping -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.supervisord .sp Provide the service module for system supervisord or supervisord in a @@ -103077,553 +91105,6 @@ salt \(aq*\(aq sysbench.threads .UNINDENT .UNINDENT .UNINDENT -.SS salt.modules.syslog_ng -.sp -Module for getting information about syslog\-ng -.INDENT 0.0 -.TP -.B maintainer -Tibor Benke <\fI\%btibi@sch.bme.hu\fP> -.TP -.B maturity -new -.TP -.B depends -cmd -.TP -.B platform -all -.UNINDENT -.sp -This module is capable of managing syslog\-ng instances which were installed -via a package manager or from source. Users can use a directory as a parameter -in the case of most functions, which contains the syslog\-ng and syslog\-ng\-ctl -binaries. -.sp -Syslog\-ng can be installed via a package manager or from source. In the -latter case, the syslog\-ng and syslog\-ng\-ctl binaries are not available -from the PATH, so users should set location of the sbin directory with -\fI\%syslog_ng.set_binary_path\fP\&. -.sp -Similarly, users can specify the location of the configuration file with -\fI\%syslog_ng.set_config_file\fP, then -the module will use it. If it is not set, syslog\-ng uses the default -configuration file. -.INDENT 0.0 -.TP -.B class salt.modules.syslog_ng.Argument(value=\(aq\(aq) -A TypedParameterValue has one or more Arguments. For example this can be -the value of key_file. -.sp -Does not need examples. -.INDENT 7.0 -.TP -.B build() -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B class salt.modules.syslog_ng.Buildable(iterable, join_body_on=\(aq\(aq, append_extra_newline=True) -Base class of most classes, which have a build method. -.sp -It contains a common build function. -.sp -Does not need examples. -.INDENT 7.0 -.TP -.B build() -Builds the textual representation of the whole configuration object -with it\(aqs children. -.UNINDENT -.INDENT 7.0 -.TP -.B build_body() -Builds the body of a syslog\-ng configuration object. -.UNINDENT -.INDENT 7.0 -.TP -.B build_header() -Builds the header of a syslog\-ng configuration object. -.UNINDENT -.INDENT 7.0 -.TP -.B build_tail() -Builds the tail of a syslog\-ng configuration object. -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B class salt.modules.syslog_ng.GivenStatement(value, add_newline=True) -.INDENT 7.0 -.TP -.B This statement returns a string without modification. It can be used to -use existing configuration snippets. -.UNINDENT -.sp -Does not need examples. -.INDENT 7.0 -.TP -.B build() -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B class salt.modules.syslog_ng.NamedStatement(type, id=\(aq\(aq, options=None) -It represents a configuration statement, which has a name, e.g. a source. -.sp -Does not need examples. -.UNINDENT -.INDENT 0.0 -.TP -.B class salt.modules.syslog_ng.Option(type=\(aq\(aq, params=None) -A Statement class contains Option instances. -.sp -An instance of Option can represent a file(), tcp(), udp(), etc. option. -.sp -Does not need examples. -.INDENT 7.0 -.TP -.B add_parameter(param) -.UNINDENT -.INDENT 7.0 -.TP -.B build() -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B class salt.modules.syslog_ng.Parameter(iterable=None, join_body_on=\(aq\(aq) -An Option has one or more Parameter instances. -.sp -Does not need examples. -.UNINDENT -.INDENT 0.0 -.TP -.B class salt.modules.syslog_ng.ParameterValue(iterable=None, join_body_on=\(aq\(aq) -A TypedParameter can have one or more values. -.sp -Does not need examples. -.UNINDENT -.INDENT 0.0 -.TP -.B class salt.modules.syslog_ng.SimpleParameter(value=\(aq\(aq) -A Parameter is a SimpleParameter, if it\(aqs just a simple type, like a string. -.sp -For example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -destination d_file { - file( - "/var/log/messages" - ); -}; -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -\fB/var/log/messages\fP is a SimpleParameter. -.sp -Does not need examples. -.INDENT 7.0 -.TP -.B build() -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B class salt.modules.syslog_ng.SimpleParameterValue(value=\(aq\(aq) -A ParameterValuem which holds a simple type, like a string or a number. -.sp -For example in ip(127.0.0.1) 127.0.0.1 is a SimpleParameterValue. -.sp -Does not need examples. -.INDENT 7.0 -.TP -.B build() -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B class salt.modules.syslog_ng.Statement(type, id=\(aq\(aq, options=None, has_name=True) -It represents a syslog\-ng configuration statement, e.g. source, destination, -filter. -.sp -Does not need examples. -.INDENT 7.0 -.TP -.B add_child(option) -.UNINDENT -.INDENT 7.0 -.TP -.B build_header() -.UNINDENT -.INDENT 7.0 -.TP -.B build_tail() -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B exception salt.modules.syslog_ng.SyslogNgError -.UNINDENT -.INDENT 0.0 -.TP -.B class salt.modules.syslog_ng.TypedParameter(type=\(aq\(aq, values=None) -A Parameter, which has a type: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -destination d_tcp { - tcp( - ip(127.0.0.1) - ); -}; -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -\fBip(127.0.0.1)\fP is a TypedParameter. -.sp -Does not need examples. -.INDENT 7.0 -.TP -.B add_value(value) -.UNINDENT -.INDENT 7.0 -.TP -.B build() -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B class salt.modules.syslog_ng.TypedParameterValue(type=\(aq\(aq, arguments=None) -We have to go deeper... -.sp -A TypedParameter can have a \(aqparameter\(aq, which also have a type. For example -key_file and cert_file: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -source demo_tls_source { - tcp( - ip(0.0.0.0) - port(1999) - tls( - key_file("/opt/syslog\-ng/etc/syslog\-ng/key.d/syslog\-ng.key") - cert_file("/opt/syslog\-ng/etc/syslog\-ng/cert.d/syslog\-ng.cert") - ) - ); -}; -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Does not need examples. -.INDENT 7.0 -.TP -.B add_argument(arg) -.UNINDENT -.INDENT 7.0 -.TP -.B build() -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B class salt.modules.syslog_ng.UnnamedStatement(type, options=None) -It represents a configuration statement, which doesn\(aqt have a name, e.g. a -log path. -.sp -Does not need examples. -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.syslog_ng.config(name, config, write=True) -Builds syslog\-ng configuration. This function is intended to be used from -the state module, users should not use it directly! -.sp -name : the id of the Salt document or it is the format of .id -config : the parsed YAML code -write : if True, it writes the config into the configuration file, -otherwise just returns it -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq syslog_ng.config name="s_local" config="[{\(aqtcp\(aq:[{\(aqip\(aq:\(aq127.0.0.1\(aq},{\(aqport\(aq:1233}]}]" -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.syslog_ng.config_test(syslog_ng_sbin_dir=None, cfgfile=None) -Runs syntax check against cfgfile. If syslog_ng_sbin_dir is specified, it -is added to the PATH during the test. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq syslog_ng.config_test -salt \(aq*\(aq syslog_ng.config_test /home/user/install/syslog\-ng/sbin -salt \(aq*\(aq syslog_ng.config_test /home/user/install/syslog\-ng/sbin /etc/syslog\-ng/syslog\-ng.conf -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.syslog_ng.get_config_file() -Returns the configuration directory, which contains syslog\-ng.conf. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq syslog_ng.get_config_file -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.syslog_ng.modules(syslog_ng_sbin_dir=None) -Returns the available modules. If syslog_ng_sbin_dir is specified, it -is added to the PATH during the execution of the command syslog\-ng. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq syslog_ng.modules -salt \(aq*\(aq syslog_ng.modules /home/user/install/syslog\-ng/sbin -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.syslog_ng.reload_(name) -Reloads syslog\-ng. This function is intended to be used from states. -.sp -If \fI\%syslog_ng.set_config_file\fP, -is called before, this function will use the set binary path. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq syslog_ng.reload -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.syslog_ng.set_binary_path(name) -Sets the path, where the syslog\-ng binary can be found. This function is -intended to be used from states. -.sp -If syslog\-ng is installed via a package manager, users don\(aqt need to use -this function. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq syslog_ng.set_binary_path name="/usr/sbin" -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.syslog_ng.set_config_file(name) -Sets the configuration\(aqs name. This function is intended to be used from states. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq syslog_ng.set_config_file name="/etc/syslog\-ng" -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.syslog_ng.set_parameters(version=None, binary_path=None, config_file=None, *args, **kwargs) -Sets variables. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq syslog_ng.set_parameters version="3.6" -salt \(aq*\(aq syslog_ng.set_parameters binary_path="/home/user/install/syslog\-ng/sbin" config_file="/home/user/install/syslog\-ng/etc/syslog\-ng.conf" -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.syslog_ng.start(name=None, user=None, group=None, chroot=None, caps=None, no_caps=False, pidfile=None, enable_core=False, fd_limit=None, verbose=False, debug=False, trace=False, yydebug=False, persist_file=None, control=None, worker_threads=None) -Ensures, that syslog\-ng is started via the given parameters. This function -is intended to be used from the state module. -.sp -Users shouldn\(aqt use this function, if the service module is available on -their system. If \fI\%syslog_ng.set_config_file\fP, -is called before, this function will use the set binary path. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq syslog_ng.start -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.syslog_ng.stats(syslog_ng_sbin_dir=None) -Returns statistics from the running syslog\-ng instance. If syslog_ng_sbin_dir is specified, it -is added to the PATH during the execution of the command syslog\-ng\-ctl. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq syslog_ng.stats -salt \(aq*\(aq syslog_ng.stats /home/user/install/syslog\-ng/sbin -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.syslog_ng.stop(name=None) -Kills syslog\-ng. This function is intended to be used from the state module. -.sp -Users shouldn\(aqt use this function, if the service module is available on -their system. If \fI\%syslog_ng.set_config_file\fP -is called before, this function will use the set binary path. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq syslog_ng.stop -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.syslog_ng.version(syslog_ng_sbin_dir=None) -Returns the version of the installed syslog\-ng. If syslog_ng_sbin_dir is specified, it -is added to the PATH during the execution of the command syslog\-ng. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq syslog_ng.version -salt \(aq*\(aq syslog_ng.version /home/user/install/syslog\-ng/sbin -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.syslog_ng.write_config(config, newlines=2) -Writes the given parameter config into the config file. This function is -intended to be used from states. -.sp -If \fI\%syslog_ng.set_config_file\fP, -is called before, this function will use the set config file. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq syslog_ng.write_config config="# comment" -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.syslog_ng.write_version(name) -Removes the previous configuration file, then creates a new one and writes the name line. -This function is intended to be used from states. -.sp -If \fI\%syslog_ng.set_config_file\fP, -is called before, this function will use the set config file. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq syslog_ng.write_version name="3.6" -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.sysmod .sp The sys module provides information about the available functions on the minion @@ -103646,21 +91127,6 @@ salt \(aq*\(aq sys.argspec .fi .UNINDENT .UNINDENT -.sp -Module names can be specified as globs. -.sp -New in version 2015.2.0. - -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sys.argspec \(aqpkg.*\(aq -.ft P -.fi -.UNINDENT -.UNINDENT .UNINDENT .INDENT 0.0 .TP @@ -103687,22 +91153,6 @@ salt \(aq*\(aq sys.doc network.traceroute user.info .fi .UNINDENT .UNINDENT -.sp -Modules can be specified as globs. -.sp -New in version 2015.2.0. - -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sys.doc \(aqsys.*\(aq -salt \(aq*\(aq sys.doc \(aqsys.list_*\(aq -.ft P -.fi -.UNINDENT -.UNINDENT .UNINDENT .INDENT 0.0 .TP @@ -103723,29 +91173,11 @@ salt \(aq*\(aq sys.list_functions sys user .fi .UNINDENT .UNINDENT -.sp -Function names can be specified as globs. -.sp -New in version 2015.2.0. - -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sys.list_functions \(aqsys.list_*\(aq -.ft P -.fi -.UNINDENT -.UNINDENT .UNINDENT .INDENT 0.0 .TP -.B salt.modules.sysmod.list_modules(*args) +.B salt.modules.sysmod.list_modules() List the modules loaded on the minion -.sp -New in version 2015.2.0. - .sp CLI Example: .INDENT 7.0 @@ -103758,59 +91190,15 @@ salt \(aq*\(aq sys.list_modules .fi .UNINDENT .UNINDENT -.sp -Module names can be specified as globs. -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sys.list_modules \(aqs*\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.sysmod.list_renderers(*args) -List the renderers loaded on the minion -.sp -New in version 2015.2.0. - -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sys.list_renderers -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Render names can be specified as globs. -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sys.list_renderers \(aqyaml*\(aq -.ft P -.fi -.UNINDENT -.UNINDENT .UNINDENT .INDENT 0.0 .TP .B salt.modules.sysmod.list_returner_functions(*args, **kwargs) -List the functions for all returner modules. Optionally, specify a returner -module or modules from which to list. -.sp New in version 2014.7.0. +.sp +List the functions for all returner modules. Optionally, specify a returner +module or modules from which to list. .sp CLI Example: .INDENT 7.0 @@ -103825,29 +91213,14 @@ salt \(aq*\(aq sys.list_returner_functions mysql etcd .fi .UNINDENT .UNINDENT -.sp -Returner names can be specified as globs. -.sp -New in version 2015.2.0. - -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sys.list_returner_functions \(aqsqlite3.get_*\(aq -.ft P -.fi -.UNINDENT -.UNINDENT .UNINDENT .INDENT 0.0 .TP -.B salt.modules.sysmod.list_returners(*args) -List the runners loaded on the minion -.sp +.B salt.modules.sysmod.list_returners() New in version 2014.7.0. +.sp +List the runners loaded on the minion .sp CLI Example: .INDENT 7.0 @@ -103860,30 +91233,15 @@ salt \(aq*\(aq sys.list_returners .fi .UNINDENT .UNINDENT -.sp -Returner names can be specified as globs. -.sp -New in version 2015.2.0. - -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sys.list_returners \(aqs*\(aq -.ft P -.fi -.UNINDENT -.UNINDENT .UNINDENT .INDENT 0.0 .TP .B salt.modules.sysmod.list_runner_functions(*args, **kwargs) -List the functions for all runner modules. Optionally, specify a runner -module or modules from which to list. -.sp New in version 2014.7.0. +.sp +List the functions for all runner modules. Optionally, specify a runner +module or modules from which to list. .sp CLI Example: .INDENT 7.0 @@ -103898,29 +91256,14 @@ salt \(aq*\(aq sys.list_runner_functions state virt .fi .UNINDENT .UNINDENT -.sp -Runner function names can be specified as globs. -.sp -New in version 2015.2.0. - -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sys.list_runner_functions \(aqstate.*\(aq \(aqvirt.*\(aq -.ft P -.fi -.UNINDENT -.UNINDENT .UNINDENT .INDENT 0.0 .TP -.B salt.modules.sysmod.list_runners(*args) -List the runners loaded on the minion -.sp +.B salt.modules.sysmod.list_runners() New in version 2014.7.0. +.sp +List the runners loaded on the minion .sp CLI Example: .INDENT 7.0 @@ -103933,30 +91276,15 @@ salt \(aq*\(aq sys.list_runners .fi .UNINDENT .UNINDENT -.sp -Runner names can be specified as globs. -.sp -New in version 2015.2.0. - -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sys.list_runners \(aqm*\(aq -.ft P -.fi -.UNINDENT -.UNINDENT .UNINDENT .INDENT 0.0 .TP .B salt.modules.sysmod.list_state_functions(*args, **kwargs) -List the functions for all state modules. Optionally, specify a state -module or modules from which to list. -.sp New in version 2014.7.0. +.sp +List the functions for all state modules. Optionally, specify a state +module or modules from which to list. .sp CLI Example: .INDENT 7.0 @@ -103971,30 +91299,14 @@ salt \(aq*\(aq sys.list_state_functions pkg user .fi .UNINDENT .UNINDENT -.sp -State function names can be specified as globs. -.sp -New in version 2015.2.0. - -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sys.list_state_functions \(aqfile.*\(aq -salt \(aq*\(aq sys.list_state_functions \(aqfile.s*\(aq -.ft P -.fi -.UNINDENT -.UNINDENT .UNINDENT .INDENT 0.0 .TP -.B salt.modules.sysmod.list_state_modules(*args) -List the modules loaded on the minion -.sp +.B salt.modules.sysmod.list_state_modules() New in version 2014.7.0. +.sp +List the modules loaded on the minion .sp CLI Example: .INDENT 7.0 @@ -104007,21 +91319,6 @@ salt \(aq*\(aq sys.list_state_modules .fi .UNINDENT .UNINDENT -.sp -State module names can be specified as globs. -.sp -New in version 2015.2.0. - -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sys.list_state_modules \(aqmysql_*\(aq -.ft P -.fi -.UNINDENT -.UNINDENT .UNINDENT .INDENT 0.0 .TP @@ -104042,82 +91339,10 @@ salt \(aq*\(aq sys.reload_modules .UNINDENT .INDENT 0.0 .TP -.B salt.modules.sysmod.renderer_doc(*args) -Return the docstrings for all renderers. Optionally, specify a renderer or a -function to narrow the selection. -.sp -The strings are aggregated into a single document on the master for easy -reading. -.sp -Multiple renderers can be specified. -.sp -New in version 2015.2.0. - -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sys.renderer_doc -salt \(aq*\(aq sys.renderer_doc cheetah -salt \(aq*\(aq sys.renderer_doc jinja json -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Renderer names can be specified as globs. -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sys.renderer_doc \(aqc*\(aq \(aqj*\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.sysmod.returner_argspec(module=\(aq\(aq) -Return the argument specification of functions in Salt returner -modules. -.sp -New in version 2015.2.0. - -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sys.returner_argspec xmpp -salt \(aq*\(aq sys.returner_argspec xmpp smtp -salt \(aq*\(aq sys.returner_argspec -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Returner names can be specified as globs. -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sys.returner_argspec \(aqsqlite3.*\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.sysmod.returner_doc(*args) +New in version 2014.7.0. + +.sp Return the docstrings for all returners. Optionally, specify a returner or a function to narrow the selection. .sp @@ -104125,9 +91350,6 @@ The strings are aggregated into a single document on the master for easy reading. .sp Multiple returners/functions can be specified. -.sp -New in version 2014.7.0. - .sp CLI Example: .INDENT 7.0 @@ -104143,60 +91365,13 @@ salt \(aq*\(aq sys.returner_doc sqlite3.get_fun etcd.get_fun .fi .UNINDENT .UNINDENT -.sp -Returner names can be specified as globs. -.sp -New in version 2015.2.0. - -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sys.returner_doc \(aqsqlite3.get_*\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.sysmod.runner_argspec(module=\(aq\(aq) -Return the argument specification of functions in Salt runner -modules. -.sp -New in version 2015.2.0. - -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sys.runner_argspec state -salt \(aq*\(aq sys.runner_argspec http -salt \(aq*\(aq sys.runner_argspec -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Runner names can be specified as globs. -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sys.runner_argspec \(aqwinrepo.*\(aq -.ft P -.fi -.UNINDENT -.UNINDENT .UNINDENT .INDENT 0.0 .TP .B salt.modules.sysmod.runner_doc(*args) +New in version 2014.7.0. + +.sp Return the docstrings for all runners. Optionally, specify a runner or a function to narrow the selection. .sp @@ -104204,9 +91379,6 @@ The strings are aggregated into a single document on the master for easy reading. .sp Multiple runners/functions can be specified. -.sp -New in version 2014.7.0. - .sp CLI Example: .INDENT 7.0 @@ -104222,60 +91394,13 @@ salt \(aq*\(aq sys.runner_doc cache.grains mine.get .fi .UNINDENT .UNINDENT -.sp -Runner names can be specified as globs. -.sp -New in version 2015.2.0. - -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sys.runner_doc \(aqcache.clear_*\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.sysmod.state_argspec(module=\(aq\(aq) -Return the argument specification of functions in Salt state -modules. -.sp -New in version 2015.2.0. - -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sys.state_argspec pkg.installed -salt \(aq*\(aq sys.state_argspec file -salt \(aq*\(aq sys.state_argspec -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -State names can be specified as globs. -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sys.state_argspec \(aqpkg.*\(aq -.ft P -.fi -.UNINDENT -.UNINDENT .UNINDENT .INDENT 0.0 .TP .B salt.modules.sysmod.state_doc(*args) +New in version 2014.7.0. + +.sp Return the docstrings for all states. Optionally, specify a state or a function to narrow the selection. .sp @@ -104283,9 +91408,6 @@ The strings are aggregated into a single document on the master for easy reading. .sp Multiple states/functions can be specified. -.sp -New in version 2014.7.0. - .sp CLI Example: .INDENT 7.0 @@ -104301,87 +91423,6 @@ salt \(aq*\(aq sys.state_doc service.running ipables.append .fi .UNINDENT .UNINDENT -.sp -State names can be specified as globs. -.sp -New in version 2015.2.0. - -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sys.state_doc \(aqservice.*\(aq \(aqiptables.*\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.SS salt.modules.sysrc -.sp -sysrc module for FreeBSD -.INDENT 0.0 -.TP -.B salt.modules.sysrc.get(**kwargs) -Return system rc configuration variables -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sysrc.get includeDefaults=True -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.sysrc.remove(name, **kwargs) -Remove system rc configuration variables -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sysrc.remove name=sshd_enable -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.sysrc.set_(name, value, **kwargs) -Set system rc configuration variables -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sysrc.remove name=sshd_enable -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT .UNINDENT .SS salt.modules.system .sp @@ -104545,7 +91586,7 @@ salt \(aq*\(aq service.enable .UNINDENT .INDENT 0.0 .TP -.B salt.modules.systemd.enabled(name, **kwargs) +.B salt.modules.systemd.enabled(name) Return if the named service is enabled to start on boot .sp CLI Example: @@ -104642,23 +91683,6 @@ salt \(aq*\(aq service.get_enabled .UNINDENT .INDENT 0.0 .TP -.B salt.modules.systemd.mask(name) -Mask the specified service with systemd -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq service.mask -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.systemd.missing(name) The inverse of service.available. Returns \fBTrue\fP if the specified service is not available, otherwise returns @@ -104791,23 +91815,6 @@ salt \(aq*\(aq service.systemctl_reload .UNINDENT .UNINDENT .UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.systemd.unmask(name) -Unmask the specified service with systemd -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq service.unmask -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.test .sp Module for running arbitrary tests @@ -104871,23 +91878,6 @@ salt \(aq*\(aq test.arg_type 1 \(aqint\(aq .UNINDENT .INDENT 0.0 .TP -.B salt.modules.test.assertion(assertion) -Assert the given argument -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq test.assert False -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.test.collatz(start) Execute the collatz conjecture from the passed starting number, returns the sequence and the time it took to compute. Used for @@ -105034,10 +92024,6 @@ salt \(aq*\(aq test.kwarg num=1 txt="two" env=\(aq{a: 1, b: "hello"}\(aq .UNINDENT .INDENT 0.0 .TP -.B salt.modules.test.missing_func() -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.test.not_loaded() List the modules that were not loaded by the salt loader system .sp @@ -105231,29 +92217,6 @@ salt \(aq*\(aq test.stack .UNINDENT .INDENT 0.0 .TP -.B salt.modules.test.try_(module, return_try_exception=False, **kwargs) -Try to run a module command. On an exception return None. -If \fIreturn_try_exception\fP is set True return the exception. -This can be helpfull in templates where running a module might fail as expected. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -
-{% for i in range(0,230) %}
-    {{ salt[\(aqtest.try\(aq](module=\(aqipmi.get_users\(aq, bmc_host=\(aq172.2.2.\(aq+i)|yaml(False) }}
-{% endfor %}
-
-.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.test.tty(*args, **kwargs) Deprecated! Moved to cmdmod. .sp @@ -105321,13 +92284,6 @@ salt \(aq*\(aq test.versions_report .UNINDENT .UNINDENT .UNINDENT -.SS salt.modules.test_virtual -.sp -Module for running arbitrary tests with a __virtual__ function -.INDENT 0.0 -.TP -.B salt.modules.test_virtual.ping() -.UNINDENT .SS salt.modules.timezone .sp Module for managing timezone on POSIX\-like systems. @@ -106698,7 +93654,7 @@ salt \(aq*\(aq service.enable .UNINDENT .INDENT 0.0 .TP -.B salt.modules.upstart.enabled(name, **kwargs) +.B salt.modules.upstart.enabled(name) Check to see if the named service is enabled to start on boot .sp CLI Example: @@ -106908,7 +93864,7 @@ salt \(aq*\(aq service.stop Manage users with the useradd command .INDENT 0.0 .TP -.B salt.modules.useradd.add(name, uid=None, gid=None, groups=None, home=None, shell=None, unique=True, system=False, fullname=\(aq\(aq, roomnumber=\(aq\(aq, workphone=\(aq\(aq, homephone=\(aq\(aq, createhome=True, loginclass=None) +.B salt.modules.useradd.add(name, uid=None, gid=None, groups=None, home=None, shell=None, unique=True, system=False, fullname=\(aq\(aq, roomnumber=\(aq\(aq, workphone=\(aq\(aq, homephone=\(aq\(aq, createhome=True) Add a user to the minion .sp CLI Example: @@ -107012,23 +93968,6 @@ salt \(aq*\(aq user.chhomephone foo "7735551234" .UNINDENT .INDENT 0.0 .TP -.B salt.modules.useradd.chloginclass(name, loginclass) -Change the default login class of the user -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq user.chloginclass foo staff -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.useradd.chroomnumber(name, roomnumber) Change the user\(aqs Room Number .sp @@ -107114,23 +94053,6 @@ salt \(aq*\(aq user.delete name remove=True force=True .UNINDENT .INDENT 0.0 .TP -.B salt.modules.useradd.get_loginclass(name) -Get the login class of the user -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq user.get_loginclass foo -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.useradd.getent(refresh=False) Return the list of all info for all users .sp @@ -107197,23 +94119,6 @@ salt \(aq*\(aq user.list_users .UNINDENT .UNINDENT .UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.useradd.rename(name, new_name) -Change the username for a named user -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq user.rename name new_name -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.uwsgi .sp uWSGI stats server \fI\%http://uwsgi\-docs.readthedocs.org/en/latest/StatsServer.html\fP @@ -107368,208 +94273,6 @@ salt \(aq*\(aq varnish.version .UNINDENT .UNINDENT .UNINDENT -.SS salt.modules.vbox_guest -.sp -VirtualBox Guest Additions installer -.INDENT 0.0 -.TP -.B salt.modules.vbox_guest.additions_install(*args, **kwargs) -Install VirtualBox Guest Additions. Uses the CD, connected by VirtualBox. -.sp -To connect VirtualBox Guest Additions via VirtualBox graphical interface -press \(aqHost+D\(aq (\(aqHost\(aq is usually \(aqRight Ctrl\(aq). -.sp -See \fI\%https://www.virtualbox.org/manual/ch04.html#idp52733088\fP for more details. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq vbox_guest.additions_install -salt \(aq*\(aq vbox_guest.additions_install reboot=True -salt \(aq*\(aq vbox_guest.additions_install upgrade_os=True -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBreboot\fP (\fI\%bool\fP) \-\- reboot computer to complete installation -.IP \(bu 2 -\fBupgrade_os\fP (\fI\%bool\fP) \-\- upgrade OS (to ensure the latests version of kernel and developer tools are installed) -.UNINDENT -.TP -.B Returns -version of VirtualBox Guest Additions or string with error -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.vbox_guest.additions_mount() -Mount VirtualBox Guest Additions CD to the temp directory. -.sp -To connect VirtualBox Guest Additions via VirtualBox graphical interface -press \(aqHost+D\(aq (\(aqHost\(aq is usually \(aqRight Ctrl\(aq). -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq vbox_guest.additions_mount -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Returns -True or OSError exception -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.vbox_guest.additions_remove(**kwargs) -Remove VirtualBox Guest Additions. -.sp -Firstly it tries to uninstall itself by executing -\(aq/opt/VBoxGuestAdditions\-VERSION/uninstall.run uninstall\(aq. -It uses the CD, connected by VirtualBox if it failes. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq vbox_guest.additions_remove -salt \(aq*\(aq vbox_guest.additions_remove force=True -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -\fBforce\fP (\fI\%bool\fP) \-\- force VirtualBox Guest Additions removing -.TP -.B Returns -True if VirtualBox Guest Additions were removed successfully else False -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.vbox_guest.additions_umount(mount_point) -Unmount VirtualBox Guest Additions CD from the temp directory. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq vbox_guest.additions_umount -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -\fBmount_point\fP \-\- directory VirtualBox Guest Additions is mounted to -.TP -.B Returns -True or an string with error -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.vbox_guest.additions_version() -Check VirtualBox Guest Additions version. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq vbox_guest.additions_version -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Returns -version of VirtualBox Guest Additions or False if they are not installed -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.vbox_guest.grant_access_to_shared_folders_to(name, users=None) -Grant access to auto\-mounted shared folders to the users. -.sp -User is specified by it\(aqs name. To grant access for several users use argument \fIusers\fP\&. -Access will be denied to the users not listed in \fIusers\fP argument. -.sp -See \fI\%https://www.virtualbox.org/manual/ch04.html#sf_mount_auto\fP for more details. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq vbox_guest.grant_access_to_shared_folders_to fred -salt \(aq*\(aq vbox_guest.grant_access_to_shared_folders_to users [\(aqfred\(aq, \(aqroman\(aq] -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBname\fP (\fI\%str\fP) \-\- name of the user to grant access to auto\-mounted shared folders to -.IP \(bu 2 -\fBusers\fP (\fIlist of str\fP) \-\- list of names of users to grant access to auto\-mounted shared folders to (if specified, \fIname\fP will not be taken into account) -.UNINDENT -.TP -.B Returns -list of users who have access to auto\-mounted shared folders -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.vbox_guest.list_shared_folders_users() -List users who have access to auto\-mounted shared folders. -.sp -See \fI\%https://www.virtualbox.org/manual/ch04.html#sf_mount_auto\fP for more details. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq vbox_guest.list_shared_folders_users -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B Returns -list of users who have access to auto\-mounted shared folders -.UNINDENT -.UNINDENT .SS salt.modules.virt .sp Work with virtual machines managed by libvirt @@ -108525,7 +95228,7 @@ salt \(aq*\(aq virt.vm_state Create virtualenv environments .INDENT 0.0 .TP -.B salt.modules.virtualenv_mod.create(path, venv_bin=None, system_site_packages=False, distribute=False, clear=False, python=None, extra_search_dir=None, never_download=None, prompt=None, pip=False, symlinks=None, upgrade=None, user=None, use_vt=False, saltenv=\(aqbase\(aq) +.B salt.modules.virtualenv_mod.create(path, venv_bin=None, system_site_packages=False, distribute=False, clear=False, python=None, extra_search_dir=None, never_download=None, prompt=None, pip=False, symlinks=None, upgrade=None, user=None, runas=None, saltenv=\(aqbase\(aq) Create a virtualenv .INDENT 7.0 .TP @@ -108585,9 +95288,6 @@ Set ownership for the virtualenv .B runas None Set ownership for the virtualenv -.TP -.B use_vt -Use VT terminal emulation (see ouptut while installing) .UNINDENT .sp \fBNOTE:\fP @@ -108612,40 +95312,6 @@ salt \(aq*\(aq virtualenv.create /path/to/new/virtualenv .UNINDENT .INDENT 0.0 .TP -.B salt.modules.virtualenv_mod.get_resource_content(venv, package_or_requirement, resource_name) -Returns the content of a resource of a package or a distribution inside a virtualenv -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq virtualenv.get_resource_content /path/to/my/venv my_package my/resource.xml -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.virtualenv_mod.get_resource_path(venv, package_or_requirement, resource_name) -Returns the path to a resource of a package or a distribution inside a virtualenv -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq virtualenv.get_resource_path /path/to/my/venv my_package my/resource.xml -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.virtualenv_mod.get_site_packages(venv) Returns the path to the site\-packages directory inside a virtualenv .sp @@ -109370,9 +96036,6 @@ Module for configuring Windows Firewall .INDENT 0.0 .TP .B salt.modules.win_firewall.add_rule(name, localport, protocol=\(aqtcp\(aq, action=\(aqallow\(aq, dir=\(aqin\(aq) -New in version 2015.2.0. - -.sp Add a new firewall rule .sp CLI Example: @@ -109389,7 +96052,7 @@ salt \(aq*\(aq firewall.add_rule "test" "tcp" "8080" .UNINDENT .INDENT 0.0 .TP -.B salt.modules.win_firewall.disable(profile=\(aqallprofiles\(aq) +.B salt.modules.win_firewall.disable() Disable all the firewall profiles .sp CLI Example: @@ -109406,26 +96069,6 @@ salt \(aq*\(aq firewall.disable .UNINDENT .INDENT 0.0 .TP -.B salt.modules.win_firewall.enable(profile=\(aqallprofiles\(aq) -Enable firewall profile :param profile: (default: allprofiles) -.sp -New in version 2015.2.0. - -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq firewall.enable -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.win_firewall.get_config() Get the status of all the firewall profiles .sp @@ -109444,9 +96087,6 @@ salt \(aq*\(aq firewall.get_config .INDENT 0.0 .TP .B salt.modules.win_firewall.get_rule(name=\(aqall\(aq) -New in version 2015.2.0. - -.sp Get firewall rule(s) info .sp CLI Example: @@ -109483,23 +96123,6 @@ salt \(aq*\(aq group.add foo .UNINDENT .INDENT 0.0 .TP -.B salt.modules.win_groupadd.adduser(name, username) -add a user to a group -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq group.adduser foo username -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.win_groupadd.delete(name) Remove the named group .sp @@ -109517,23 +96140,6 @@ salt \(aq*\(aq group.delete foo .UNINDENT .INDENT 0.0 .TP -.B salt.modules.win_groupadd.deluser(name, username) -remove a user from a group -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq group.deluser foo username -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.win_groupadd.getent(refresh=False) Return info on all groups .sp @@ -109566,34 +96172,6 @@ salt \(aq*\(aq group.info foo .UNINDENT .UNINDENT .UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.win_groupadd.list_groups(useldap=False) -Return a list of groups on Windows -.sp -set \(aquseldap\(aq to True to connect to the local LDAP server -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.win_groupadd.members(name, members_list) -remove a user from a group -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq group.members foo \(aquser1,user2,user3\(aq - -if using LDAP DNs, usernames must be seperated with a ", " - -salt \(aq*\(aq group.members name=\(aqcn=foo,dc=domain,dc=com\(aq members_list=\(aqcn=user1,cn=Users,dc=domain,dc=com, cn=user2,ou=Test,dc=domain,dc=com\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.win_ip .sp The networking module for Windows based systems @@ -110619,7 +97197,7 @@ CLI Example: .nf .ft C salt \(aq*\(aq win_servermanager.install Telnet\-Client -salt \(aq*\(aq win_servermanager.install SNMP\-Service True +salt \(aq*\(aq win_servermanager.install SNMP\-Services True .ft P .fi .UNINDENT @@ -110778,7 +97356,7 @@ salt \(aq*\(aq service.enable .UNINDENT .INDENT 0.0 .TP -.B salt.modules.win_service.enabled(name, **kwargs) +.B salt.modules.win_service.enabled(name) Check to see if the named service is enabled to start on boot .sp CLI Example: @@ -111066,9 +97644,6 @@ wmi .INDENT 0.0 .TP .B salt.modules.win_status.master(master=None, connected=True) -New in version 2015.2.0. - -.sp Fire an event if the minion gets disconnected from its master. This function is meant to be run via a scheduled job from the minion. If master_ip is an FQDN/Hostname, is must be resolvable to a valid IPv4 @@ -111719,13 +98294,8 @@ salt \(aq*\(aq win_update.download_updates categories="[\(aqCritical Updates\(aq Downloads and installs all available updates, skipping those that require user interaction. .sp -Add \fBcached\fP to only install those updates which have already been downloaded. -.sp -you can set the maximum number of retries to \fBn\fP in the search process by -adding: \fBretries=n\fP -.sp -various aspects of the updates can be included or excluded. This function is -still under development. +various aspects of the updates can be included or excluded. this feature is +still in development. .INDENT 7.0 .TP .B retries @@ -111836,13 +98406,12 @@ salt \(aq*\(aq win_update.list_updates categories=[\(aqCritical Updates\(aq] ver .UNINDENT .SS salt.modules.win_useradd .sp -Manage Windows users with ADSI +Manage Windows users with the net user command .sp -Can manage local user accounts or domain accounts (if salt\-minion is running as a user w/access -to AD (or localsystem on a DC), AD accounts should be managed as LDAP objects... +NOTE: This currently only works with local user accounts, not domain accounts .INDENT 0.0 .TP -.B salt.modules.win_useradd.add(name, password=None, fullname=False, description=False, firstname=False, lastname=False, middleinitial=False, disabled=False, requirepwchange=True, pwneverexpires=False, uid=None, gid=None, groups=None, home=False, shell=None, unique=False, system=False, roomnumber=False, workphone=False, homephone=False, loginclass=False, createhome=False) +.B salt.modules.win_useradd.add(name, password=None, uid=None, gid=None, groups=None, home=False, shell=None, unique=False, system=False, fullname=False, roomnumber=False, workphone=False, homephone=False, createhome=False) Add a user to the minion .sp CLI Example: @@ -111852,13 +98421,6 @@ CLI Example: .nf .ft C salt \(aq*\(aq user.add name password - -if you want to create on a domain controller, you should use the LDAP DN of the object to create -short name will work, but UPN will not get set - -you must use name=\(aqcn=user,....\(aq since the DN contains \(aq=\(aq - -salt \(aqdomainController\(aq user.add name=\(aqcn=user,cn=Users,dc=domain,dc=dom\(aq password=\(aqpa$$word\(aq .ft P .fi .UNINDENT @@ -111911,8 +98473,6 @@ CLI Example: .nf .ft C salt \(aq*\(aq user.chgroups foo wheel,root True - -if using DNs, group names must be separated with \(aq, \(aq .ft P .fi .UNINDENT @@ -111972,24 +98532,6 @@ salt \(aq*\(aq user.delete name .UNINDENT .INDENT 0.0 .TP -.B salt.modules.win_useradd.disable(name, disabled=True) -disable a user account -.sp -salt \(aq*\(aq disableuser foo -.sp -to enable a user: -.sp -salt \(aq*\(aq disableuser foot False -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.win_useradd.enable(name) -enable a user account -.sp -salt \(aq*\(aq user.enable foo -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.win_useradd.getent(refresh=False) Return the list of all info for all users .sp @@ -112041,22 +98583,11 @@ salt \(aq*\(aq user.list_groups foo .UNINDENT .INDENT 0.0 .TP -.B salt.modules.win_useradd.list_users(useldap=False) +.B salt.modules.win_useradd.list_users() Return a list of users on Windows .UNINDENT .INDENT 0.0 .TP -.B salt.modules.win_useradd.passwordneverexpires(name, clear=False) -set a user\(aqs password to never expire -.sp -salt \(aq*\(aq user.passwordneverexpires foo -.sp -to clear the password never expires setting (i.e. set it to expire), use clear=True -.sp -salt \(aq*\(aq user.passwordneverexpires foo True -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.win_useradd.removegroup(name, group) Remove user from a group .sp @@ -112074,45 +98605,8 @@ salt \(aq*\(aq user.removegroup username groupname .UNINDENT .INDENT 0.0 .TP -.B salt.modules.win_useradd.rename(name, new_name) -Change the username for a named user -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq user.rename name new_name - -domain users should use LDAP, to rename the cn, sAMAccountName, and UPN -salt \(aqdomainController\(aq user.rename name=\(aqcn=user,cn=Users,dc=domain,dc=dom\(aq new_name=\(aqnewUserName\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.win_useradd.requirepasswordchange(name, clear=False) -expire a user\(aqs password (i.e. require it to change on next logon) -if the password is set to "never expire" this has no effect -.sp -salt \(aq*\(aq user.requirepasswordchange foo -.sp -to clear the require password change flag, use clear=True -.sp -salt \(aq*\(aq user.requirepasswordchange foo True -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.win_useradd.setpassword(name, password, mustchange=None, neverexpires=None) +.B salt.modules.win_useradd.setpassword(name, password) Set a user\(aqs password -.INDENT 7.0 -.TP -.B use \(aqmustchange\(aq and \(aqneverexpires\(aq to set those user account attributes, by default they will be left alone (None) -setting to \(aqFalse\(aq will clear them, setting to \(aqTrue\(aq will set them -.UNINDENT .sp CLI Example: .INDENT 7.0 @@ -112680,229 +99174,6 @@ salt \(aq*\(aq virt.vm_state .UNINDENT .UNINDENT .UNINDENT -.SS salt.modules.xfs -.sp -Module for managing XFS file systems. -.INDENT 0.0 -.TP -.B salt.modules.xfs.defragment(device) -Defragment mounted XFS filesystem. -In order to mount a filesystem, device should be properly mounted and writable. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq xfs.defragment /dev/sda1 -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.xfs.devices() -Get known XFS formatted devices on the system. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq xfs.devices -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.xfs.dump(device, destination, level=0, label=None, noerase=None) -Dump filesystem device to the media (file, tape etc). -.sp -Required parameters: -.INDENT 7.0 -.IP \(bu 2 -\fBdevice\fP: XFS device, content of which to be dumped. -.IP \(bu 2 -\fBdestination\fP: Specifies a dump destination. -.UNINDENT -.sp -Valid options are: -.INDENT 7.0 -.IP \(bu 2 -\fBlabel\fP: Label of the dump. Otherwise automatically generated label is used. -.IP \(bu 2 -\fBlevel\fP: Specifies a dump level of 0 to 9. -.IP \(bu 2 -\fBnoerase\fP: Pre\-erase media. -.UNINDENT -.sp -Other options are not used in order to let \fBxfsdump\fP use its default -values, as they are most optimal. See the \fBxfsdump(8)\fP manpage for -a more complete description of these options. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq xfs.dump /dev/sda1 /detination/on/the/client -salt \(aq*\(aq xfs.dump /dev/sda1 /detination/on/the/client label=\(aqCompany accountancy\(aq -salt \(aq*\(aq xfs.dump /dev/sda1 /detination/on/the/client noerase=True -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.xfs.estimate(path) -Estimate the space that an XFS filesystem will take. -For each directory estimate the space that directory would take -if it were copied to an XFS filesystem. -Estimation does not cross mount points. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq xfs.estimate /path/to/file -salt \(aq*\(aq xfs.estimate /path/to/dir/* -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.xfs.info(device) -Get filesystem geometry information. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq xfs.info /dev/sda1 -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.xfs.inventory() -Display XFS dump inventory without restoration. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq xfs.inventory -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.xfs.mkfs(device, label=None, ssize=None, noforce=None, bso=None, gmo=None, ino=None, lso=None, rso=None, nmo=None, dso=None) -Create a file system on the specified device. By default wipes out with force. -.sp -General options: -.INDENT 7.0 -.IP \(bu 2 -\fBlabel\fP: Specify volume label. -.IP \(bu 2 -\fBssize\fP: Specify the fundamental sector size of the filesystem. -.IP \(bu 2 -\fBnoforce\fP: Do not force create filesystem, if disk is already formatted. -.UNINDENT -.sp -Filesystem geometry options: -.INDENT 7.0 -.IP \(bu 2 -\fBbso\fP: Block size options. -.IP \(bu 2 -\fBgmo\fP: Global metadata options. -.IP \(bu 2 -.INDENT 2.0 -.TP -.B \fBdso\fP: Data section options. These options specify the location, size, -and other parameters of the data section of the filesystem. -.UNINDENT -.IP \(bu 2 -\fBino\fP: Inode options to specify the inode size of the filesystem, and other inode allocation parameters. -.IP \(bu 2 -\fBlso\fP: Log section options. -.IP \(bu 2 -\fBnmo\fP: Naming options. -.IP \(bu 2 -\fBrso\fP: Realtime section options. -.UNINDENT -.sp -See the \fBmkfs.xfs(8)\fP manpage for a more complete description of corresponding options description. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq xfs.mkfs /dev/sda1 -salt \(aq*\(aq xfs.mkfs /dev/sda1 dso=\(aqsu=32k,sw=6\(aq noforce=True -salt \(aq*\(aq xfs.mkfs /dev/sda1 dso=\(aqsu=32k,sw=6\(aq lso=\(aqlogdev=/dev/sda2,size=10000b\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.xfs.modify(device, label=None, lazy_counting=None, uuid=None) -Modify parameters of an XFS filesystem. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq xfs.modify /dev/sda1 label=\(aqMy backup\(aq lazy_counting=False -salt \(aq*\(aq xfs.modify /dev/sda1 uuid=False -salt \(aq*\(aq xfs.modify /dev/sda1 uuid=True -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.xfs.prune_dump(sessionid) -Prunes the dump session identified by the given session id. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq xfs.prune_dump b74a3586\-e52e\-4a4a\-8775\-c3334fa8ea2c -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.xmpp .sp Module for Sending Messages via XMPP (a.k.a. Jabber) @@ -113055,8 +99326,8 @@ salt \(aq*\(aq pkg.clean_metadata .UNINDENT .INDENT 0.0 .TP -.B salt.modules.yumpkg.del_repo(repo, basedir=\(aq/etc/yum.repos.d\(aq, **kwargs) -Delete a repo from (default basedir: /etc/yum.repos.d). +.B salt.modules.yumpkg.del_repo(repo, basedir=None, **kwargs) +Delete a repo from (default basedir: all dirs in \fIreposdir\fP yum option). .sp If the .repo file that the repo exists in does not contain any other repo configuration, the file itself will be deleted. @@ -113069,63 +99340,7 @@ CLI Examples: .ft C salt \(aq*\(aq pkg.del_repo myrepo salt \(aq*\(aq pkg.del_repo myrepo basedir=/path/to/dir -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.yumpkg.diff(*paths) -Return a formatted diff between current files and original in a package. -NOTE: this function includes all files (configuration and not), but does -not work on binary content. -.INDENT 7.0 -.TP -.B Parameters -\fBpath\fP \-\- Full path to the installed file -.TP -.B Returns -Difference string or raises and exception if examined file is binary. -.UNINDENT -.sp -CLI example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.diff /etc/apache2/httpd.conf /etc/sudoers -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.yumpkg.download(*packages) -New in version 2015.2.0. - -.sp -Download packages to the local disk. Requires \fByumdownloader\fP from -\fByum\-utils\fP package. -.sp -\fBNOTE:\fP -.INDENT 7.0 -.INDENT 3.5 -\fByum\-utils\fP will already be installed on the minion if the package -was installed from the Fedora / EPEL repositories. -.UNINDENT -.UNINDENT -.sp -CLI example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.download httpd -salt \(aq*\(aq pkg.download httpd postfix +salt \(aq*\(aq pkg.del_repo myrepo basedir=/path/to/dir,/path/to/another/dir .ft P .fi .UNINDENT @@ -113208,8 +99423,8 @@ salt \(aq*\(aq pkg.get_locked_packages .UNINDENT .INDENT 0.0 .TP -.B salt.modules.yumpkg.get_repo(repo, basedir=\(aq/etc/yum.repos.d\(aq, **kwargs) -Display a repo from (default basedir: \fB/etc/yum.repos.d\fP). +.B salt.modules.yumpkg.get_repo(repo, basedir=None, **kwargs) +Display a repo from (default basedir: all dirs in \fIreposdir\fP yum option). .sp CLI Examples: .INDENT 7.0 @@ -113219,6 +99434,7 @@ CLI Examples: .ft C salt \(aq*\(aq pkg.get_repo myrepo salt \(aq*\(aq pkg.get_repo myrepo basedir=/path/to/dir +salt \(aq*\(aq pkg.get_repo myrepo basedir=/path/to/dir,/path/to/another/dir .ft P .fi .UNINDENT @@ -113681,8 +99897,8 @@ salt \(aq*\(aq pkg.list_repo_pkgs \(aqsamba4*\(aq fromrepo=base,updates .UNINDENT .INDENT 0.0 .TP -.B salt.modules.yumpkg.list_repos(basedir=\(aq/etc/yum.repos.d\(aq) -Lists all repos in (default: /etc/yum.repos.d/). +.B salt.modules.yumpkg.list_repos(basedir=None) +Lists all repos in (default: all dirs in \fIreposdir\fP yum option). .sp CLI Example: .INDENT 7.0 @@ -113691,6 +99907,8 @@ CLI Example: .nf .ft C salt \(aq*\(aq pkg.list_repos +salt \(aq*\(aq pkg.list_repos basedir=/path/to/dir +salt \(aq*\(aq pkg.list_repos basedir=/path/to/dir,/path/to/another/dir .ft P .fi .UNINDENT @@ -113760,61 +99978,6 @@ salt \(aq*\(aq pkg.mod_repo reponame baseurl= mirrorlist=http://host.com/ .UNINDENT .INDENT 0.0 .TP -.B salt.modules.yumpkg.modified(*packages, **flags) -List the modified files that belong to a package. Not specifying any packages -will return a list of _all_ modified files on the system\(aqs RPM database. -.sp -New in version 2015.2.0. - -.sp -Filtering by flags (True or False): -.INDENT 7.0 -.TP -.B size -Include only files where size changed. -.TP -.B mode -Include only files which file\(aqs mode has been changed. -.TP -.B checksum -Include only files which MD5 checksum has been changed. -.TP -.B device -Include only files which major and minor numbers has been changed. -.TP -.B symlink -Include only files which are symbolic link contents. -.TP -.B owner -Include only files where owner has been changed. -.TP -.B group -Include only files where group has been changed. -.TP -.B time -Include only files where modification time of the file has been changed. -.TP -.B capabilities -Include only files where capabilities differ or not. Note: supported only on newer RPM versions. -.UNINDENT -.sp -CLI Examples: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.modified -salt \(aq*\(aq pkg.modified httpd -salt \(aq*\(aq pkg.modified httpd postfix -salt \(aq*\(aq pkg.modified httpd owner=True group=False -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.yumpkg.normalize_name(name) Strips the architecture from the specified package name, if necessary. Circumstances where this would be done include: @@ -113851,16 +100014,11 @@ passed, a dictionary of file/package name pairs will be returned. If the file is not owned by a package, or is not present on the minion, then an empty string will be returned for that path. .sp -CLI Examples: +CLI Example: .INDENT 7.0 .INDENT 3.5 -.sp -.nf -.ft C salt \(aq*\(aq pkg.owner /usr/bin/apachectl salt \(aq*\(aq pkg.owner /usr/bin/apachectl /etc/httpd/conf/httpd.conf -.ft P -.fi .UNINDENT .UNINDENT .UNINDENT @@ -113904,7 +100062,7 @@ salt \(aq*\(aq pkg.purge pkgs=\(aq["foo", "bar"]\(aq .UNINDENT .INDENT 0.0 .TP -.B salt.modules.yumpkg.refresh_db(branch_arg, repo_arg, exclude_arg) +.B salt.modules.yumpkg.refresh_db(**kwargs) Check the yum repos for updated packages .sp Returns: @@ -114122,8 +100280,7 @@ salt \(aq*\(aq pkg.version ... .UNINDENT .UNINDENT .SS salt.modules.zcbuildout -.sp -Management of zc.buildout +.SS Management of zc.buildout .sp New in version 2014.1.0. @@ -114369,293 +100526,6 @@ salt \(aq*\(aq buildout.upgrade_bootstrap /srv/mybuildout .SS salt.modules.zfs .sp Salt interface to ZFS commands -.INDENT 0.0 -.TP -.B codeauthor -Nitin Madhok <\fI\%nmadhok@clemson.edu\fP> -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.zfs.create(name, **kwargs) -New in version 2015.2.0. - -.sp -Create a ZFS File System. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq zfs.create myzpool/mydataset [create_parent=True|False] -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -\fBNOTE:\fP -.INDENT 7.0 -.INDENT 3.5 -ZFS properties can be specified at the time of creation of the filesystem by -passing an additional argument called "properties" and specifying the properties -with their respective values in the form of a python dictionary: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -properties="{\(aqproperty1\(aq: \(aqvalue1\(aq, \(aqproperty2\(aq: \(aqvalue2\(aq}" -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Example: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq zfs.create myzpool/mydataset properties="{\(aqmountpoint\(aq: \(aq/export/zfs\(aq, \(aqsharenfs\(aq: \(aqon\(aq}" -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.zfs.destroy(name, **kwargs) -New in version 2015.2.0. - -.sp -Destroy a ZFS File System. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq zfs.destroy myzpool/mydataset [force=True|False] -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.zfs.exists(name) -New in version 2015.2.0. - -.sp -Check if a ZFS filesystem or volume or snapshot exists. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq zfs.exists myzpool/mydataset -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.zfs.list_(name=\(aq\(aq, **kwargs) -New in version 2015.2.0. - -.sp -Return a list of all datasets or a specified dataset on the system and the -values of their used, available, referenced, and mountpoint properties. -.sp -\fBNOTE:\fP -.INDENT 7.0 -.INDENT 3.5 -Information about the dataset and all of it\(aqs descendent datasets can be displayed -by passing \fBrecursive=True\fP on the CLI. -.UNINDENT -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq zfs.list [recursive=True|False] -salt \(aq*\(aq zfs.list /myzpool/mydataset [recursive=True|False] -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -\fBNOTE:\fP -.INDENT 7.0 -.INDENT 3.5 -Dataset property value output can be customized by passing an additional argument called -"properties" in the form of a python list: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -properties="[property1, property2, property3]" -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Example: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq zfs.list /myzpool/mydataset properties="[name, sharenfs, mountpoint]" -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.zfs.rename(name, new_name) -New in version 2015.2.0. - -.sp -Rename or Relocate a ZFS File System. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq zfs.rename myzpool/mydataset myzpool/renameddataset -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.SS salt.modules.zk_concurrency -.SS Concurrency controls in zookeeper -.sp -This module allows you to acquire and release a slot. This is primarily useful -for ensureing that no more than N hosts take a specific action at once. This can -also be used to coordinate between masters. -.INDENT 0.0 -.TP -.B salt.modules.zk_concurrency.lock(path, zk_hosts, identifier=None, max_concurrency=1, timeout=None, ephemeral_lease=False, force=False) -Get lock (with optional timeout) -.INDENT 7.0 -.TP -.B path -The path in zookeeper where the lock is -.TP -.B zk_hosts -zookeeper connect string -.TP -.B identifier -Name to identify this minion -.TP -.B max_concurrency -Maximum number of lock holders -.TP -.B timeout -timeout to wait for the lock. A None timeout will block forever -.TP -.B ephemeral_lease -Whether the locks in zookeper should be ephemeral -.TP -.B force -Forcibly acquire the lock regardless of available slots -.UNINDENT -.sp -Example: -.sp -\&... code\-block: bash -.INDENT 7.0 -.INDENT 3.5 -salt minion zk_concurrency.lock /lock/path host1:1234,host2:1234 -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.zk_concurrency.lock_holders(path, zk_hosts, identifier=None, max_concurrency=1, timeout=None, ephemeral_lease=False) -Return an un\-ordered list of lock holders -.INDENT 7.0 -.TP -.B path -The path in zookeeper where the lock is -.TP -.B zk_hosts -zookeeper connect string -.TP -.B identifier -Name to identify this minion -.TP -.B max_concurrency -Maximum number of lock holders -.TP -.B timeout -timeout to wait for the lock. A None timeout will block forever -.TP -.B ephemeral_lease -Whether the locks in zookeper should be ephemeral -.UNINDENT -.sp -Example: -.sp -\&... code\-block: bash -.INDENT 7.0 -.INDENT 3.5 -salt minion zk_concurrency.lock_holders /lock/path host1:1234,host2:1234 -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.zk_concurrency.unlock(path, zk_hosts=None, identifier=None, max_concurrency=1, ephemeral_lease=False) -Remove lease from semaphore -.INDENT 7.0 -.TP -.B path -The path in zookeeper where the lock is -.TP -.B zk_hosts -zookeeper connect string -.TP -.B identifier -Name to identify this minion -.TP -.B max_concurrency -Maximum number of lock holders -.TP -.B timeout -timeout to wait for the lock. A None timeout will block forever -.TP -.B ephemeral_lease -Whether the locks in zookeper should be ephemeral -.UNINDENT -.sp -Example: -.sp -\&... code\-block: bash -.INDENT 7.0 -.INDENT 3.5 -salt minion zk_concurrency.unlock /lock/path host1:1234,host2:1234 -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.modules.znc .sp znc \- An advanced IRC bouncer @@ -114737,13 +100607,8 @@ salt \(aq*\(aq znc.version Module for running ZFS zpool command .INDENT 0.0 .TP -.B codeauthor -Nitin Madhok <\fI\%nmadhok@clemson.edu\fP> -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.zpool.add(pool_name, *vdevs) -Add the specified vdev\(aqs to the given pool +.B salt.modules.zpool.add(pool_name, vdev) +Add the specified vdev to the given pool .sp CLI Example: .INDENT 7.0 @@ -114751,7 +100616,7 @@ CLI Example: .sp .nf .ft C -salt \(aq*\(aq zpool.add myzpool /path/to/vdev1 /path/to/vdev2 [...] +salt \(aq*\(aq zpool.add myzpool /path/to/vdev .ft P .fi .UNINDENT @@ -114759,11 +100624,8 @@ salt \(aq*\(aq zpool.add myzpool /path/to/vdev1 /path/to/vdev2 [...] .UNINDENT .INDENT 0.0 .TP -.B salt.modules.zpool.create(pool_name, *vdevs, **kwargs) -New in version 2015.2.0. - -.sp -Create a simple zpool, a mirrored zpool, a zpool having nested VDEVs, a hybrid zpool with cache, spare and log drives or a zpool with RAIDZ\-1, RAIDZ\-2 or RAIDZ\-3 +.B salt.modules.zpool.create(pool_name, *vdevs) +Create a new storage pool .sp CLI Example: .INDENT 7.0 @@ -114771,46 +100633,11 @@ CLI Example: .sp .nf .ft C -salt \(aq*\(aq zpool.create myzpool /path/to/vdev1 [...] [force=True|False] -salt \(aq*\(aq zpool.create myzpool mirror /path/to/vdev1 /path/to/vdev2 [...] [force=True|False] -salt \(aq*\(aq zpool.create myzpool raidz1 /path/to/vdev1 /path/to/vdev2 raidz2 /path/to/vdev3 /path/to/vdev4 /path/to/vdev5 [...] [force=True|False] -salt \(aq*\(aq zpool.create myzpool mirror /path/to/vdev1 [...] mirror /path/to/vdev2 /path/to/vdev3 [...] [force=True|False] -salt \(aq*\(aq zpool.create myhybridzpool mirror /tmp/file1 [...] log mirror /path/to/vdev1 [...] cache /path/to/vdev2 [...] spare /path/to/vdev3 [...] [force=True|False] +salt \(aq*\(aq zpool.create myzpool /path/to/vdev1 [/path/to/vdev2] [...] .ft P .fi .UNINDENT .UNINDENT -.sp -\fBNOTE:\fP -.INDENT 7.0 -.INDENT 3.5 -Zpool properties can be specified at the time of creation of the pool by -passing an additional argument called "properties" and specifying the properties -with their respective values in the form of a python dictionary: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -properties="{\(aqproperty1\(aq: \(aqvalue1\(aq, \(aqproperty2\(aq: \(aqvalue2\(aq}" -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Example: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq zpool.create myzpool /path/to/vdev1 [...] properties="{\(aqproperty1\(aq: \(aqvalue1\(aq, \(aqproperty2\(aq: \(aqvalue2\(aq}" -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT .UNINDENT .INDENT 0.0 .TP @@ -114826,17 +100653,12 @@ CLI Example: .nf .ft C salt \(aq*\(aq zpool.create_file_vdev 7g /path/to/vdev1 [/path/to/vdev2] [...] + +Depending on file size this may take a while to return .ft P .fi .UNINDENT .UNINDENT -.sp -\fBNOTE:\fP -.INDENT 7.0 -.INDENT 3.5 -Depending on file size, the above command may take a while to return. -.UNINDENT -.UNINDENT .UNINDENT .INDENT 0.0 .TP @@ -114874,48 +100696,6 @@ salt \(aq*\(aq zpool.exists myzpool .UNINDENT .INDENT 0.0 .TP -.B salt.modules.zpool.export(*pools, **kwargs) -New in version 2015.2.0. - -.sp -Export storage pools -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq zpool.export myzpool ... [force=True|False] -salt \(aq*\(aq zpool.export myzpool2 myzpool2 ... [force=True|False] -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.zpool.import_(pool_name=\(aq\(aq, new_name=\(aq\(aq, **kwargs) -New in version 2015.2.0. - -.sp -Import storage pools or list pools available for import -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq zpool.import [all=True|False] -salt \(aq*\(aq zpool.import myzpool [mynewzpool] [force=True|False] -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.zpool.iostat(name=\(aq\(aq) Display I/O statistics for the given pools .sp @@ -114933,74 +100713,6 @@ salt \(aq*\(aq zpool.iostat myzpool .UNINDENT .INDENT 0.0 .TP -.B salt.modules.zpool.list_() -New in version 2015.2.0. - -.sp -Return a list of all pools in the system with health status and space usage -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq zpool.list -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.zpool.offline(pool_name, *vdevs, **kwargs) -New in version 2015.2.0. - -.sp -Ensure that the specified devices are offline -.sp -\fBWARNING:\fP -.INDENT 7.0 -.INDENT 3.5 -By default, the OFFLINE state is persistent. The device remains offline when -the system is rebooted. To temporarily take a device offline, use \fBtemporary=True\fP\&. -.UNINDENT -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq zpool.offline myzpool /path/to/vdev1 [...] [temporary=True|False] -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.zpool.online(pool_name, *vdevs, **kwargs) -New in version 2015.2.0. - -.sp -Ensure that the specified devices are online -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq zpool.online myzpool /path/to/vdev1 [...] -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.zpool.replace(pool_name, old, new) Replaces old device with new device. .sp @@ -115053,9 +100765,6 @@ salt \(aq*\(aq zpool.status myzpool .INDENT 0.0 .TP .B salt.modules.zpool.zpool_list() -Deprecated since version 2014.7.0: Use \fI\%list_()\fP instead. - -.sp Return a list of all pools in the system with health status and space usage .sp CLI Example: @@ -115083,43 +100792,7 @@ Package support for openSUSE via the zypper package manager .UNINDENT .INDENT 0.0 .TP -.B salt.modules.zypper.add_lock(name=None, pkgs=None, **kwargs) -Add a package lock. Specify packages to lock by exact name. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.add_lock -salt \(aq*\(aq pkg.add_lock ,, -salt \(aq*\(aq pkg.add_lock pkgs=\(aq["foo", "bar"]\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.zypper.clean_locks() -Remove unused locks that do not currently (with regard to repositories used) lock any package. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.clean_locks -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.zypper.del_repo(repo) +.B salt.modules.zypper.del_repo(repo, **kwargs) Delete a repo. .sp CLI Examples: @@ -115129,93 +100802,7 @@ CLI Examples: .nf .ft C salt \(aq*\(aq pkg.del_repo alias -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.zypper.diff(*paths) -Return a formatted diff between current files and original in a package. -NOTE: this function includes all files (configuration and not), but does -not work on binary content. -.INDENT 7.0 -.TP -.B Parameters -\fBpath\fP \-\- Full path to the installed file -.TP -.B Returns -Difference string or raises and exception if examined file is binary. -.UNINDENT -.sp -CLI example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.diff /etc/apache2/httpd.conf /etc/sudoers -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.zypper.download(*packages) -Download packages to the local disk. -.sp -CLI example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.download httpd -salt \(aq*\(aq pkg.download httpd postfix -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.zypper.file_dict(*packages) -List the files that belong to a package, grouped by package. Not -specifying any packages will return a list of \fIevery\fP file on the system\(aqs -rpm database (not generally recommended). -.sp -CLI Examples: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.file_list httpd -salt \(aq*\(aq pkg.file_list httpd postfix -salt \(aq*\(aq pkg.file_list -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.zypper.file_list(*packages) -List the files that belong to a package. Not specifying any packages will -return a list of \fIevery\fP file on the system\(aqs rpm database (not generally -recommended). -.sp -CLI Examples: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.file_list httpd -salt \(aq*\(aq pkg.file_list httpd postfix -salt \(aq*\(aq pkg.file_list +salt \(aq*\(aq pkg.del_repo alias .ft P .fi .UNINDENT @@ -115356,71 +100943,6 @@ salt \(aq*\(aq pkg.latest_version ... .UNINDENT .INDENT 0.0 .TP -.B salt.modules.zypper.list_installed_patterns() -List installed patterns on the system. -.sp -CLI Examples: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.list_installed_patterns -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.zypper.list_locks() -List current package locks. -.sp -Return a dict containing the locked package with attributes: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -{\(aq\(aq: {\(aqcase_sensitive\(aq: \(aq\(aq, - \(aqmatch_type\(aq: \(aq\(aq - \(aqtype\(aq: \(aq\(aq}} -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.list_locks -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.zypper.list_patterns() -List all known patterns from available repos. -.sp -CLI Examples: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.list_patterns -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.zypper.list_pkgs(versions_as_list=False, **kwargs) List the packages currently installed as a dict: .INDENT 7.0 @@ -115448,23 +100970,6 @@ salt \(aq*\(aq pkg.list_pkgs .UNINDENT .INDENT 0.0 .TP -.B salt.modules.zypper.list_products() -List all installed SUSE products. -.sp -CLI Examples: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.list_products -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.zypper.list_repos() Lists all repos. .sp @@ -115504,24 +101009,11 @@ Modify one or more values for a repo. If the repo does not exist, it will be created, so long as the following values are specified: .INDENT 7.0 .TP -.B repo or alias +.B repo alias by which the zypper refers to the repo .TP .B url or mirrorlist the URL for zypper to reference -.TP -.B enabled -enable or disable (True or False) repository, -but do not remove if disabled. -.TP -.B refresh -enable or disable (True or False) auto\-refresh of the repository. -.TP -.B cache -Enable or disable (True or False) RPM files caching. -.TP -.B gpgcheck -Enable or disable (True or False) GOG check for this repository. .UNINDENT .sp Key/Value pairs may also be removed from a repo\(aqs configuration by setting @@ -115535,6 +101027,7 @@ CLI Examples: .nf .ft C salt \(aq*\(aq pkg.mod_repo alias alias=new_alias +salt \(aq*\(aq pkg.mod_repo alias enabled=True salt \(aq*\(aq pkg.mod_repo alias url= mirrorlist=http://host.com/ .ft P .fi @@ -115543,85 +101036,6 @@ salt \(aq*\(aq pkg.mod_repo alias url= mirrorlist=http://host.com/ .UNINDENT .INDENT 0.0 .TP -.B salt.modules.zypper.modified(*packages, **flags) -List the modified files that belong to a package. Not specifying any packages -will return a list of _all_ modified files on the system\(aqs RPM database. -.sp -New in version 2015.2.0. - -.sp -Filtering by flags (True or False): -.INDENT 7.0 -.TP -.B size -Include only files where size changed. -.TP -.B mode -Include only files which file\(aqs mode has been changed. -.TP -.B checksum -Include only files which MD5 checksum has been changed. -.TP -.B device -Include only files which major and minor numbers has been changed. -.TP -.B symlink -Include only files which are symbolic link contents. -.TP -.B owner -Include only files where owner has been changed. -.TP -.B group -Include only files where group has been changed. -.TP -.B time -Include only files where modification time of the file has been changed. -.TP -.B capabilities -Include only files where capabilities differ or not. Note: supported only on newer RPM versions. -.UNINDENT -.sp -CLI Examples: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.modified -salt \(aq*\(aq pkg.modified httpd -salt \(aq*\(aq pkg.modified httpd postfix -salt \(aq*\(aq pkg.modified httpd owner=True group=False -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.zypper.owner(*paths) -Return the name of the package that owns the file. Multiple file paths can -be passed. If a single path is passed, a string will be returned, -and if multiple paths are passed, a dictionary of file/package name -pairs will be returned. -.sp -If the file is not owned by a package, or is not present on the minion, -then an empty string will be returned for that path. -.sp -CLI Examples: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.owner /usr/bin/apachectl -salt \(aq*\(aq pkg.owner /usr/bin/apachectl /etc/httpd/conf/httpd.conf -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.zypper.purge(name=None, pkgs=None, **kwargs) Recursively remove a package and all dependencies which were installed with it, this will call a \fBzypper \-n remove \-u\fP @@ -115724,42 +101138,6 @@ salt \(aq*\(aq pkg.remove pkgs=\(aq["foo", "bar"]\(aq .UNINDENT .INDENT 0.0 .TP -.B salt.modules.zypper.remove_lock(name=None, pkgs=None, **kwargs) -Remove specified package lock. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.remove_lock -salt \(aq*\(aq pkg.remove_lock ,, -salt \(aq*\(aq pkg.remove_lock pkgs=\(aq["foo", "bar"]\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.modules.zypper.search(criteria) -List known packags, available to the system. -.sp -CLI Examples: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.search -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.zypper.upgrade(refresh=True) Run a full system upgrade, a zypper upgrade .sp @@ -115807,29 +101185,6 @@ salt \(aq*\(aq pkg.upgrade_available .UNINDENT .INDENT 0.0 .TP -.B salt.modules.zypper.verify(*names, **kwargs) -Runs an rpm \-Va on a system, and returns the results in a dict -.sp -Files with an attribute of config, doc, ghost, license or readme in the -package header can be ignored using the \fBignore_types\fP keyword argument -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq pkg.verify -salt \(aq*\(aq pkg.verify httpd -salt \(aq*\(aq pkg.verify \(aqhttpd postfix\(aq -salt \(aq*\(aq pkg.verify \(aqhttpd postfix\(aq ignore_types=[\(aqconfig\(aq,\(aqdoc\(aq] -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.modules.zypper.version(*names, **kwargs) Returns a string representing the package version or an empty string if not installed. If more than one package name is specified, a dict of @@ -116201,7 +101556,7 @@ An example Apache virtual host configuration: .IP \(bu 2 \fI\%/hook\fP .IP \(bu 2 -\fI\%/keys\fP +\fI\%/key\fP .IP \(bu 2 \fI\%/ws\fP .IP \(bu 2 @@ -116860,67 +102215,6 @@ return: .fi .UNINDENT .UNINDENT -.sp -The /run enpoint can also be used to issue commands using the salt\-ssh subsystem. -.sp -When using salt\-ssh, eauth credentials should not be supplied. Instad, authentication -should be handled by the SSH layer itself. The use of the salt\-ssh client does not -require a salt master to be running. Instead, only a roster file must be present -in the salt configuration directory. -.sp -All SSH client requests are synchronous. -.sp -** Example SSH client request:** -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -curl \-sS localhost:8000/run \e - \-H \(aqAccept: application/x\-yaml\(aq \e - \-d client=\(aqssh\(aq \e - \-d tgt=\(aq*\(aq \e - \-d fun=\(aqtest.ping\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -POST /run HTTP/1.1 -Host: localhost:8000 -Accept: application/x\-yaml -Content\-Length: 75 -Content\-Type: application/x\-www\-form\-urlencoded - -client=ssh&tgt=*&fun=test.ping -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -\fBExample SSH response:\fP -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -return: -\- silver: - fun: test.ping - fun_args: [] - id: silver - jid: \(aq20141203103525666185\(aq - retcode: 0 - return: true - success: true -.ft P -.fi -.UNINDENT -.UNINDENT .UNINDENT .UNINDENT .SS \fB/events\fP @@ -116942,7 +102236,7 @@ Salt infrastructure. .UNINDENT .INDENT 7.0 .TP -.B GET(token=None, salt_token=None) +.B GET(token=None) An HTTP stream of the Salt master event bus .sp This stream is formatted per the Server Sent Events (SSE) spec. Each @@ -116961,21 +102255,6 @@ event is formatted as JSON. .IP \(bu 2 \fB406\fP \-\- requested Content\-Type not available .UNINDENT -.TP -.B Query Parameters -.INDENT 7.0 -.IP \(bu 2 -\fBtoken\fP \-\- \fBoptional\fP parameter containing the token -ordinarily supplied via the X\-Auth\-Token header in order to -allow cross\-domain requests in browsers that do not include -CORS support in the EventSource API. E.g., -\fBcurl \-NsS localhost:8000/events?token=308650d\fP -.IP \(bu 2 -\fBsalt_token\fP \-\- \fBoptional\fP parameter containing a raw Salt -\fIeauth token\fP (not to be confused with the token returned from -the /login URL). E.g., -\fBcurl \-NsS localhost:8000/events?salt_token=30742765\fP -.UNINDENT .UNINDENT .UNINDENT .sp @@ -117036,6 +102315,7 @@ The event stream can be easily consumed via JavaScript: .sp .nf .ft C +# Note, you must be authenticated! var source = new EventSource(\(aq/events\(aq); source.onopen = function() { console.debug(\(aqopening\(aq) }; source.onerror = function(e) { console.debug(\(aqerror!\(aq, e) }; @@ -117054,7 +102334,21 @@ Or using CORS: .sp .nf .ft C -var source = new EventSource(\(aq/events?token=ecd589e4e01912cf3c4035afad73426dbb8dba75\(aq, {withCredentials: true}); +var source = new EventSource(\(aq/events\(aq, {withCredentials: true}); +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +Some browser clients lack CORS support for the \fBEventSource()\fP API. Such +clients may instead pass the \fIX\-Auth\-Token\fP value as an URL +parameter: +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +curl \-NsS localhost:8000/events/6d1b722e .ft P .fi .UNINDENT @@ -117297,7 +102591,7 @@ deploy_my_app: .UNINDENT .UNINDENT .UNINDENT -.SS \fB/keys\fP +.SS \fB/key\fP .INDENT 0.0 .TP .B class salt.netapi.rest_cherrypy.app.Keys @@ -117758,10 +103052,6 @@ add the following to the Salt master config file. rest_tornado: # can be any port port: 8000 - # address to bind to (defaults to 0.0.0.0) - address: 0.0.0.0 - # socket backlog - backlog: 128 ssl_crt: /etc/pki/api/certs/server.crt # no need to specify ssl_key if cert and key # are in one single file @@ -118294,43 +103584,43 @@ data: { .INDENT 0.0 .TP .B salt.netapi.rest_tornado.saltnado.SaltAPIHandler -alias of \fB\fP +alias of \fB\fP .UNINDENT .SS \fB/login\fP .INDENT 0.0 .TP .B salt.netapi.rest_tornado.saltnado.SaltAuthHandler -alias of \fB\fP +alias of \fB\fP .UNINDENT .SS \fB/minions\fP .INDENT 0.0 .TP .B salt.netapi.rest_tornado.saltnado.MinionSaltAPIHandler -alias of \fB\fP +alias of \fB\fP .UNINDENT .SS \fB/jobs\fP .INDENT 0.0 .TP .B salt.netapi.rest_tornado.saltnado.JobsSaltAPIHandler -alias of \fB\fP +alias of \fB\fP .UNINDENT .SS \fB/run\fP .INDENT 0.0 .TP .B salt.netapi.rest_tornado.saltnado.RunSaltAPIHandler -alias of \fB\fP +alias of \fB\fP .UNINDENT .SS \fB/events\fP .INDENT 0.0 .TP .B salt.netapi.rest_tornado.saltnado.EventsSaltAPIHandler -alias of \fB\fP +alias of \fB\fP .UNINDENT .SS \fB/hook\fP .INDENT 0.0 .TP .B salt.netapi.rest_tornado.saltnado.WebhookSaltAPIHandler -alias of \fB\fP +alias of \fB\fP .UNINDENT .SS rest_wsgi .SS A minimalist REST API for Salt @@ -118514,9 +103804,9 @@ center; |l|l|. _ T{ -\fBcompact\fP +\fBgrains\fP T} T{ -Display compact output data structure +Special outputter for grains T} _ T{ @@ -118574,12 +103864,6 @@ Python pretty\-print (pprint) T} _ T{ -\fBprogress\fP -T} T{ -Display return data as a progress bar -T} -_ -T{ \fBraw\fP T} T{ Display raw output data structure @@ -118604,20 +103888,40 @@ Display return data in YAML format T} _ .TE -.SS salt.output.compact -.SS Display compact output data structure +.SS salt.output.grains +.SS Special outputter for grains .sp -Example output:: -\(aqsaltdev\(aq: {\(aqtest_|\-always\-passes_|\-foo_|\-succeed_without_changes\(aq: {\(aqcomment\(aq: \(aqSuccess!\(aq, \(aqname\(aq: \(aqfoo\(aq, \(aqstart_time\(aq: \(aq05:16:26.111814\(aq, \(aqresult\(aq: True, \(aqduration\(aq: 1, \(aq__run_num__\(aq: 0, \(aqchanges\(aq: {}}, \(aqtest_|\-my\-custom\-combo_|\-foo_|\-configurable_test_state\(aq: {\(aqcomment\(aq: \(aqbar.baz\(aq, \(aqname\(aq: \(aqfoo\(aq, \(aqstart_time\(aq: \(aq05:16:26.117177\(aq, \(aqresult\(aq: False, \(aqduration\(aq: 1, \(aq__run_num__\(aq: 4, \(aqchanges\(aq: {\(aqtesting\(aq: {\(aqnew\(aq: \(aqSomething pretended to change\(aq, \(aqold\(aq: \(aqUnchanged\(aq}}}, \(aqtest_|\-always\-fails_|\-foo_|\-fail_without_changes\(aq: {\(aqcomment\(aq: \(aqFailure!\(aq, \(aqname\(aq: \(aqfoo\(aq, \(aqstart_time\(aq: \(aq05:16:26.113124\(aq, \(aqresult\(aq: False, \(aqduration\(aq: 1, \(aq__run_num__\(aq: 1, \(aqchanges\(aq: {}}, \(aqtest_|\-always\-changes\-and\-succeeds_|\-foo_|\-succeed_with_changes\(aq: {\(aqcomment\(aq: \(aqSuccess!\(aq, \(aqname\(aq: \(aqfoo\(aq, \(aqstart_time\(aq: \(aq05:16:26.114570\(aq, \(aqresult\(aq: True, \(aqduration\(aq: 0, \(aq__run_num__\(aq: 2, \(aqchanges\(aq: {\(aqtesting\(aq: {\(aqnew\(aq: \(aqSomething pretended to change\(aq, \(aqold\(aq: \(aqUnchanged\(aq}}}, \(aqtest_|\-always\-changes\-and\-fails_|\-foo_|\-fail_with_changes\(aq: {\(aqcomment\(aq: \(aqFailure!\(aq, \(aqname\(aq: \(aqfoo\(aq, \(aqstart_time\(aq: \(aq05:16:26.115561\(aq, \(aqresult\(aq: False, \(aqduration\(aq: 1, \(aq__run_num__\(aq: 3, \(aqchanges\(aq: {\(aqtesting\(aq: {\(aqnew\(aq: \(aqSomething pretended to change\(aq, \(aqold\(aq: \(aqUnchanged\(aq}}}}} +This outputter is a more condensed version of the \fBnested\fP outputter, used by default to display grains when the +following functions are invoked: +.INDENT 0.0 +.IP \(bu 2 +\fBgrains.item\fP +.IP \(bu 2 +\fBgrains.items\fP +.IP \(bu 2 +\fBgrains.setval\fP +.UNINDENT +.sp +Example output: .INDENT 0.0 .INDENT 3.5 -{\(aqmyminion\(aq: {\(aqfoo\(aq: {\(aqlist\(aq: [\(aqHello\(aq, \(aqWorld\(aq], \(aqbar\(aq: \(aqbaz\(aq, \(aqdictionary\(aq: {\(aqabc\(aq: 123, \(aqdef\(aq: 456}}}} +.sp +.nf +.ft C +myminion: + dictionary: {\(aqabc\(aq: 123, \(aqdef\(aq: 456} + list: + Hello + World + bar: baz +.ft P +.fi .UNINDENT .UNINDENT .INDENT 0.0 .TP -.B salt.output.compact.output(data) -Rather basic.... +.B salt.output.grains.output(grains) +Output the grains in a clean way .UNINDENT .SS salt.output.highstate .SS Outputter for displaying results of state runs @@ -118801,7 +104105,7 @@ Display ret data .SS salt.output.newline_values_only .SS Display values only, separated by newlines .sp -New in version 2015.2.0. +New in version Lithium. .sp This outputter is designed for Salt CLI return data. It will do the following @@ -118966,19 +104270,6 @@ Example output: .B salt.output.pprint_out.output(data) Print out via pretty print .UNINDENT -.SS salt.output.progress -.sp -Display return data as a progress bar -.INDENT 0.0 -.TP -.B salt.output.progress.output(ret, bar) -Update the progress bar -.UNINDENT -.INDENT 0.0 -.TP -.B salt.output.progress.progress_iter(progress) -Initialize and return a progress bar iter -.UNINDENT .SS salt.output.raw .SS Display raw output data structure .sp @@ -119258,29 +104549,12 @@ Generate Pillar data from Django models through the Django ORM T} _ T{ -\fBec2_pillar\fP -T} T{ -Retrieve EC2 instance data for minions. -T} -_ -T{ \fBetcd_pillar\fP T} T{ Use etcd data as a Pillar source T} _ T{ -\fBfile_encode\fP -T} T{ -T} -_ -T{ -\fBfile_tree\fP -T} T{ -Recursively iterate over directories and add all files as Pillar data. -T} -_ -T{ \fBforeman\fP T} T{ A module to pull data from Foreman via its API into the Pillar dictionary @@ -119317,12 +104591,6 @@ Retrieve Pillar data by doing a MySQL query T} _ T{ -\fBpepa\fP -T} T{ -Pepa -T} -_ -T{ \fBpillar_ldap\fP T} T{ Use LDAP data as a Pillar source @@ -119359,12 +104627,6 @@ Clone a remote SVN repository and use the filesystem as a Pillar source T} _ T{ -\fBvarstack_pillar\fP -T} T{ -Use varstack data as a Pillar source -T} -_ -T{ \fBvirtkey\fP T} T{ Accept a key from a hypervisor if the virt runner has already submitted an authorization request @@ -119559,43 +104821,6 @@ file is run in a subprocess and the changed variables are then added .UNINDENT .UNINDENT .UNINDENT -.SS salt.pillar.ec2_pillar -.sp -Retrieve EC2 instance data for minions. -.sp -The minion id must be the instance\-id retrieved from AWS. As an -option, use_grain can be set to True. This allows the use of an -instance\-id grain instead of the minion\-id. Since this is a potential -security risk, the configuration can be further expanded to include -a list of minions that are trusted to only allow the alternate id -of the instances to specific hosts. There is no glob matching at -this time. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -ext_pillar: - \- ec2_pillar: - use_grain: True - minion_ids: - \- trusted\-minion\-1 - \- trusted\-minion\-2 - \- trusted\-minion\-3 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -This is a very simple pillar that simply retrieves the instance data -from AWS. Currently the only portion implemented are EC2 tags, which -returns a list of key/value pairs for all of the EC2 tags assigned to -the instance. -.INDENT 0.0 -.TP -.B salt.pillar.ec2_pillar.ext_pillar(minion_id, pillar, use_grain=False, minion_ids=None) -Execute a command and read the output as YAML -.UNINDENT .SS salt.pillar.etcd_pillar .sp Use etcd data as a Pillar source @@ -119704,144 +104929,6 @@ etcdctl set /salt\-private/special_minion_id/mykey my_other_value .B salt.pillar.etcd_pillar.ext_pillar(minion_id, pillar, conf) Check etcd for all data .UNINDENT -.SS salt.pillar.file_tree -.sp -Recursively iterate over directories and add all files as Pillar data. -.sp -Example configuration: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -ext_pillar: - \- file_tree: - root_dir: /path/to/root/directory - follow_dir_links: False - raw_data: False -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The \fBroot_dir\fP parameter is required and points to the directory where files -for each host are stored. The \fBfollow_dir_links\fP parameter is optional -and defaults to False. If \fBfollow_dir_links\fP is set to True, file_tree will -follow symbolic links to other directories. Be careful when using -\fBfollow_dir_links\fP, the current implementation is dumb and will run into -infinite recursion if a recursive symlink chain exists in the root_dir! -.sp -If \fBraw_data\fP is set to True, it will revert the behavior of the python -open() function, which adds a line break character at the end of the file, -in this case, the pillar data. -.sp -To fill pillar data for each host, file_tree recursively iterates over -\fBroot_dir\fP/hosts/\fBid\fP (where \fBid\fP is a minion ID), and constructs -the same directory tree with contents of all the files inside the pillar tree. -.sp -For example, the following \fBroot_dir\fP tree: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -\&./hosts/ -\&./hosts/test\-host/ -\&./hosts/test\-host/files/ -\&./hosts/test\-host/files/testdir/ -\&./hosts/test\-host/files/testdir/file1.txt -\&./hosts/test\-host/files/testdir/file2.txt -\&./hosts/test\-host/files/another\-testdir/ -\&./hosts/test\-host/files/another\-testdir/symlink\-to\-file1.txt -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -will result in the following pillar tree for minion with ID "test\-host": -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -test\-host: - \-\-\-\-\-\-\-\-\-\- - files: - \-\-\-\-\-\-\-\-\-\- - another\-testdir: - \-\-\-\-\-\-\-\-\-\- - symlink\-to\-file1.txt: - Contents of file #1. - - testdir: - \-\-\-\-\-\-\-\-\-\- - file1.txt: - Contents of file #1. - - file2.txt: - Contents of file #2. -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -To fill pillar data for minion in a node group, file_tree recursively -iterates over \fBroot_dir\fP/nodegroups/\fBnodegroup\fP (where \fBnodegroup\fP is a -minion node group), and constructs the same directory tree with contents of all -the files inside the pillar tree. -\fBIMPORTANT\fP: The host data take precedence over the node group data -.sp -For example, the following \fBroot_dir\fP tree: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -\&./nodegroups/ -\&./nodegroups/test\-group/ -\&./nodegroups/test\-group/files/ -\&./nodegroups/test\-group/files/testdir/ -\&./nodegroups/test\-group/files/testdir/file1.txt -\&./nodegroups/test\-group/files/testdir/file2.txt -\&./nodegroups/test\-group/files/another\-testdir/ -\&./nodegroups/test\-group/files/another\-testdir/symlink\-to\-file1.txt -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -will result in the following pillar tree for minion in the node group -"test\-group": -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -test\-host: - \-\-\-\-\-\-\-\-\-\- - files: - \-\-\-\-\-\-\-\-\-\- - another\-testdir: - \-\-\-\-\-\-\-\-\-\- - symlink\-to\-file1.txt: - Contents of file #1. - - testdir: - \-\-\-\-\-\-\-\-\-\- - file1.txt: - Contents of file #1. - - file2.txt: - Contents of file #2. -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.pillar.file_tree.ext_pillar(minion_id, pillar, root_dir=None, follow_dir_links=False, debug=False, raw_data=False) -Find pillar data for specified ID. -.UNINDENT .SS salt.pillar.foreman .sp A module to pull data from Foreman via its API into the Pillar dictionary @@ -119882,11 +104969,6 @@ foreman.lookup_parameters: True # default is True .fi .UNINDENT .UNINDENT -.sp -An alternative would be to use the Foreman modules integrating Salt features -in the Smart Proxy and the webinterface. -.sp -Further information can be found on \fI\%Github\fP\&. .SS Module Documentation .INDENT 0.0 .TP @@ -119916,10 +104998,6 @@ to look for Pillar files (such as \fBtop.sls\fP). .sp Changed in version 2014.7.0: The optional \fBroot\fP parameter will be added. -.sp -Changed in version 2015.2.0: The special branch name \(aq__env__\(aq will be replace by the -environment ({{env}}) - .sp Note that this is not the same thing as configuring pillar data using the \fBpillar_roots\fP parameter. The branch referenced in the @@ -119983,35 +105061,6 @@ dev: .fi .UNINDENT .UNINDENT -.sp -In a gitfs base setup with pillars from the same repository as the states, -the \fBext_pillar:\fP configuration would be like: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -ext_pillar: - \- git: _ git://gitserver/git\-pillar.git root=pillar -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The (optinal) root=pillar defines the directory that contains the pillar data. -The corresponding \fBtop.sls\fP would be like: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -{{env}}: - \(aq*\(aq: - \- bar -.ft P -.fi -.UNINDENT -.UNINDENT .INDENT 0.0 .TP .B class salt.pillar.git_pillar.GitPillar(branch, repo_location, opts) @@ -120023,10 +105072,6 @@ Return a list of refs that can be used as environments .UNINDENT .INDENT 7.0 .TP -.B map_branch(branch, opts=None) -.UNINDENT -.INDENT 7.0 -.TP .B update() Ensure you are following the latest changes on the remote .sp @@ -120175,9 +105220,6 @@ serializable. Defaults to \fBNone\fP\&. .SS salt.pillar.mysql .sp Retrieve Pillar data by doing a MySQL query -.sp -MariaDB provides Python support through the MySQL Python package. -Therefore, you may use this module with both MySQL or MariaDB. .INDENT 0.0 .TP .B maturity @@ -120312,31 +105354,11 @@ Depth of 0 translates to the largest depth needed, so 3 in this case. .sp The legacy compatibility translates to depth 1. .sp -Then they are merged in a similar way to plain pillar data, in the order +Then they are merged the in a similar way to plain pillar data, in the order returned by MySQL. .sp Thus subsequent results overwrite previous ones when they collide. .sp -The ignore_null option can be used to change the overwrite behavior so that -only non\-NULL values in subsequent results will overwrite. This can be used -to selectively overwrite default values. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -ext_pillar: - \- mysql: - \- query: "SELECT pillar,value FROM pillars WHERE minion_id = \(aqdefault\(aq and minion_id != %s" - depth: 2 - \- query: "SELECT pillar,value FROM pillars WHERE minion_id = %s" - depth: 2 - ignore_null: True -.ft P -.fi -.UNINDENT -.UNINDENT -.sp If you specify \fIas_list: True\fP in the mapping expression it will convert collisions to lists. .sp @@ -120383,9 +105405,9 @@ These columns define list grouping The range for with_lists is 1 to number_of_fields, inclusive. Numbers outside this range are ignored. .sp -Finally, if you pass the queries in via a mapping, the key will be the +Finally, if you use pass the queries in via a mapping, the key will be the first level name where as passing them in as a list will place them in the -root. This isolates the query results into their own subtrees. +root. This isolates the query results in to their own subtrees. This may be a help or hindrance to your aims and can be used as such. .sp You can basically use any SELECT query that gets you the information, you @@ -120446,7 +105468,7 @@ Set self.focus for kwarg queries .INDENT 7.0 .TP .B extract_queries(args, kwargs) -This function normalizes the config block into a set of queries we +This function normalizes the config block in to a set of queries we can use. The return is a list of consistently laid out dicts. .UNINDENT .INDENT 7.0 @@ -120459,10 +105481,6 @@ can use. The return is a list of consistently laid out dicts. .UNINDENT .INDENT 7.0 .TP -.B ignore_null = False -.UNINDENT -.INDENT 7.0 -.TP .B num_fields = 0 .UNINDENT .INDENT 7.0 @@ -120475,7 +105493,7 @@ and the depth to which we process. .TP .B process_results(rows) This function takes a list of database results and iterates over, -merging them into a dict form. +merging them in to a dict form. .UNINDENT .INDENT 7.0 .TP @@ -120486,343 +105504,6 @@ merging them into a dict form. .B with_lists = None .UNINDENT .UNINDENT -.SS salt.pillar.pepa -.SS Pepa -.sp -Configuration templating for SaltStack using Hierarchical substitution and Jinja. -.SS Configuring Pepa -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -extension_modules: /srv/salt/ext - -ext_pillar: - \- pepa: - resource: host # Name of resource directory and sub\-key in pillars - sequence: # Sequence used for hierarchical substitution - \- hostname: # Name of key - name: input # Alias used for template directory - base_only: True # Only use templates from Base environment, i.e. no staging - \- default: - \- environment: - \- location..region: - name: region - \- location..country: - name: country - \- location..datacenter: - name: datacenter - \- roles: - \- osfinger: - name: os - \- hostname: - name: override - base_only: True - subkey: True # Create a sub\-key in pillars, named after the resource in this case [host] - subkey_only: True # Only create a sub\-key, and leave the top level untouched - -pepa_roots: # Base directory for each environment - base: /srv/pepa/base # Path for base environment - dev: /srv/pepa/base # Associate dev with base - qa: /srv/pepa/qa - prod: /srv/pepa/prod - -# Use a different delimiter for nested dictionaries, defaults to \(aq..\(aq since some keys may use \(aq.\(aq in the name -#pepa_delimiter: .. - -# Supply Grains for Pepa, this should **ONLY** be used for testing or validation -#pepa_grains: -# environment: dev - -# Supply Pillar for Pepa, this should **ONLY** be used for testing or validation -#pepa_pillars: -# saltversion: 0.17.4 - -# Enable debug for Pepa, and keep Salt on warning -#log_level: debug - -#log_granular_levels: -# salt: warning -# salt.loaded.ext.pillar.pepa: debug -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Pepa can also be used in Master\-less SaltStack setup. -.SS Command line -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -usage: pepa.py [\-h] [\-c CONFIG] [\-d] [\-g GRAINS] [\-p PILLAR] [\-n] [\-v] - hostname - -positional arguments: - hostname Hostname - -optional arguments: - \-h, \-\-help show this help message and exit - \-c CONFIG, \-\-config CONFIG - Configuration file - \-d, \-\-debug Print debug info - \-g GRAINS, \-\-grains GRAINS - Input Grains as YAML - \-p PILLAR, \-\-pillar PILLAR - Input Pillar as YAML - \-n, \-\-no\-color No color output - \-v, \-\-validate Validate output -.ft P -.fi -.UNINDENT -.UNINDENT -.SS Templates -.sp -Templates is configuration for a host or software, that can use information from Grains or Pillars. These can then be used for hierarchically substitution. -.sp -\fBExample File:\fP host/input/test_example_com.yaml -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -location..region: emea -location..country: nl -location..datacenter: foobar -environment: dev -roles: - \- salt.master -network..gateway: 10.0.0.254 -network..interfaces..eth0..hwaddr: 00:20:26:a1:12:12 -network..interfaces..eth0..dhcp: False -network..interfaces..eth0..ipv4: 10.0.0.3 -network..interfaces..eth0..netmask: 255.255.255.0 -network..interfaces..eth0..fqdn: {{ hostname }} -cobbler..profile: fedora\-19\-x86_64 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -As you see in this example you can use Jinja directly inside the template. -.sp -\fBExample File:\fP host/region/amer.yaml -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -network..dns..servers: - \- 10.0.0.1 - \- 10.0.0.2 -time..ntp..servers: - \- ntp1.amer.example.com - \- ntp2.amer.example.com - \- ntp3.amer.example.com -time..timezone: America/Chihuahua -yum..mirror: yum.amer.example.com -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Each template is named after the value of the key using lowercase and all extended characters are replaced with underscore. -.sp -\fBExample:\fP -.sp -osfinger: Fedora\-19 -.sp -\fBWould become:\fP -.sp -fedora_19.yaml -.SS Nested dictionaries -.sp -In order to create nested dictionaries as output you can use double dot \fB".."\fP as a delimiter. You can change this using "pepa_delimiter" we choose double dot since single dot is already used by key names in some modules, and using ":" requires quoting in the YAML. -.sp -\fBExample:\fP -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -network..dns..servers: - \- 10.0.0.1 - \- 10.0.0.2 -network..dns..options: - \- timeout:2 - \- attempts:1 - \- ndots:1 -network..dns..search: - \- example.com -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -\fBWould become:\fP -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -network: - dns: - servers: - \- 10.0.0.1 - \- 10.0.0.2 - options: - \- timeout:2 - \- attempts:1 - \- ndots:1 - search: - \- example.com -.ft P -.fi -.UNINDENT -.UNINDENT -.SS Operators -.sp -Operators can be used to merge/unset a list/hash or set the key as immutable, so it can\(aqt be changed. -.TS -center; -|l|l|. -_ -T{ -Operator -T} T{ -Description -T} -_ -T{ -merge() -T} T{ -Merge list or hash -T} -_ -T{ -unset() -T} T{ -Unset key -T} -_ -T{ -immutable() -T} T{ -Set the key as immutable, so it can\(aqt be changed -T} -_ -T{ -imerge() -T} T{ -Set immutable and merge -T} -_ -T{ -iunset() -T} T{ -Set immutable and unset -T} -_ -.TE -.sp -\fBExample:\fP -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -network..dns..search..merge(): - \- foobar.com - \- dummy.nl -owner..immutable(): Operations -host..printers..unset(): -.ft P -.fi -.UNINDENT -.UNINDENT -.SS Validation -.sp -Since it\(aqs very hard to test Jinja as is, the best approach is to run all the permutations of input and validate the output, i.e. Unit Testing. -.sp -To facilitate this in Pepa we use YAML, Jinja and Cerberus <\fI\%https://github.com/nicolaiarocci/cerberus\fP>. -.SS Schema -.sp -So this is a validation schema for network configuration, as you see it can be customized with Jinja just as Pepa templates. -.sp -This was designed to be run as a build job in Jenkins or similar tool. You can provide Grains/Pillar input using either the config file or command line arguments. -.sp -\fBFile Example: host/validation/network.yaml\fP -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -network..dns..search: - type: list - allowed: - \- example.com - -network..dns..options: - type: list - allowed: [\(aqtimeout:2\(aq, \(aqattempts:1\(aq, \(aqndots:1\(aq] - -network..dns..servers: - type: list - schema: - regex: ^([0\-9]{1,3}\e.){3}[0\-9]{1,3}$ - -network..gateway: - type: string - regex: ^([0\-9]{1,3}\e.){3}[0\-9]{1,3}$ - -{% if network.interfaces is defined %} -{% for interface in network.interfaces %} - -network..interfaces..{{ interface }}..dhcp: - type: boolean - -network..interfaces..{{ interface }}..fqdn: - type: string - regex: ^([a\-z0\-9]([a\-z0\-9\-]{0,61}[a\-z0\-9])?\e.)+[a\-zA\-Z]{2,6}$ - -network..interfaces..{{ interface }}..hwaddr: - type: string - regex: ^([0\-9a\-f]{1,2}\e:){5}[0\-9a\-f]{1,2}$ - -network..interfaces..{{ interface }}..ipv4: - type: string - regex: ^([0\-9]{1,3}\e.){3}[0\-9]{1,3}$ - -network..interfaces..{{ interface }}..netmask: - type: string - regex: ^([0\-9]{1,3}\e.){3}[0\-9]{1,3}$ - -{% endfor %} -{% endif %} -.ft P -.fi -.UNINDENT -.UNINDENT -.SS Links -.sp -For more examples and information see <\fI\%https://github.com/mickep76/pepa\fP>. -.INDENT 0.0 -.TP -.B salt.pillar.pepa.ext_pillar(minion_id, pillar, resource, sequence, subkey=False, subkey_only=False) -Evaluate Pepa templates -.UNINDENT -.INDENT 0.0 -.TP -.B salt.pillar.pepa.key_value_to_tree(data) -Convert key/value to tree -.UNINDENT -.INDENT 0.0 -.TP -.B salt.pillar.pepa.validate(output, resource) -Validate Pepa templates -.UNINDENT .SS salt.pillar.pillar_ldap .sp Use LDAP data as a Pillar source @@ -120999,6 +105680,7 @@ ext_pillar: key: ksladfDLKDALSFKSD93q032sdDasdfasdflsadkf multiple_env: False environment: base + prefix: somewhere/overthere verify_ssl: True service_url: s3.amazonaws.com .ft P @@ -121006,27 +105688,32 @@ ext_pillar: .UNINDENT .UNINDENT .sp -The \fBbucket\fP parameter specifies the target S3 bucket. It is required. +The \fIbucket=\fP parameter specifies the target S3 bucket. It is required. .sp -The \fBkeyid\fP parameter specifies the key id to use when access the S3 bucket. +The \fIkeyid=\fP parameter specifies the key id to use when access the S3 bucket. It is required. .sp -The \fBkey\fP parameter specifies the key to use when access the S3 bucket. It +The \fIkey=\fP parameter specifies the key to use when access the S3 bucket. It is required. .sp -The \fBmultiple_env\fP defaults to False. It specifies whether the pillar should +The \fImultiple_env=\fP defaults to False. It specifies whether the pillar should interpret top level folders as pillar environments (see mode section below). .sp -The \fBenvironment\fP defaults to \(aqbase\(aq. It specifies which environment the +The \fIenvironment=\fP defaults to \(aqbase\(aq. It specifies which environment the bucket represents when in single environments mode (see mode section below). It is ignored if multiple_env is True. .sp -The \fBverify_ssl\fP parameter defaults to True. It specifies whether to check for +The \fIprefix=\fP defaults to \(aq\(aq. It specifies a key prefix to use when searching +for data in the bucket for the pillar. It works when multiple_env is True or False. +Essentially it tells ext_pillar to look for your pillar data in a \(aqsubdirectory\(aq +of your S3 bucket +.sp +The \fIverify_ssl=\fP parameter defaults to True. It specifies whether to check for valid S3 SSL certificates. \fINOTE\fP If you use bucket names with periods, this must be set to False else an invalid certificate error will be thrown (issue #12200). .sp -The \fBservice_url\fP parameter defaults to \(aqs3.amazonaws.com\(aq. It specifies the +The \fIservice_url=\fP parameter defaults to \(aqs3.amazonaws.com\(aq. It specifies the base url to use for accessing S3. .sp This pillar can operate in two modes, single environment per bucket or multiple @@ -121038,7 +105725,7 @@ Single environment mode must have this bucket structure: .sp .nf .ft C -s3:/// +s3://// .ft P .fi .UNINDENT @@ -121050,18 +105737,23 @@ Multiple environment mode must have this bucket structure: .sp .nf .ft C -s3://// +s3:///// .ft P .fi .UNINDENT .UNINDENT +.sp +If you wish to define your pillar data entirely within S3 it\(aqs recommended +that you use the \fIprefix=\fP parameter and specify one entry in ext_pillar +for each environment rather than specifying multiple_env. This is due +to issue #22471 (\fI\%https://github.com/saltstack/salt/issues/22471\fP) .INDENT 0.0 .TP .B class salt.pillar.s3.S3Credentials(key, keyid, bucket, service_url, verify_ssl=True) .UNINDENT .INDENT 0.0 .TP -.B salt.pillar.s3.ext_pillar(minion_id, pillar, bucket, key, keyid, verify_ssl, multiple_env=False, environment=\(aqbase\(aq, service_url=None) +.B salt.pillar.s3.ext_pillar(minion_id, pillar, bucket, key, keyid, verify_ssl, multiple_env=False, environment=\(aqbase\(aq, prefix=\(aq\(aq, service_url=None) Execute a command and read the output as YAML .UNINDENT .SS salt.pillar.svn_pillar @@ -121154,14 +105846,6 @@ Returns the directory of the pillars (repo cache + branch + root) .B salt.pillar.svn_pillar.ext_pillar(minion_id, pillar, repo_string) Execute a command and read the output as YAML .UNINDENT -.SS salt.pillar.varstack_pillar -.sp -Use varstack data as a Pillar source -.INDENT 0.0 -.TP -.B salt.pillar.varstack_pillar.ext_pillar(minion_id, pillar, conf) -Parse varstack data and return the result -.UNINDENT .SS salt.pillar.virtkey .sp Accept a key from a hypervisor if the virt runner has already submitted an authorization request @@ -121173,7 +105857,7 @@ Accept the key for the VM on the hyper, if authorized. .SS Renderers .sp The Salt state system operates by gathering information from common data -types such as lists, dictionaries, and strings that would be familiar +types such as lists, dictionaries and strings that would be familiar to any developer. .sp SLS files are translated from whatever data templating format they are written @@ -121287,7 +105971,7 @@ renderers, you should know what each renderer accepts as input and what it retur as output. .SS Writing Renderers .sp -A custom renderer must be a Python module placed in the renderers directory and the +A custom renderer must be a Python module placed in the rendered directory and the module implement the \fBrender\fP function. .sp The \fBrender\fP function will be passed the path of the SLS file as an argument. @@ -121341,18 +106025,6 @@ center; |l|l|. _ T{ -\fBcheetah\fP -T} T{ -Cheetah Renderer for Salt -T} -_ -T{ -\fBgenshi\fP -T} T{ -Genshi Renderer for Salt -T} -_ -T{ \fBgpg\fP T} T{ Renderer that will decrypt GPG ciphers @@ -121422,36 +106094,6 @@ T} T{ T} _ .TE -.SS salt.renderers.cheetah -.sp -Cheetah Renderer for Salt -.INDENT 0.0 -.TP -.B salt.renderers.cheetah.render(cheetah_data, saltenv=\(aqbase\(aq, sls=\(aq\(aq, method=\(aqxml\(aq, **kws) -Render a Cheetah template. -.INDENT 7.0 -.TP -.B Return type -A Python data structure -.UNINDENT -.UNINDENT -.SS salt.renderers.genshi -.sp -Genshi Renderer for Salt -.INDENT 0.0 -.TP -.B salt.renderers.genshi.render(genshi_data, saltenv=\(aqbase\(aq, sls=\(aq\(aq, method=\(aqxml\(aq, **kws) -Render a Genshi template. A method should be passed in as part of the -kwargs. If no method is passed in, xml is assumed. Valid methods are: -.sp -Note that the \fBtext\fP method will call \fBNewTextTemplate\fP\&. If \fBoldtext\fP -is desired, it must be called explicitly -.INDENT 7.0 -.TP -.B Return type -A Python data structure -.UNINDENT -.UNINDENT .SS salt.renderers.gpg .sp Renderer that will decrypt GPG ciphers @@ -121514,7 +106156,7 @@ To generate a cipher from a secret: .sp .nf .ft C -$ echo \-n "supersecret" | gpg \-\-homedir \-\-armor \-\-encrypt \-r +$ echo \-n"supersecret" | gpg \-\-homedir \-\-armor \-\-encrypt \-r .ft P .fi .UNINDENT @@ -121573,7 +106215,7 @@ a string is found. .UNINDENT .INDENT 0.0 .TP -.B salt.renderers.gpg.render(data, saltenv=\(aqbase\(aq, sls=\(aq\(aq, argline=\(aq\(aq, **kwargs) +.B salt.renderers.gpg.render(gpg_data, saltenv=\(aqbase\(aq, sls=\(aq\(aq, argline=\(aq\(aq, **kwargs) Create a gpg object given a gpg_keydir, and then use it to try to decrypt the data to be rendered. .UNINDENT @@ -121718,7 +106360,7 @@ breaks, using \fI\%whitespace control\fP\&. starts at the root of the state tree or pillar. .SS Filters .sp -Saltstack extends \fI\%builtin filters\fP with these custom filters: +Saltstack extends \fI\%builtin filters\fP with his custom filters: .INDENT 0.0 .TP .B strftime @@ -121740,75 +106382,6 @@ module. Some examples are available on this pages. .fi .UNINDENT .UNINDENT -.TP -.B sequence -Ensure that parsed data is a sequence. -.TP -.B yaml_encode -Serializes a single object into a YAML scalar with any necessary -handling for escaping special characters. This will work for any -scalar YAML data type: ints, floats, timestamps, booleans, strings, -unicode. It will \fInot\fP work for multi\-objects such as sequences or -maps. -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C - {%\- set bar = 7 %} - {%\- set baz = none %} - {%\- set zip = true %} - {%\- set zap = \(aqThe word of the day is "salty"\(aq %} - - {%\- load_yaml as foo %} - bar: {{ bar|yaml_encode }} - baz: {{ baz|yaml_encode }} - baz: {{ zip|yaml_encode }} - baz: {{ zap|yaml_encode }} - {%\- endload %} - -In the above case \(ga\(ga{{ bar }}\(ga\(ga and \(ga\(ga{{ foo.bar }}\(ga\(ga should be -identical and \(ga\(ga{{ baz }}\(ga\(ga and \(ga\(ga{{ foo.baz }}\(ga\(ga should be -identical. -.ft P -.fi -.UNINDENT -.UNINDENT -.TP -.B yaml_dquote -Serializes a string into a properly\-escaped YAML double\-quoted -string. This is useful when the contents of a string are unknown -and may contain quotes or unicode that needs to be preserved. The -resulting string will be emitted with opening and closing double -quotes. -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C - {%\- set bar = \(aq"The quick brown fox . . ."\(aq %} - {%\- set baz = \(aqThe word of the day is "salty".\(aq %} - - {%\- load_yaml as foo %} - bar: {{ bar|yaml_dquote }} - baz: {{ baz|yaml_dquote }} - {%\- endload %} - -In the above case \(ga\(ga{{ bar }}\(ga\(ga and \(ga\(ga{{ foo.bar }}\(ga\(ga should be -identical and \(ga\(ga{{ baz }}\(ga\(ga and \(ga\(ga{{ foo.baz }}\(ga\(ga should be -identical. If variable contents are not guaranteed to be a string -then it is better to use \(ga\(gayaml_encode\(ga\(ga which handles all YAML -scalar types. -.ft P -.fi -.UNINDENT -.UNINDENT -.TP -.B yaml_squote -Similar to the \fByaml_dquote\fP filter but with single quotes. Note -that YAML only allows special escapes inside double quotes so -\fByaml_squote\fP is not nearly as useful (viz. you likely want to -use \fByaml_encode\fP or \fByaml_dquote\fP). .UNINDENT .SS Jinja in Files .sp @@ -122005,7 +106578,7 @@ in templates, easily: .nf .ft C {%\- set yaml_src = "{foo: it works}"|load_yaml %} -{%\- set json_src = "{\(aqbar\(aq: \(aqfor real\(aq}"|load_json %} +{%\- set json_src = "{\(aqbar\(aq: \(aqfor real\(aq}"|load_yaml %} Dude, {{ yaml_src.foo }} {{ json_src.bar }}! .ft P .fi @@ -122639,7 +107212,7 @@ sls module as if it was never defined. \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 -If \fIimplicit ordering\fP is enabled (i.e., via \fB__pydsl__.set(ordered=True)\fP) then +If \fIimplicit ordering\fP is enabled (ie, via \fB__pydsl__.set(ordered=True)\fP) then the \fIfirst\fP invocation of a \fIID\-declaration\fP object must be done before a new \fIfunction\-declaration\fP is created. .UNINDENT @@ -122745,8 +107318,8 @@ you with an object based interface for generating state data. .sp Pyobjects takes care of creating an object for each of the available states on the minion. Each state is represented by an object that is the CamelCase -version of its name (i.e. \fBFile\fP, \fBService\fP, \fBUser\fP, etc), and these -objects expose all of their available state functions (i.e. \fBFile.managed\fP, +version of its name (ie. \fBFile\fP, \fBService\fP, \fBUser\fP, etc), and these +objects expose all of their available state functions (ie. \fBFile.managed\fP, \fBService.running\fP, etc). .sp The name of the state is split based upon underscores (\fB_\fP), then each part @@ -123042,7 +107615,7 @@ all .UNINDENT .sp This module provides a custom renderer that processes a salt file with a -specified templating engine (e.g. Jinja) and a chosen data renderer (e.g. YAML), +specified templating engine (e.g., Jinja) and a chosen data renderer (e.g., YAML), extracts arguments for any \fBstateconf.set\fP state, and provides the extracted arguments (including Salt\-specific args, such as \fBrequire\fP, etc) as template context. The goal is to make writing reusable/configurable/parameterized @@ -123098,7 +107671,7 @@ the leading dot stripped off. .sp The leading dot trick can be used with extending state ids as well, so you can include relatively and extend relatively. For example, when -extending a state in \fIsalt://some/other_file.sls\fP, e.g.: +extending a state in \fIsalt://some/other_file.sls\fP, e.g.,: .INDENT 2.0 .INDENT 3.5 .sp @@ -123279,7 +107852,7 @@ exclude: .UNINDENT .IP \(bu 2 Optionally (enabled by default, \fIdisable\fP via the \fI\-G\fP renderer option, -e.g. in the shebang line: \fB#!stateconf \-G\fP), generates a +e.g., in the shebang line: \fB#!stateconf \-G\fP), generates a \fBstateconf.set\fP goal state (state id named as \fB\&.goal\fP by default, configurable via the master/minion config option, \fBstateconf_goal_state\fP) that requires all other states in the salt file. Note, the \fB\&.goal\fP @@ -123291,7 +107864,7 @@ sls file that is supposed to setup Tomcat, you might want to make sure that all states in the Tomcat sls file will be executed before some state in the webapp sls file. .IP \(bu 2 -Optionally (enable via the \fI\-o\fP renderer option, e.g. in the shebang line: +Optionally (enable via the \fI\-o\fP renderer option, e.g., in the shebang line: \fB#!stateconf \-o\fP), orders the states in a sls file by adding a \fBrequire\fP requisite to each state such that every state requires the state defined just before it. The order of the states here is the order @@ -123440,6 +108013,18 @@ In Python, the above maps to: .UNINDENT .UNINDENT .sp +In Python, the above maps to: +.INDENT 0.0 +.INDENT 3.5 +.sp +.nf +.ft C +{\(aqmy_key\(aq: \(aqmy_value\(aq} +.ft P +.fi +.UNINDENT +.UNINDENT +.sp Dictionaries can be nested: .INDENT 0.0 .INDENT 3.5 @@ -123710,32 +108295,6 @@ def __virtual__(): .fi .UNINDENT .UNINDENT -.SS Event Returners -.sp -For maximimum visibility into the history of events across a Salt -infrastructure, all events seen by a salt master may be logged to a returner. -.sp -To enable event logging, set the \fBevent_return\fP configuration option in the -master config to returner which should be designated as the handler for event -returns. -.sp -\fBNOTE:\fP -.INDENT 0.0 -.INDENT 3.5 -Not all returners support event returns. Verify a returner has an -\fBevent_return()\fP function before using. -.UNINDENT -.UNINDENT -.sp -\fBNOTE:\fP -.INDENT 0.0 -.INDENT 3.5 -On larger installations, many hundreds of events may be generated on a -busy master every second. Be certain to closely monitor the storage of -a given returner as Salt can easily overwhealm an underpowered server -with thousands of returns. -.UNINDENT -.UNINDENT .SS Full List of Returners .SS Full list of builtin returner modules .TS @@ -123767,12 +108326,6 @@ Simple returner for CouchDB. T} _ T{ -\fBdjango_return\fP -T} T{ -A returner that will infor a Django system that returns are available using Django\(aqs signal system. -T} -_ -T{ \fBelasticsearch_return\fP T} T{ Return data to an elasticsearch server for indexing. @@ -123785,17 +108338,6 @@ Return data to an etcd server or cluster T} _ T{ -\fBhipchat_return\fP -T} T{ -T} -_ -T{ -\fBkafka_return\fP -T} T{ -Return data to a Kafka topic -T} -_ -T{ \fBlocal\fP T} T{ The local returner is used to test the returner interface, it just prints the @@ -123850,12 +108392,6 @@ Return data to a postgresql server T} _ T{ -\fBpostgres_local_cache\fP -T} T{ -Use a postgresql server for the master job cache. -T} -_ -T{ \fBredis_return\fP T} T{ Return data to a redis server @@ -123868,17 +108404,6 @@ Salt returner that report execution results back to sentry. T} _ T{ -\fBslack_returner\fP -T} T{ -T} -_ -T{ -\fBsms_return\fP -T} T{ -Return data by SMS. -T} -_ -T{ \fBsmtp_return\fP T} T{ Return salt data via email @@ -123896,18 +108421,12 @@ T} T{ Return data to the host operating system\(aqs syslog facility T} _ -T{ -\fBxmpp_return\fP -T} T{ -Return salt data via xmpp -T} -_ .TE .SS salt.returners.carbon_return .sp Take data from salt and "return" it into a carbon receiver .sp -Add the following configuration to the minion configuration file: +Add the following configuration to the minion configuration files: .INDENT 0.0 .INDENT 3.5 .sp @@ -123952,56 +108471,15 @@ Carbon settings may also be configured as: .sp .nf .ft C -carbon: - host: - port: - skip_on_error: True - mode: (pickle|text) -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Alternative configuration values can be used by prefacing the configuration. -Any values not found in the alternative configuration will be pulled from -the default location: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -alternative.carbon: - host: - port: - skip_on_error: True - mode: (pickle|text) -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -To use the carbon returner, append \(aq\-\-return carbon\(aq to the salt command. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq test.ping \-\-return carbon -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -To use the alternative configuration, append \(aq\-\-return_config alternative\(aq to the salt command. -.sp -New in version 2015.2.0. + carbon: + host: + port: + skip_on_error: True + mode: (pickle|text) -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq test.ping \-\-return carbon \-\-return_config alternative +To use the carbon returner, append \(aq\-\-return carbon\(aq to the salt command. ex: + + salt \(aq*\(aq test.ping \-\-return carbon .ft P .fi .UNINDENT @@ -124136,73 +108614,20 @@ Save the load to the specified jid .SS salt.returners.couchdb_return .sp Simple returner for CouchDB. Optional configuration -settings are listed below, along with sane defaults: +settings are listed below, along with sane defaults. +.sp +couchdb.db: \(aqsalt\(aq +couchdb.url: \(aq\fI\%http://salt:5984/\fP\(aq .INDENT 0.0 .INDENT 3.5 -.sp -.nf -.ft C -couchdb.db: \(aqsalt\(aq -couchdb.url: \(aqhttp://salt:5984/\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Alternative configuration values can be used by prefacing the configuration. -Any values not found in the alternative configuration will be pulled from -the default location: +To use the couchdb returner, append \(aq\-\-return couchdb\(aq to the salt command. ex: .INDENT 0.0 .INDENT 3.5 -.sp -.nf -.ft C -alternative.couchdb.db: \(aqsalt\(aq -alternative.couchdb.url: \(aqhttp://salt:5984/\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -To use the couchdb returner, append \fB\-\-return couchdb\fP to the salt command. Example: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C salt \(aq*\(aq test.ping \-\-return couchdb -.ft P -.fi .UNINDENT .UNINDENT -.sp -To use the alternative configuration, append \fB\-\-return_config alternative\fP to the salt command. -.sp -New in version 2015.2.0. - -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq test.ping \-\-return couchdb \-\-return_config alternative -.ft P -.fi .UNINDENT .UNINDENT -.SS On concurrent database access -.sp -As this returner creates a couchdb document whith the salt job id as document id -and as only one document with a given id can exist in a given couchdb database, -it is advised for most setups that every minion be configured to write to it own -database (the value of \fBcouchdb.db\fP may be suffixed with the minion id), -otherwise multi\-minion targetting can lead to losing output: -.INDENT 0.0 -.IP \(bu 2 -the first returning minion is able to create a document in the database -.IP \(bu 2 -other minions fail with \fB{\(aqerror\(aq: \(aqHTTP Error 409: Conflict\(aq}\fP -.UNINDENT .INDENT 0.0 .TP .B salt.returners.couchdb_return.ensure_views() @@ -124252,63 +108677,6 @@ Take in the return and shove it into the couchdb database. Helper function that sets the salt design document. Uses get_valid_salt_views and some hardcoded values. .UNINDENT -.SS salt.returners.django_return -.sp -A returner that will infor a Django system that -returns are available using Django\(aqs signal system. -.sp -\fI\%https://docs.djangoproject.com/en/dev/topics/signals/\fP -.sp -It is up to the Django developer to register necessary -handlers with the signals provided by this returner -and process returns as necessary. -.sp -The easiest way to use signals is to import them from -this returner directly and then use a decorator to register -them. -.sp -An example Django module that registers a function called -\(aqreturner_callback\(aq with this module\(aqs \(aqreturner\(aq function: -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C - -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -import salt.returners.django_return -from django.dispatch import receiver -.sp -@receiver(salt.returners.django_return, sender=returner) -def returner_callback(sender, ret): -.INDENT 0.0 -.INDENT 3.5 -print(\(aqI received {0} from {1}\(aq.format(ret, sender)) -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.returners.django_return.prep_jid(nocache, passed_jid=None) -Do any work necessary to prepare a JID, including sending a custom ID -.UNINDENT -.INDENT 0.0 -.TP -.B salt.returners.django_return.returner(ret) -Signal a Django server that a return is available -.UNINDENT -.INDENT 0.0 -.TP -.B salt.returners.django_return.save_load(jid, load) -Save the load to the specified jid -.UNINDENT .SS salt.returners.elasticsearch_return .sp Return data to an elasticsearch server for indexing. @@ -124321,7 +108689,7 @@ Jurnell Cockhren <\fI\%jurnell.cockhren@sophicware.com\fP> New .TP .B depends -\fI\%elasticsearch\-py\fP, \fI\%jsonpickle\fP +\fI\%elasticsearch\-py\fP .TP .B platform all @@ -124333,35 +108701,14 @@ on the desired minions (all or some subset). The required configuration is as follows: .INDENT 0.0 .INDENT 3.5 -.sp -.nf -.ft C -elasticsearch: - host: \(aqsomehost.example.com:9200\(aq - index: \(aqsalt\(aq - number_of_shards: 1 (optional) - number_of_replicas: 0 (optional) -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -or to specify multiple elasticsearch hosts for resiliency: .INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -elasticsearch: - host: - \- \(aqsomehost.example.com:9200\(aq - \- \(aqanotherhost.example.com:9200\(aq - \- \(aqyetanotherhost.example.com:9200\(aq - index: \(aqsalt\(aq - number_of_shards: 1 (optional) - number_of_replicas: 0 (optional) -.ft P -.fi +.TP +.B elasticsearch: +host: \(aqsomehost.example.com:9200\(aq +index: \(aqsalt\(aq +number_of_shards: 1 (optional) +number_of_replicas: 0 (optional) +.UNINDENT .UNINDENT .UNINDENT .sp @@ -124371,24 +108718,14 @@ master configurations. To use the returner per salt call: .INDENT 0.0 .INDENT 3.5 -.sp -.nf -.ft C salt \(aq*\(aq test.ping \-\-return elasticsearch -.ft P -.fi .UNINDENT .UNINDENT .sp In order to have the returner apply to all minions: .INDENT 0.0 .INDENT 3.5 -.sp -.nf -.ft C ext_job_cache: elasticsearch -.ft P -.fi .UNINDENT .UNINDENT .INDENT 0.0 @@ -124420,7 +108757,7 @@ configuration file: .sp .nf .ft C -my_etcd_config: +my_etd_config: etcd.host: 127.0.0.1 etcd.port: 4001 .ft P @@ -124509,56 +108846,6 @@ Return data to an etcd server or cluster .B salt.returners.etcd_return.save_load(jid, load) Save the load to the specified jid .UNINDENT -.SS salt.returners.kafka_return -.sp -Return data to a Kafka topic -.INDENT 0.0 -.TP -.B maintainer -Christer Edwards (\fI\%christer.edwards@gmail.com\fP) -.TP -.B maturity -0.1 -.TP -.B depends -kafka\-python -.TP -.B platform -all -.UNINDENT -.sp -To enable this returner install kafka\-python and enable the following settings -in the minion config: -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.TP -.B returner.kafka.hostnames: -.INDENT 7.0 -.IP \(bu 2 -"server1" -.IP \(bu 2 -"server2" -.IP \(bu 2 -"server3" -.UNINDENT -.UNINDENT -.sp -returner.kafka.topic: \(aqtopic\(aq -.UNINDENT -.UNINDENT -.sp -To use the kafka returner, append \(aq\-\-return kafka\(aq to the Salt command, eg; -.INDENT 0.0 -.INDENT 3.5 -salt \(aq*\(aq test.ping \-\-return kafka -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.returners.kafka_return.returner(ret) -Return information to a Kafka server -.UNINDENT .SS salt.returners.local .sp The local returner is used to test the returner interface, it just prints the @@ -124575,11 +108862,6 @@ salt \(aq*\(aq test.ping \-\-return local .UNINDENT .INDENT 0.0 .TP -.B salt.returners.local.event_return(event) -Print event return data to the terminal to verify functionality -.UNINDENT -.INDENT 0.0 -.TP .B salt.returners.local.returner(ret) Print the return data to the terminal to verify functionality .UNINDENT @@ -124629,62 +108911,15 @@ Return data to a memcache server .sp To enable this returner the minion will need the python client for memcache installed and the following values configured in the minion or master -config, these are the defaults. +config, these are the defaults: .INDENT 0.0 .INDENT 3.5 -.sp -.nf -.ft C memcache.host: \(aqlocalhost\(aq memcache.port: \(aq11211\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Alternative configuration values can be used by prefacing the configuration. -Any values not found in the alternative configuration will be pulled from -the default location. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -alternative.memcache.host: \(aqlocalhost\(aq -alternative.memcache.port: \(aq11211\(aq -.ft P -.fi .UNINDENT .UNINDENT .sp python2\-memcache uses \(aqlocalhost\(aq and \(aq11211\(aq as syntax on connection. -.sp -To use the memcache returner, append \(aq\-\-return memcache\(aq to the salt command. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq test.ping \-\-return memcache -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -To use the alternative configuration, append \(aq\-\-return_config alternative\(aq to the salt command. -.sp -New in version 2015.2.0. - -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq test.ping \-\-return memcache \-\-return_config alternative -.ft P -.fi -.UNINDENT -.UNINDENT .INDENT 0.0 .TP .B salt.returners.memcache_return.get_fun(fun) @@ -124734,20 +108969,16 @@ Required python modules: pymongo This returner will send data from the minions to a MongoDB server. To configure the settings for your MongoDB server, add the following lines to the minion config files: -.sp -Alternative configuration values can be used by prefacing the configuration. -Any values not found in the alternative configuration will be pulled from -the default location: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C -alternative.mongo.db: -alternative.mongo.host: -alternative.mongo.user: -alternative.mongo.password: -alternative.mongo.port: 27017 +mongo.db: +mongo.host: +mongo.user: +mongo.password: +mongo.port: 27017 .ft P .fi .UNINDENT @@ -124755,31 +108986,14 @@ alternative.mongo.port: 27017 .sp This mongo returner is being developed to replace the default mongodb returner in the future and should not be considered API stable yet. -.sp -To use the mongo returner, append \(aq\-\-return mongo\(aq to the salt command. .INDENT 0.0 .INDENT 3.5 -.sp -.nf -.ft C +To use the mongo returner, append \(aq\-\-return mongo\(aq to the salt command. ex: +.INDENT 0.0 +.INDENT 3.5 salt \(aq*\(aq test.ping \-\-return mongo -.ft P -.fi .UNINDENT .UNINDENT -.sp -To use the alternative configuration, append \(aq\-\-return_config alternative\(aq to the salt command. -.sp -New in version 2015.2.0. - -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq test.ping \-\-return mongo \-\-return_config alternative -.ft P -.fi .UNINDENT .UNINDENT .INDENT 0.0 @@ -124830,62 +109044,21 @@ Required python modules: pymongo .sp This returner will send data from the minions to a MongoDB server. To configure the settings for your MongoDB server, add the following lines -to the minion config files. +to the minion config files: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C -mongo.db: -mongo.host: -mongo.user: -mongo.password: -mongo.port: 27017 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Alternative configuration values can be used by prefacing the configuration. -Any values not found in the alternative configuration will be pulled from -the default location. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -alternative.mongo.db: -alternative.mongo.host: -alternative.mongo.user: -alternative.mongo.password: -alternative.mongo.port: 27017 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -To use the mongo returner, append \(aq\-\-return mongo\(aq to the salt command. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq test.ping \-\-return mongo_return -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -To use the alternative configuration, append \(aq\-\-return_config alternative\(aq to the salt command. -.sp -New in version 2015.2.0. + mongo.db: + mongo.host: + mongo.user: + mongo.password: + mongo.port: 27017 -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq test.ping \-\-return mongo_return \-\-return_config alternative +To use the mongo returner, append \(aq\-\-return mongo\(aq to the salt command. ex: + + salt \(aq*\(aq test.ping \-\-return mongo .ft P .fi .UNINDENT @@ -124990,24 +109163,6 @@ mysql.port: 3306 .UNINDENT .UNINDENT .sp -Alternative configuration values can be used by prefacing the configuration. -Any values not found in the alternative configuration will be pulled from -the default location: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -alternative.mysql.host: \(aqsalt\(aq -alternative.mysql.user: \(aqsalt\(aq -alternative.mysql.pass: \(aqsalt\(aq -alternative.mysql.db: \(aqsalt\(aq -alternative.mysql.port: 3306 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp Use the following mysql database schema: .INDENT 0.0 .INDENT 3.5 @@ -125048,64 +109203,24 @@ CREATE TABLE \(gasalt_returns\(ga ( KEY \(gajid\(ga (\(gajid\(ga), KEY \(gafun\(ga (\(gafun\(ga) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; - -\-\- -\-\- Table structure for table \(gasalt_events\(ga -\-\- - -DROP TABLE IF EXISTS \(gasalt_events\(ga; -CREATE TABLE \(gasalt_events\(ga ( -\(gaid\(ga BIGINT NOT NULL AUTO_INCREMENT, -\(gatag\(ga varchar(255) NOT NULL, -\(gadata\(ga varchar(1024) NOT NULL, -\(gaalter_time\(ga TIMESTAMP DEFAULT CURRENT_TIMESTAMP, -\(gamaster_id\(ga varchar(255) NOT NULL, -PRIMARY KEY (\(gaid\(ga), -KEY \(gatag\(ga (\(gatag\(ga) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; .ft P .fi .UNINDENT .UNINDENT .sp Required python modules: MySQLdb -.sp -To use the mysql returner, append \(aq\-\-return mysql\(aq to the salt command. .INDENT 0.0 .INDENT 3.5 -.sp -.nf -.ft C +To use the mysql returner, append \(aq\-\-return mysql\(aq to the salt command. ex: +.INDENT 0.0 +.INDENT 3.5 salt \(aq*\(aq test.ping \-\-return mysql -.ft P -.fi .UNINDENT .UNINDENT -.sp -To use the alternative configuration, append \(aq\-\-return_config alternative\(aq to the salt command. -.sp -New in version 2015.2.0. - -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq test.ping \-\-return mysql \-\-return_config alternative -.ft P -.fi .UNINDENT .UNINDENT .INDENT 0.0 .TP -.B salt.returners.mysql.event_return(events) -Return event to mysql server -.sp -Requires that configuration be enabled via \(aqevent_return\(aq -option in master config. -.UNINDENT -.INDENT 0.0 -.TP .B salt.returners.mysql.get_fun(fun) Return a dict of the last function called for all minions .UNINDENT @@ -125244,25 +109359,9 @@ returner.odbc.passwd: \(aqsalt\(aq .UNINDENT .UNINDENT .sp -Alternative configuration values can be used by prefacing the configuration. -Any values not found in the alternative configuration will be pulled from -the default location: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -alternative.returner.odbc.dsn: \(aqTS\(aq -alternative.returner.odbc.user: \(aqsalt\(aq -alternative.returner.odbc.passwd: \(aqsalt\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.sp Running the following commands against Microsoft SQL Server in the desired database as the appropriate user should create the database tables -correctly. Replace with equivalent SQL for other ODBC\-compliant servers +correctly. Replace with equivalent SQL for other ODBC\-compliant servers: .INDENT 0.0 .INDENT 3.5 .sp @@ -125301,19 +109400,9 @@ correctly. Replace with equivalent SQL for other ODBC\-compliant servers CREATE INDEX salt_returns_jid on dbo.salt_returns(jid); CREATE INDEX salt_returns_fun on dbo.salt_returns(fun); -To use this returner, append \(aq\-\-return odbc\(aq to the salt command. - -\&.. code\-block:: bash +To use this returner, append \(aq\-\-return odbc\(aq to the salt command. ex: salt \(aq*\(aq status.diskusage \-\-return odbc - -To use the alternative configuration, append \(aq\-\-return_config alternative\(aq to the salt command. - -\&.. versionadded:: 2015.2.0 - -\&.. code\-block:: bash - - salt \(aq*\(aq test.ping \-\-return odbc \-\-return_config alternative .ft P .fi .UNINDENT @@ -125393,24 +109482,6 @@ returner.postgres.port: 5432 .UNINDENT .UNINDENT .sp -Alternative configuration values can be used by prefacing the configuration. -Any values not found in the alternative configuration will be pulled from -the default location: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -alternative.returner.postgres.host: \(aqsalt\(aq -alternative.returner.postgres.user: \(aqsalt\(aq -alternative.returner.postgres.passwd: \(aqsalt\(aq -alternative.returner.postgres.db: \(aqsalt\(aq -alternative.returner.postgres.port: 5432 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp Running the following commands as the postgres user should create the database correctly: .INDENT 0.0 @@ -125458,31 +109529,14 @@ EOF .UNINDENT .sp Required python modules: psycopg2 -.sp -To use the postgres returner, append \(aq\-\-return postgres\(aq to the salt command. .INDENT 0.0 .INDENT 3.5 -.sp -.nf -.ft C +To use the postgres returner, append \(aq\-\-return postgres\(aq to the salt command. ex: +.INDENT 0.0 +.INDENT 3.5 salt \(aq*\(aq test.ping \-\-return postgres -.ft P -.fi .UNINDENT .UNINDENT -.sp -To use the alternative configuration, append \(aq\-\-return_config alternative\(aq to the salt command. -.sp -New in version 2015.2.0. - -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq test.ping \-\-return postgres \-\-return_config alternative -.ft P -.fi .UNINDENT .UNINDENT .INDENT 0.0 @@ -125525,147 +109579,6 @@ Return data to a postgres server .B salt.returners.postgres.save_load(jid, load) Save the load to the specified jid id .UNINDENT -.SS salt.returners.postgres_local_cache -.sp -Use a postgresql server for the master job cache. This helps the job cache to -cope with scale. -.INDENT 0.0 -.TP -.B maintainer -\fI\%gjredelinghuys@gmail.com\fP -.TP -.B maturity -New -.TP -.B depends -psycopg2 -.TP -.B platform -all -.UNINDENT -.sp -To enable this returner the minion will need the psycopg2 installed and -the following values configured in the master config: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -master_job_cache: postgres_local_cache -master_job_cache.postgres.host: \(aqsalt\(aq -master_job_cache.postgres.user: \(aqsalt\(aq -master_job_cache.postgres.passwd: \(aqsalt\(aq -master_job_cache.postgres.db: \(aqsalt\(aq -master_job_cache.postgres.port: 5432 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Running the following command as the postgres user should create the database -correctly: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -psql << EOF -CREATE ROLE salt WITH PASSWORD \(aqsalt\(aq; -CREATE DATABASE salt WITH OWNER salt; -EOF -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -and then: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -psql \-h localhost \-U salt << EOF -\-\- -\-\- Table structure for table \(aqjids\(aq -\-\- - -DROP TABLE IF EXISTS jids; -CREATE TABLE jids ( - jid varchar(20) PRIMARY KEY, - started TIMESTAMP WITH TIME ZONE DEFAULT now(), - tgt_type text NOT NULL, - cmd text NOT NULL, - tgt text NOT NULL, - kwargs text NOT NULL, - ret text NOT NULL, - username text NOT NULL, - arg text NOT NULL, - fun text NOT NULL -); - -\-\- -\-\- Table structure for table \(aqsalt_returns\(aq -\-\- - -DROP TABLE IF EXISTS salt_returns; -CREATE TABLE salt_returns ( - added TIMESTAMP WITH TIME ZONE DEFAULT now(), - fun text NOT NULL, - jid varchar(20) NOT NULL, - return text NOT NULL, - id text NOT NULL, - success boolean -); -CREATE INDEX ON salt_returns (added); -CREATE INDEX ON salt_returns (id); -CREATE INDEX ON salt_returns (jid); -CREATE INDEX ON salt_returns (fun); -EOF -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Required python modules: psycopg2 -.INDENT 0.0 -.TP -.B salt.returners.postgres_local_cache.clean_old_jobs() -Clean out the old jobs from the job cache -.UNINDENT -.INDENT 0.0 -.TP -.B salt.returners.postgres_local_cache.get_jid(jid) -Return the information returned when the specified job id was executed -.UNINDENT -.INDENT 0.0 -.TP -.B salt.returners.postgres_local_cache.get_jids() -Return a list of all job ids -For master job cache this also formats the output and returns a string -.UNINDENT -.INDENT 0.0 -.TP -.B salt.returners.postgres_local_cache.get_load(jid) -Return the load data that marks a specified jid -.UNINDENT -.INDENT 0.0 -.TP -.B salt.returners.postgres_local_cache.prep_jid(nocache=False, passed_jid=None) -Return a job id and prepare the job id directory -This is the function responsible for making sure jids don\(aqt collide -(unless its passed a jid). So do what you have to do to make sure that -stays the case -.UNINDENT -.INDENT 0.0 -.TP -.B salt.returners.postgres_local_cache.returner(load) -Return data to a postgres server -.UNINDENT -.INDENT 0.0 -.TP -.B salt.returners.postgres_local_cache.save_load(jid, clear_load) -Save the load to the specified jid id -.UNINDENT .SS salt.returners.redis_return .sp Return data to a redis server @@ -125675,57 +109588,20 @@ installed and the following values configured in the minion or master config, these are the defaults: .INDENT 0.0 .INDENT 3.5 -.sp -.nf -.ft C +.INDENT 0.0 +.INDENT 3.5 redis.db: \(aq0\(aq redis.host: \(aqsalt\(aq redis.port: 6379 -.ft P -.fi .UNINDENT .UNINDENT .sp -Alternative configuration values can be used by prefacing the configuration. -Any values not found in the alternative configuration will be pulled from -the default location: +To use the redis returner, append \(aq\-\-return redis\(aq to the salt command. ex: .INDENT 0.0 .INDENT 3.5 -.sp -.nf -.ft C -alternative.redis.db: \(aq0\(aq -alternative.redis.host: \(aqsalt\(aq -alternative.redis.port: 6379 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -To use the redis returner, append \(aq\-\-return redis\(aq to the salt command. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C salt \(aq*\(aq test.ping \-\-return redis -.ft P -.fi .UNINDENT .UNINDENT -.sp -To use the alternative configuration, append \(aq\-\-return_config alternative\(aq to the salt command. -.sp -New in version 2015.2.0. - -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq test.ping \-\-return redis \-\-return_config alternative -.ft P -.fi .UNINDENT .UNINDENT .INDENT 0.0 @@ -125773,7 +109649,7 @@ Save the load to the specified jid Salt returner that report execution results back to sentry. The returner will inspect the payload to identify errors and flag them as such. .sp -Pillar needs something like: +Pillar need something like: .INDENT 0.0 .INDENT 3.5 .sp @@ -125811,60 +109687,6 @@ Do any work necessary to prepare a JID, including sending a custom id Log outcome to sentry. The returner tries to identify errors and report them as such. All other messages will be reported at info level. .UNINDENT -.SS salt.returners.sms_return -.sp -Return data by SMS. -.sp -New in version 2015.2.0. - -.INDENT 0.0 -.TP -.B maintainer -Damian Myerscough -.TP -.B maturity -new -.TP -.B depends -twilio -.TP -.B platform -all -.UNINDENT -.sp -To enable this returner the minion will need the python twilio library -installed and the following values configured in the minion or master -config: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -twilio.sid: \(aqXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\(aq -twilio.token: \(aqXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\(aq -twilio.to: \(aq+1415XXXXXXX\(aq -twilio.from: \(aq+1650XXXXXXX\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -To use the sms returner, append \(aq\-\-return sms\(aq to the salt command. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq test.ping \-\-return sms -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.returners.sms_return.returner(ret) -Return a response in an SMS message -.UNINDENT .SS salt.returners.smtp_return .sp Return salt data via email @@ -125890,29 +109712,6 @@ smtp.fields (optional) .UNINDENT .UNINDENT .sp -Alternative configuration values can be used by prefacing the configuration. -Any values not found in the alternative configuration will be pulled from -the default location: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -alternative.smtp.from -alternative.smtp.to -alternative.smtp.host -alternative.smtp.port -alternative.smtp.username -alternative.smtp.password -alternative.smtp.tls -alternative.smtp.subject -alternative.smtp.gpgowner -alternative.smtp.fields -.ft P -.fi -.UNINDENT -.UNINDENT -.sp There are a few things to keep in mind: .INDENT 0.0 .IP \(bu 2 @@ -125946,10 +109745,9 @@ subject line. You may also use \(aqjid\(aq (the job id), but it is generally recommended not to use \(aqreturn\(aq, which contains the entire return data structure (which can be very large). Also note that the subject is always unencrypted. -.UNINDENT .sp -To use the SMTP returner, append \(aq\-\-return smtp\(aq to the salt command. -.INDENT 0.0 +To use the SMTP returner, append \(aq\-\-return smtp\(aq to the salt command. ex: +.INDENT 2.0 .INDENT 3.5 .sp .nf @@ -125959,20 +109757,6 @@ salt \(aq*\(aq test.ping \-\-return smtp .fi .UNINDENT .UNINDENT -.sp -To use the alternative configuration, append \(aq\-\-return_config alternative\(aq to the salt command. -.sp -New in version 2015.2.0. - -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq test.ping \-\-return smtp \-\-return_config alternative -.ft P -.fi -.UNINDENT .UNINDENT .INDENT 0.0 .TP @@ -126020,78 +109804,40 @@ returner.sqlite3.timeout: 5.0 .UNINDENT .UNINDENT .sp -Alternative configuration values can be used by prefacing the configuration. -Any values not found in the alternative configuration will be pulled from -the default location: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -alternative.returner.sqlite3.database: /usr/lib/salt/salt.db -alternative.returner.sqlite3.timeout: 5.0 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp Use the commands to create the sqlite3 database and tables: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C -sqlite3 /usr/lib/salt/salt.db << EOF -\-\- -\-\- Table structure for table \(aqjids\(aq -\-\- + sqlite3 /usr/lib/salt/salt.db << EOF + \-\- + \-\- Table structure for table \(aqjids\(aq + \-\- -CREATE TABLE jids ( - jid TEXT PRIMARY KEY, - load TEXT NOT NULL - ); + CREATE TABLE jids ( + jid TEXT PRIMARY KEY, + load TEXT NOT NULL + ); -\-\- -\-\- Table structure for table \(aqsalt_returns\(aq -\-\- + \-\- + \-\- Table structure for table \(aqsalt_returns\(aq + \-\- -CREATE TABLE salt_returns ( - fun TEXT KEY, - jid TEXT KEY, - id TEXT KEY, - fun_args TEXT, - date TEXT NOT NULL, - full_ret TEXT NOT NULL, - success TEXT NOT NULL - ); -EOF -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -To use the sqlite returner, append \(aq\-\-return sqlite3\(aq to the salt command. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq test.ping \-\-return sqlite3 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -To use the alternative configuration, append \(aq\-\-return_config alternative\(aq to the salt command. -.sp -New in version 2015.2.0. + CREATE TABLE salt_returns ( + fun TEXT KEY, + jid TEXT KEY, + id TEXT KEY, + fun_args TEXT, + date TEXT NOT NULL, + full_ret TEXT NOT NULL, + success TEXT NOT NULL + ); + EOF -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq test.ping \-\-return sqlite3 \-\-return_config alternative +To use the sqlite returner, append \(aq\-\-return sqlite\(aq to the salt command. ex: + + salt \(aq*\(aq test.ping \-\-return sqlite .ft P .fi .UNINDENT @@ -126145,15 +109891,10 @@ Required python modules: syslog, json The syslog returner simply reuses the operating system\(aqs syslog facility to log return data .sp -To use the syslog returner, append \(aq\-\-return syslog\(aq to the salt command. +To use the syslog returner, append \(aq\-\-return syslog\(aq to the salt command. ex: .INDENT 0.0 .INDENT 3.5 -.sp -.nf -.ft C salt \(aq*\(aq test.ping \-\-return syslog -.ft P -.fi .UNINDENT .UNINDENT .INDENT 0.0 @@ -126166,137 +109907,12 @@ Do any work necessary to prepare a JID, including sending a custom id .B salt.returners.syslog_return.returner(ret) Return data to the local syslog .UNINDENT -.SS salt.returners.xmpp_return -.sp -Return salt data via xmpp -.sp -The following fields can be set in the minion conf file: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -xmpp.jid (required) -xmpp.password (required) -xmpp.recipient (required) -xmpp.profile (optional) -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Alternative configuration values can be used by prefacing the configuration. -Any values not found in the alternative configuration will be pulled from -the default location: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -xmpp.jid -xmpp.password -xmpp.recipient -xmpp.profile -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -XMPP settings may also be configured as: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -xmpp: - jid: user@xmpp.domain.com/resource - password: password - recipient: user@xmpp.example.com - -alternative.xmpp: - jid: user@xmpp.domain.com/resource - password: password - recipient: someone@xmpp.example.com - -xmpp_profile: - jid: user@xmpp.domain.com/resource - password: password - -xmpp: - profile: xmpp_profile - recipient: user@xmpp.example.com - -alternative.xmpp: - profile: xmpp_profile - recipient: someone\-else@xmpp.example.com -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -To use the XMPP returner, append \(aq\-\-return xmpp\(aq to the salt command. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq test.ping \-\-return xmpp -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -To use the alternative configuration, append \(aq\-\-return_config alternative\(aq to the salt command. -.sp -New in version 2015.2.0. - -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq test.ping \-\-return xmpp \-\-return_config alternative -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B class salt.returners.xmpp_return.SendMsgBot(jid, password, recipient, msg) -.INDENT 7.0 -.TP -.B start(event) -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.returners.xmpp_return.returner(ret) -Send an xmpp message with the data -.UNINDENT .SS Full list of builtin roster modules .TS center; |l|l|. _ T{ -\fBansible\fP -T} T{ -Read in an Ansible inventory file or script -T} -_ -T{ -\fBcache\fP -T} T{ -Use the minion cache on the master to derive IP addresses based on minion ID. -T} -_ -T{ -\fBcloud\fP -T} T{ -Use the cloud cache on the master to derive IPv4 addresses based on minion ID. -T} -_ -T{ \fBflat\fP T} T{ Read in the roster from a flat file using the renderer system @@ -126309,195 +109925,6 @@ Scan a netmask or ipaddr for open ssh ports T} _ .TE -.SS salt.roster.ansible -.sp -Read in an Ansible inventory file or script -.sp -Flat inventory files should be in the regular ansible inventory format. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -[servers] -salt.gtmanfred.com ansible_ssh_user=gtmanfred ansible_ssh_host=127.0.0.1 ansible_ssh_port=22 ansible_ssh_pass=\(aqpassword\(aq - -[desktop] -home ansible_ssh_user=gtmanfred ansible_ssh_host=12.34.56.78 ansible_ssh_port=23 ansible_ssh_pass=\(aqpassword\(aq - -[computers:children] -desktop -servers - -[names:vars] -http_port=80 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -then salt\-ssh can be used to hit any of them -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -[~]# salt\-ssh all test.ping -salt.gtmanfred.com: - True -home: - True -[~]# salt\-ssh desktop test.ping -home: - True -[~]# salt\-ssh computers test.ping -salt.gtmanfred.com: - True -home: - True -[~]# salt\-ssh salt.gtmanfred.com test.ping -salt.gtmanfred.com: - True -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -There is also the option of specifying a dynamic inventory, and generating it on the fly -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -#!/bin/bash -echo \(aq{ - "servers": { - "hosts": [ - "salt.gtmanfred.com" - ] - }, - "desktop": { - "hosts": [ - "home" - ] - }, - "computers": { - "hosts":{}, - "children": [ - "desktop", - "servers" - ] - }, - "_meta": { - "hostvars": { - "salt.gtmanfred.com": { - "ansible_ssh_user": "gtmanfred", - "ansible_ssh_host": "127.0.0.1", - "ansible_sudo_pass": "password", - "ansible_ssh_port": 22 - }, - "home": { - "ansible_ssh_user": "gtmanfred", - "ansible_ssh_host": "12.34.56.78", - "ansible_sudo_pass": "password", - "ansible_ssh_port": 23 - } - } - } -}\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -This is the format that an inventory script needs to output to work with ansible, and thus here. -.sp -Any of the [groups] or direct hostnames will return. The \(aqall\(aq is special, and returns everything. -.INDENT 0.0 -.TP -.B class salt.roster.ansible.Inventory(tgt, tgt_type=\(aqglob\(aq, inventory_file=\(aq/etc/salt/roster\(aq) -Matcher for static inventory files -.UNINDENT -.INDENT 0.0 -.TP -.B class salt.roster.ansible.Script(tgt, tgt_type=\(aqglob\(aq, inventory_file=\(aq/etc/salt/roster\(aq) -Matcher for Inventory scripts -.UNINDENT -.INDENT 0.0 -.TP -.B class salt.roster.ansible.Target -.INDENT 7.0 -.TP -.B get_glob() -Return minions that match via glob -.UNINDENT -.INDENT 7.0 -.TP -.B targets() -Execute the correct tgt_type routine and return -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.roster.ansible.targets(tgt, tgt_type=\(aqglob\(aq, **kwargs) -Return the targets from the ansible inventory_file -Default: /etc/salt/roster -.UNINDENT -.SS salt.roster.cache -.sp -Use the minion cache on the master to derive IP addresses based on minion ID. -.sp -Currently only contains logic to return an IPv4 address; does not handle IPv6, -or authentication (passwords, keys, etc). -.sp -It is possible to configure this roster to prefer a particular type of IP over -another. To configure the order, set the roster_order in the master config -file. The default for this is: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -roster_order: - \- public - \- private - \- local -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.roster.cache.extract_ipv4(roster_order, ipv4) -Extract the preferred IP address from the ipv4 grain -.UNINDENT -.INDENT 0.0 -.TP -.B salt.roster.cache.targets(tgt, tgt_type=\(aqglob\(aq, **kwargs) -Return the targets from the flat yaml file, checks opts for location but -defaults to /etc/salt/roster -.UNINDENT -.SS salt.roster.cloud -.sp -Use the cloud cache on the master to derive IPv4 addresses based on minion ID. -.sp -This roster requires that the minion in question was created using at least the -2015.2.0 version of Salt Cloud. Starting with the 2015.2.0 release, Salt Cloud -maintains an index of minions that it creates and deletes. This index tracks the -provider and profile configuration used to provision the minion, including -authentication information. So long as this configuration remains current, it can -be used by Salt SSH to log into any minion in the index. -.INDENT 0.0 -.TP -.B salt.roster.cloud.extract_ipv4(roster_order, ipv4) -Extract the preferred IP address from the ipv4 grain -.UNINDENT -.INDENT 0.0 -.TP -.B salt.roster.cloud.targets(tgt, tgt_type=\(aqglob\(aq, **kwargs) -Return the targets from the flat yaml file, checks opts for location but -defaults to /etc/salt/roster -.UNINDENT .SS salt.roster.flat .sp Read in the roster from a flat file using the renderer system @@ -126591,24 +110018,12 @@ A runner module to collect and display the inline documentation from the T} _ T{ -\fBdrac\fP -T} T{ -Manage Dell DRAC from the Master -T} -_ -T{ \fBerror\fP T} T{ Error generator to enable integration testing of salt runner error handling T} _ T{ -\fBf5\fP -T} T{ -Runner to provide F5 Load Balancer functionality -T} -_ -T{ \fBfileserver\fP T} T{ Directly manage the Salt fileserver plugins @@ -126621,12 +110036,6 @@ Directly manage the salt git_pillar plugin T} _ T{ -\fBhttp\fP -T} T{ -Module for making various web calls. -T} -_ -T{ \fBjobs\fP T} T{ A convenience system to manage jobs, both active and already run @@ -126663,12 +110072,6 @@ Network tools to run from the Master T} _ T{ -\fBpagerduty\fP -T} T{ -Runner Module for Firing Events via PagerDuty -T} -_ -T{ \fBpillar\fP T} T{ Functions to interact with the pillar compiler on the master @@ -126681,12 +110084,6 @@ General management and processing of queues. T} _ T{ -\fBsdb\fP -T} T{ -Runner for setting and querying data via the sdb API on the master -T} -_ -T{ \fBsearch\fP T} T{ Runner frontend to search system @@ -126705,12 +110102,6 @@ A general map/reduce style salt runner for aggregating results returned by sever T} _ T{ -\fBtest\fP -T} T{ -This runner is used only for test purposes and servers no production purpose -T} -_ -T{ \fBthin\fP T} T{ The thin runner is used to manage the salt thin systems. @@ -126785,7 +110176,7 @@ salt\-run cache.clear_mine .UNINDENT .INDENT 0.0 .TP -.B salt.runners.cache.clear_mine_func(tgt=None, expr_form=\(aqglob\(aq, clear_mine_func_flag=None) +.B salt.runners.cache.clear_mine_func(tgt=None, expr_form=\(aqglob\(aq, clear_mine_func=None) Clear the cached mine function data of the targeted minions .sp CLI Example: @@ -126819,7 +110210,7 @@ salt\-run cache.clear_pillar .UNINDENT .INDENT 0.0 .TP -.B salt.runners.cache.grains(tgt=None, expr_form=\(aqglob\(aq, outputter=None, **kwargs) +.B salt.runners.cache.grains(tgt=None, expr_form=\(aqglob\(aq, **kwargs) Return cached grains of the targeted minions .sp CLI Example: @@ -126836,7 +110227,7 @@ salt\-run cache.grains .UNINDENT .INDENT 0.0 .TP -.B salt.runners.cache.mine(tgt=None, expr_form=\(aqglob\(aq, outputter=None, **kwargs) +.B salt.runners.cache.mine(tgt=None, expr_form=\(aqglob\(aq, **kwargs) Return cached mine data of the targeted minions .sp CLI Example: @@ -126853,7 +110244,7 @@ salt\-run cache.mine .UNINDENT .INDENT 0.0 .TP -.B salt.runners.cache.pillar(tgt=None, expr_form=\(aqglob\(aq, outputter=None, **kwargs) +.B salt.runners.cache.pillar(tgt=None, expr_form=\(aqglob\(aq, **kwargs) Return cached pillars of the targeted minions .sp CLI Example: @@ -126889,7 +110280,7 @@ CLI Example: .sp .nf .ft C -salt\-run cloud.create my\-ec2\-config myinstance image=ami\-1624987f size=\(aqt1.micro\(aq ssh_username=ec2\-user securitygroup=default delvol_on_destroy=True +salt\-run cloud.create my\-ec2\-config myinstance image=ami\-1624987f size=\(aqMicro Instance\(aq ssh_username=ec2\-user securitygroup=default delvol_on_destroy=True .ft P .fi .UNINDENT @@ -126927,21 +110318,9 @@ Execute a salt cloud map file .UNINDENT .INDENT 0.0 .TP -.B salt.runners.cloud.profile(prof=None, instances=None, **kwargs) -Create a cloud vm with the given profile and instances, instances can be a -list or comma\-delimited string -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-run cloud.profile prof=my\-ec2 instances=node1,node2,node3 -.ft P -.fi -.UNINDENT -.UNINDENT +.B salt.runners.cloud.profile(prof, instances, **kwargs) +Create a cloud vm with the given profile and instances, instances can be a list +or comma delimited string .UNINDENT .INDENT 0.0 .TP @@ -127008,102 +110387,6 @@ salt\-run doc.wheel .UNINDENT .UNINDENT .UNINDENT -.SS salt.runners.drac -.sp -Manage Dell DRAC from the Master -.sp -The login credentials need to be configured in the Salt master -configuration file. -.INDENT 0.0 -.INDENT 3.5 -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.drac.poweroff(hostname, timeout=20) -Power server off -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-run drac.poweroff example.com -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.drac.poweron(hostname, timeout=20) -Power server on -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-run drac.poweron example.com -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.drac.pxe(hostname, timeout=20) -Connect to the Dell DRAC and have the boot order set to PXE -and power cycle the system to PXE boot -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-run drac.pxe example.com -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.drac.reboot(hostname, timeout=20) -Reboot a server using the Dell DRAC -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-run drac.reboot example.com -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.drac.version(hostname, timeout=20) -Display the version of DRAC -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-run drac.version example.com -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.runners.error .sp Error generator to enable integration testing of salt runner error handling @@ -127127,179 +110410,6 @@ salt\-run error.error name="Exception" message="This is an error." .UNINDENT .UNINDENT .UNINDENT -.SS salt.runners.f5 -.sp -Runner to provide F5 Load Balancer functionality -.INDENT 0.0 -.TP -.B depends -.INDENT 7.0 -.IP \(bu 2 -pycontrol Python module -.UNINDENT -.TP -.B configuration -In order to connect to a F5 Load Balancer, you must specify -in the Salt master configuration the currently avilable load balancers -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -load_balancers: - bigip1.example.com - username: admin - password: secret - bigip2.example.com: - username: admin - password: secret -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B class salt.runners.f5.F5Mgmt(lb, username, password) -.INDENT 7.0 -.TP -.B add_pool_member(name, port, pool_name) -Add a node to a pool -.UNINDENT -.INDENT 7.0 -.TP -.B check_member_pool(member, pool_name) -Check a pool member exists in a specific pool -.UNINDENT -.INDENT 7.0 -.TP -.B check_pool(name) -Check to see if a pool exists -.UNINDENT -.INDENT 7.0 -.TP -.B check_virtualserver(name) -Check to see if a virtual server exists -.UNINDENT -.INDENT 7.0 -.TP -.B create_pool(name, method=\(aqROUND_ROBIN\(aq) -Create a pool on the F5 load balancer -.UNINDENT -.INDENT 7.0 -.TP -.B create_vs(name, ip, port, protocol, profile, pool_name) -Create a virtual server -.UNINDENT -.INDENT 7.0 -.TP -.B lbmethods() -List all the load balancer methods -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.f5.add_pool_member(lb, name, port, pool_name) -Add a node to a pool -.sp -CLI Examples: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-run f5.add_pool_member load_balancer 10.0.0.1 80 my_pool -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.f5.check_member_pool(lb, member, pool_name) -Check a pool member exists in a specific pool -.sp -CLI Examples: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-run f5.check_member_pool load_balancer 10.0.0.1 my_pool -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.f5.check_pool(lb, name) -Check to see if a pool exists -.sp -CLI Examples: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-run f5.check_pool load_balancer pool_name -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.f5.check_virtualserver(lb, name) -Check to see if a virtual server exists -.sp -CLI Examples: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-run f5.check_virtualserver load_balancer virtual_server -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.f5.create_pool(lb, name, method=\(aqROUND_ROBIN\(aq) -Create a pool on the F5 load balancer -.sp -CLI Examples: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-run f5.create_pool load_balancer pool_name loadbalance_method -salt\-run f5.create_pool load_balancer my_pool ROUND_ROBIN -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.f5.create_vs(lb, name, ip, port, protocol, profile, pool_name) -Create a virtual server -.sp -CLI Examples: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-run f5.create_vs lbalancer vs_name 10.0.0.1 80 tcp http poolname -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.runners.fileserver .sp Directly manage the Salt fileserver plugins @@ -127376,7 +110486,7 @@ salt\-run fileserver.clear_lock remote=bitbucket .UNINDENT .INDENT 0.0 .TP -.B salt.runners.fileserver.dir_list(saltenv=\(aqbase\(aq, backend=None, outputter=None) +.B salt.runners.fileserver.dir_list(saltenv=\(aqbase\(aq, backend=None, outputter=\(aqnested\(aq) Return a list of directories in the given environment .INDENT 7.0 .TP @@ -127414,7 +110524,7 @@ salt\-run fileserver.dir_list \-git .UNINDENT .INDENT 0.0 .TP -.B salt.runners.fileserver.empty_dir_list(saltenv=\(aqbase\(aq, backend=None, outputter=None) +.B salt.runners.fileserver.empty_dir_list(saltenv=\(aqbase\(aq, backend=None, outputter=\(aqnested\(aq) New in version 2015.2.0. .sp @@ -127460,7 +110570,7 @@ salt\-run fileserver.empty_dir_list backend=roots .UNINDENT .INDENT 0.0 .TP -.B salt.runners.fileserver.envs(backend=None, sources=False, outputter=None) +.B salt.runners.fileserver.envs(backend=None, sources=False, outputter=\(aqnested\(aq) Return the available fileserver environments. If no backend is provided, then the environments for all configured backends will be returned. .INDENT 7.0 @@ -127487,6 +110597,7 @@ CLI Example: .nf .ft C salt\-run fileserver.envs +salt\-run fileserver.envs outputter=nested salt\-run fileserver.envs backend=roots,git salt\-run fileserver.envs git .ft P @@ -127496,7 +110607,7 @@ salt\-run fileserver.envs git .UNINDENT .INDENT 0.0 .TP -.B salt.runners.fileserver.file_list(saltenv=\(aqbase\(aq, backend=None, outputter=None) +.B salt.runners.fileserver.file_list(saltenv=\(aqbase\(aq, backend=None, outputter=\(aqnested\(aq) Return a list of files from the salt fileserver .INDENT 7.0 .TP @@ -127579,7 +110690,7 @@ salt\-run fileserver.lock remote=bitbucket .UNINDENT .INDENT 0.0 .TP -.B salt.runners.fileserver.symlink_list(saltenv=\(aqbase\(aq, backend=None, outputter=None) +.B salt.runners.fileserver.symlink_list(saltenv=\(aqbase\(aq, backend=None, outputter=\(aqnested\(aq) Return a list of symlinked files and dirs .INDENT 7.0 .TP @@ -127670,82 +110781,12 @@ salt\-run git_pillar.update branch=\(aqbranch\(aq repo=\(aqlocation\(aq .UNINDENT .UNINDENT .UNINDENT -.SS salt.runners.http -.sp -Module for making various web calls. Primarily designed for webhooks and the -like, but also useful for basic http testing. -.sp -New in version 2015.2. - -.INDENT 0.0 -.TP -.B salt.runners.http.query(url, output=True, **kwargs) -Query a resource, and decode the return data -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-run http.query http://somelink.com/ -salt\-run http.query http://somelink.com/ method=POST params=\(aqkey1=val1&key2=val2\(aq -salt\-run http.query http://somelink.com/ method=POST data=\(aqsomecontent\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.http.update_ca_bundle(target=None, source=None, merge_files=None) -Update the local CA bundle file from a URL -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-run http.update_ca_bundle -salt\-run http.update_ca_bundle target=/path/to/cacerts.pem -salt\-run http.update_ca_bundle source=https://example.com/cacerts.pem -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -If the \fBtarget\fP is not specified, it will be pulled from the \fBca_cert\fP -configuration variable available to the master. If it cannot be found there, -it will be placed at \fB<>/cacerts.pem\fP\&. -.sp -If the \fBsource\fP is not specified, it will be pulled from the -\fBca_cert_url\fP configuration variable available to the master. If it cannot -be found, it will be downloaded from the cURL website, using an http (not -https) URL. USING THE DEFAULT URL SHOULD BE AVOIDED! -.sp -\fBmerge_files\fP may also be specified, which includes a string or list of -strings representing a file or files to be appended to the end of the CA -bundle, once it is downloaded. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-run http.update_ca_bundle merge_files=/path/to/mycert.pem -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.runners.jobs .sp A convenience system to manage jobs, both active and already run .INDENT 0.0 .TP -.B salt.runners.jobs.active(outputter=None, display_progress=False) +.B salt.runners.jobs.active() Return a report on all actively running jobs from a job id centric perspective .sp @@ -127763,7 +110804,7 @@ salt\-run jobs.active .UNINDENT .INDENT 0.0 .TP -.B salt.runners.jobs.list_job(jid, ext_source=None, outputter=None) +.B salt.runners.jobs.list_job(jid, ext_source=None) List a specific job given by its jid .sp CLI Example: @@ -127780,7 +110821,7 @@ salt\-run jobs.list_job 20130916125524463507 .UNINDENT .INDENT 0.0 .TP -.B salt.runners.jobs.list_jobs(ext_source=None, outputter=None, search_metadata=None, search_function=None, search_target=None, display_progress=False) +.B salt.runners.jobs.list_jobs(ext_source=None) List all detectable jobs and associated functions .sp CLI Example: @@ -127797,26 +110838,8 @@ salt\-run jobs.list_jobs .UNINDENT .INDENT 0.0 .TP -.B salt.runners.jobs.lookup_jid(jid, ext_source=None, missing=False, outputter=None, display_progress=False) +.B salt.runners.jobs.lookup_jid(jid, ext_source=None, missing=False) Return the printout from a previously executed job -.INDENT 7.0 -.TP -.B jid -The jid to look up. -.TP -.B ext_source -The external job cache to use. Default: \fINone\fP\&. -.TP -.B missing -When set to \fITrue\fP, adds the minions that did not return from the command. -Default: \fIFalse\fP\&. -.TP -.B display_progress -Displays progress events when set to \fITrue\fP\&. Default: \fIFalse\fP\&. -.sp -New in version 2015.2.0. - -.UNINDENT .sp CLI Example: .INDENT 7.0 @@ -127825,7 +110848,6 @@ CLI Example: .nf .ft C salt\-run jobs.lookup_jid 20130916125524463507 -salt\-run jobs.lookup_jid 20130916125524463507 outputter=highstate .ft P .fi .UNINDENT @@ -127833,8 +110855,8 @@ salt\-run jobs.lookup_jid 20130916125524463507 outputter=highstate .UNINDENT .INDENT 0.0 .TP -.B salt.runners.jobs.print_job(jid, ext_source=None, outputter=None) -Print a specific job\(aqs detail given by it\(aqs jid, including the return data. +.B salt.runners.jobs.print_job(jid, ext_source=None) +Print job available details, including return data. .sp CLI Example: .INDENT 7.0 @@ -127842,7 +110864,7 @@ CLI Example: .sp .nf .ft C -salt\-run jobs.print_job 20130916125524463507 +salt\-run jobs.print_job .ft P .fi .UNINDENT @@ -127954,12 +110976,11 @@ Initialize a new container .ft C salt\-run lxc.init name host=minion_id [cpuset=cgroups_cpuset] \e [cpushare=cgroups_cpushare] [memory=cgroups_memory] \e - [template=lxc_template_name] [clone=original name] \e - [profile=lxc_profile] [network_proflile=network_profile] \e - [nic=network_profile] [nic_opts=nic_opts] \e - [start=(true|false)] [seed=(true|false)] \e - [install=(true|false)] [config=minion_config] \e - [snapshot=(true|false)] + [template=lxc template name] [clone=original name] \e + [nic=nic_profile] [profile=lxc_profile] \e + [nic_opts=nic_opts] [start=(true|false)] \e + [seed=(true|false)] [install=(true|false)] \e + [config=minion_config] [snapshot=(true|false)] .ft P .fi .UNINDENT @@ -127971,7 +110992,7 @@ Name of the containers, supports a single name or a comma delimited list of names. .TP .B host -Minion on which to initialize the container \fB(required)\fP +Minion to start the container on. Required. .TP .B saltcloud_mode init the container with the saltcloud opts format instead @@ -127984,12 +111005,7 @@ cgroups cpuset. cgroups cpu shares. .TP .B memory -cgroups memory limit, in MB -.sp -Changed in version 2015.2.0: If no value is passed, no limit is set. In earlier Salt versions, -not passing this value causes a 1024MB memory limit to be set, and -it was necessary to pass \fBmemory=0\fP to set no limit. - +cgroups memory limit, in MB. .TP .B template Name of LXC template on which to base this container @@ -127997,21 +111013,14 @@ Name of LXC template on which to base this container .B clone Clone this container from an existing container .TP +.B nic +Network interfaces profile (defined in config or pillar). +.TP .B profile A LXC profile (defined in config or pillar). -.TP -.B network_profile -Network profile to use for the container -.sp -New in version 2015.2.0. - -.TP -.B nic -Deprecated since version 2015.2.0: Use \fBnetwork_profile\fP instead - .TP .B nic_opts -Extra options for network interfaces. E.g.: +Extra options for network interfaces. E.g: .sp \fB{"eth0": {"mac": "aa:bb:cc:dd:ee:ff", "ipv4": "10.1.1.1", "ipv6": "2001:db8::ff00:42:8329"}}\fP .TP @@ -128126,7 +111135,7 @@ Git tag of version to install Script to execute .TP .B hosts -Comma\-separated hosts [example: hosts=\(aqhost1.local,host2.local\(aq] +Comma separated hosts [example: hosts="host1.local,host2.local"] .TP .B root_user True @@ -128139,10 +111148,10 @@ CLI Example: .sp .nf .ft C -salt\-run manage.bootstrap hosts=\(aqhost1,host2\(aq -salt\-run manage.bootstrap hosts=\(aqhost1,host2\(aq version=\(aqv0.17\(aq -salt\-run manage.bootstrap hosts=\(aqhost1,host2\(aq version=\(aqv0.17\(aq script=\(aqhttps://bootstrap.saltstack.com/develop\(aq -salt\-run manage.bootstrap hosts=\(aqec2\-user@host1,ec2\-user@host2\(aq root_user=False +salt\-run manage.bootstrap hosts="host1,host2" +salt\-run manage.bootstrap hosts="host1,host2" version="v0.17" +salt\-run manage.bootstrap hosts="host1,host2" version="v0.17" script="https://bootstrap.saltstack.com/develop" +salt\-run manage.bootstrap hosts="ec2\-user@host1,ec2\-user@host2" root_user=False .ft P .fi .UNINDENT @@ -128245,37 +111254,9 @@ salt\-run manage.key_regen .UNINDENT .INDENT 0.0 .TP -.B salt.runners.manage.not_present(subset=None, show_ipv4=False) -Print a list of all minions that are NOT up according to Salt\(aqs presence -detection (no commands will be sent) -.INDENT 7.0 -.TP -.B subset -None -Pass in a CIDR range to filter minions by IP address. -.TP -.B show_ipv4 -False -Also show the IP address each minion is connecting from. -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-run manage.not_present -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.runners.manage.present(subset=None, show_ipv4=False) Print a list of all minions that are up according to Salt\(aqs presence -detection (no commands will be sent) +detection, no commands will be sent .INDENT 7.0 .TP .B subset @@ -128373,7 +111354,7 @@ salt\-run manage.versions A runner to access data from the salt mine .INDENT 0.0 .TP -.B salt.runners.mine.get(tgt, fun, tgt_type=\(aqglob\(aq, output=None) +.B salt.runners.mine.get(tgt, fun, tgt_type=\(aqglob\(aq, output=\(aqyaml\(aq) Gathers the data from the specified minions\(aq mine, pass in the target, function to look up and the target type .sp @@ -128431,166 +111412,6 @@ salt\-run network.wollist \(aq/path/to/maclist\(aq 255.255.255.255 7 .UNINDENT .UNINDENT .UNINDENT -.SS salt.runners.pagerduty -.sp -Runner Module for Firing Events via PagerDuty -.sp -New in version 2014.1.0. - -.INDENT 0.0 -.TP -.B configuration -This module can be used by specifying the name of a -configuration profile in the master config. -.sp -For example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -my\-pagerduty\-account: - pagerduty.api_key: F3Rbyjbve43rfFWf2214 - pagerduty.subdomain: mysubdomain -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.pagerduty.create_event(service_key=None, description=None, details=None, incident_key=None, profile=None) -Create an event in PagerDuty. Designed for use in states. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt\-run pagerduty.create_event
profile=my\-pagerduty\-account -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The following parameters are required: -.INDENT 7.0 -.TP -.B service_key -This key can be found by using pagerduty.list_services. -.TP -.B description -This is a short description of the event. -.TP -.B details -This can be a more detailed description of the event. -.TP -.B profile -This refers to the configuration profile to use to connect to the -PagerDuty service. -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.pagerduty.list_escalation_policies(profile=None, api_key=None) -List escalation policies belonging to this account -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -salt\-run pagerduty.list_policies my\-pagerduty\-account -salt\-run pagerduty.list_escalation_policies my\-pagerduty\-account -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.pagerduty.list_incidents(profile=None, api_key=None) -List incidents belonging to this account -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -salt\-run pagerduty.list_incidents my\-pagerduty\-account -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.pagerduty.list_maintenance_windows(profile=None, api_key=None) -List maintenance windows belonging to this account -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -salt\-run pagerduty.list_windows my\-pagerduty\-account -salt\-run pagerduty.list_maintenance_windows my\-pagerduty\-account -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.pagerduty.list_policies(profile=None, api_key=None) -List escalation policies belonging to this account -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -salt\-run pagerduty.list_policies my\-pagerduty\-account -salt\-run pagerduty.list_escalation_policies my\-pagerduty\-account -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.pagerduty.list_schedules(profile=None, api_key=None) -List schedules belonging to this account -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -salt\-run pagerduty.list_schedules my\-pagerduty\-account -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.pagerduty.list_services(profile=None, api_key=None) -List services belonging to this account -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -salt\-run pagerduty.list_services my\-pagerduty\-account -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.pagerduty.list_users(profile=None, api_key=None) -List users belonging to this account -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -salt\-run pagerduty.list_users my\-pagerduty\-account -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.pagerduty.list_windows(profile=None, api_key=None) -List maintenance windows belonging to this account -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -salt\-run pagerduty.list_windows my\-pagerduty\-account -salt\-run pagerduty.list_maintenance_windows my\-pagerduty\-account -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.runners.pillar .sp Functions to interact with the pillar compiler on the master @@ -128784,13 +111605,8 @@ Return a list of Salt Queues on the backend CLI Example: .INDENT 7.0 .INDENT 3.5 -.sp -.nf -.ft C salt\-run queue.list_queues salt\-run queue.list_queues backend=sqlite -.ft P -.fi .UNINDENT .UNINDENT .UNINDENT @@ -128835,46 +111651,6 @@ salt\-run queue.process_queue myqueue all backend=sqlite .UNINDENT .UNINDENT .UNINDENT -.SS salt.runners.sdb -.sp -Runner for setting and querying data via the sdb API on the master -.INDENT 0.0 -.TP -.B salt.runners.sdb.get(uri) -Get a value from a db, using a uri in the form of sdb:///. If -the uri provided does not start with sdb://, then it will be returned as\-is. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sdb.get sdb://mymemcached/foo -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.sdb.set_(uri, value) -Set a value in a db, using a uri in the form of \fBsdb:///\fP\&. -If the uri provided does not start with \fBsdb://\fP or the value is not -successfully set, return \fBFalse\fP\&. -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \(aq*\(aq sdb.set sdb://mymemcached/foo bar -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.runners.search .sp Runner frontend to search system @@ -129092,20 +111868,6 @@ Changed in version 2014.1.1: Runner renamed from \fBstate.sls\fP to \fBstate.orc .sp Changed in version 2014.7.0: Runner uses the pillar variable -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.state.orchestrate_high(data, test=None, queue=False, pillar=None, **kwargs) -versionadded:: 2015.2 -.sp -Execute a single state orchestration routine -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.state.orchestrate_single(fun, name, test=None, queue=False, pillar=None, **kwargs) -versionadded:: 2015.2 -.sp -Execute a single state orchestration routine .UNINDENT .INDENT 0.0 .TP @@ -129261,36 +112023,6 @@ salt\-run survey.hash "*" file.get_hash /etc/salt/minion survey_sort=up .UNINDENT .UNINDENT .UNINDENT -.SS salt.runners.test -.sp -This runner is used only for test purposes and servers no production purpose -.INDENT 0.0 -.TP -.B salt.runners.test.arg(*args, **kwargs) -Output the given args and kwargs -.sp -Kwargs will be filtered for \(aqprivate\(aq keynames. -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.test.raw_arg(*args, **kwargs) -Output the given args and kwargs -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.test.sleep(s_time=10) -Sleep t seconds, then return True -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.test.stdout_print() -Print \(aqfoo\(aq and return \(aqbar\(aq -.UNINDENT -.INDENT 0.0 -.TP -.B salt.runners.test.stream() -Return True -.UNINDENT .SS salt.runners.thin .sp The thin runner is used to manage the salt thin systems. @@ -129624,7 +112356,7 @@ The mod_aggregate function just needs to accept three parameters and return the low data to use. Since mod_aggregate is working on the state runtime level it does need to manipulate \fIlow data\fP\&. .sp -The three parameters are \fIlow\fP, \fIchunks\fP, and \fIrunning\fP\&. The \fIlow\fP option is the +The three parameters are \fIlow\fP, \fIchunks\fP and \fIrunning\fP\&. The \fIlow\fP option is the low data for the state execution which is about to be called. The \fIchunks\fP is the list of all of the low data dictionaries which are being executed by the runtime and the \fIrunning\fP dictionary is the return data from all of the state @@ -129838,7 +112570,8 @@ likely still be necessary to run a \fBservice.restart\fP\&. .UNINDENT .SS Deleting .sp -Deleting backups can be done using \fBfile.delete_backup\fP: +Deleting backups can be done using mod:\fIfile.delete_backup +\fP: .INDENT 0.0 .INDENT 3.5 .sp @@ -131144,7 +113877,7 @@ Often when setting up states any single action will require or depend on another action. Salt allows for the building of relationships between states with requisite statements. A requisite statement ensures that the named state is evaluated before the state requiring it. There are three types of requisite -statements in Salt, \fBrequire\fP, \fBwatch\fP, and \fBprereq\fP\&. +statements in Salt, \fBrequire\fP, \fBwatch\fP and \fBprereq\fP\&. .sp These requisite statements are applied to a specific state declaration: .INDENT 0.0 @@ -131173,7 +113906,7 @@ executing them before the state that requires them. Then the required states can be evaluated to see if they have executed correctly. .sp Require statements can refer to any state defined in Salt. The basic examples -are \fIpkg\fP, \fIservice\fP, and \fIfile\fP, but any used state can be referenced. +are \fIpkg\fP, \fIservice\fP and \fIfile\fP, but any used state can be referenced. .sp In addition to state declarations such as pkg, file, etc., \fBsls\fP type requisites are also recognized, and essentially allow \(aqchaining\(aq of states. This provides a @@ -131199,7 +113932,7 @@ httpd: .UNINDENT .sp In this example, the httpd service running state will not be applied -(i.e., the httpd service will not be started) unless both the httpd package is +(i.e., the httpd service will not be started) unless both the https package is installed AND the network state is satisfied. .sp \fBNOTE:\fP @@ -131246,7 +113979,7 @@ httpd: .UNINDENT .sp In this example, the httpd service is only going to be started if the package, -user, group, and file are executed successfully. +user, group and file are executed successfully. .SS Requisite Documentation .sp For detailed information on each of the individual requisites, \fIplease @@ -131437,12 +114170,6 @@ Solaris\-based OSes using \fBpkgadd(1M)\fP T} _ T{ -solarisips -T} T{ -Solaris\-based OSes using IPS \fBpkg(1)\fP -T} -_ -T{ win_pkg T} T{ Windows @@ -132143,27 +114870,6 @@ exist (returns \fBFalse\fP). The state will run if both commands return \fBFalse\fP\&. .sp However, the state will not run if both commands return \fBTrue\fP\&. -.sp -Unless requisites are resolved for each name to which they are associated. -.sp -For example: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -deploy_app: - cmd.run: - \- first_deploy_cmd - \- second_deploy_cmd - \- unless: some_check -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -In the above case, \fBsome_check\fP will be run prior to _each_ name \-\- once for -\fBfirst_deploy_cmd\fP and a second time for \fBsecond_deploy_cmd\fP\&. .SS Onlyif .sp New in version 2014.7.0. @@ -132182,7 +114888,7 @@ stop\-volume: \- name: glusterfs.stop_volume \- m_name: work \- onlyif: - \- gluster volume status work + \- gluster volume status work \- order: 1 remove\-volume: @@ -132190,7 +114896,7 @@ remove\-volume: \- name: glusterfs.delete \- m_name: work \- onlyif: - \- gluster volume info work + \- gluster volume info work \- watch: \- cmd: stop\-volume .ft P @@ -132200,61 +114906,6 @@ remove\-volume: .sp The above example ensures that the stop_volume and delete modules only run if the gluster commands return a 0 ret value. -.SS Listen/Listen_in -.sp -New in version 2014.7.0. - -.sp -listen and its counterpart listen_in trigger mod_wait functions for states, -when those states succeed and result in changes, similar to how watch its -counterpart watch_in. Unlike watch and watch_in, listen, and listen_in will -not modify the order of states and can be used to ensure your states are -executed in the order they are defined. All listen/listen_in actions will occur -at the end of a state run, after all states have completed. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -restart\-apache2: - service.running: - \- name: apache2 - \- listen: - \- file: /etc/apache2/apache2.conf - -configure\-apache2: - file.managed: - \- path: /etc/apache2/apache2.conf - \- source: salt://apache2/apache2.conf -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -This example will cause apache2 to be restarted when the apache2.conf file is -changed, but the apache2 restart will happen at the end of the state run. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -restart\-apache2: - service.running: - \- name: apache2 - -configure\-apache2: - file.managed: - \- path: /etc/apache2/apache2.conf - \- source: salt://apache2/apache2.conf - \- listen_in: - \- service: apache2 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -This example does the same as the above example, but puts the state argument -on the file resource, rather than the service resource. .SS check_cmd .sp New in version 2014.7.0. @@ -132273,7 +114924,7 @@ comment\-repo: \- pattern: ^enabled=0 \- repl: enabled=1 \- check_cmd: - \- grep \(aqenabled=0\(aq /etc/yum.repos.d/fedora.repo && return 1 || return 0 + \- grep \(aqenabled=0\(aq /etc/yum.repos.d/fedora.repo && return 1 || return 0 .ft P .fi .UNINDENT @@ -132290,12 +114941,12 @@ declaring the function succeeded. .sp There are two commands used for the above checks. .sp -\fBmod_run_check\fP is used to check for \fBonlyif\fP and \fBunless\fP\&. If the goal is to -override the global check for these to variables, include a \fBmod_run_check\fP in the +\fImod_run_check\fP is used to check for onlyif and unless. If the goal is to +override the global check for these to variables, include a mod_run_check in the salt/states/ file. .sp -\fBmod_run_check_cmd\fP is used to check for the check_cmd options. To override -this one, include a \fBmod_run_check_cmd\fP in the states file for the state. +\fImod_run_check_cmd\fP is used to check for the check_cmd options. To override +this one, include a mod_run_check_cmd in the states file for the state. .SS Startup States .sp Sometimes it may be desired that the salt minion execute a state run when it is @@ -132303,7 +114954,7 @@ started. This alleviates the need for the master to initiate a state run on a new minion and can make provisioning much easier. .sp As of Salt 0.10.3 the minion config reads options that allow for states to be -executed at startup. The options are \fIstartup_states\fP, \fIsls_list\fP, and +executed at startup. The options are \fIstartup_states\fP, \fIsls_list\fP and \fItop_file\fP\&. .sp The \fIstartup_states\fP option can be passed one of a number of arguments to @@ -132405,7 +115056,7 @@ environments. \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 -Environments in Salt are very flexible. This section defines how the top +Environments in Salt are very flexible, this section defines how the top file can be used to define what states from what environments are to be used for specific minions. .sp @@ -132586,7 +115237,7 @@ file_roots: .UNINDENT .UNINDENT .sp -Then only place state trees in the dev, qa, and prod environments, leaving +Then only place state trees in the dev, qa and prod environments, leaving the base environment open for generic file transfers. Then the top.sls file would look something like this: .INDENT 0.0 @@ -132664,7 +115315,7 @@ base: .UNINDENT .UNINDENT .sp -In this example \fBtop.sls\fP, all minions get the ldap\-client, networking, and +In this example \fBtop.sls\fP, all minions get the ldap\-client, networking and salt.minion states. Any minion with an id matching the \fBsalt\-master*\fP glob will get the salt.master state. Any minion with ids matching the regular expression \fB^(memcache|web).(qa|prod).loc$\fP will get the nagios.mon.web and @@ -133010,7 +115661,7 @@ illustrate: .UNINDENT .UNINDENT .sp -Therefore this SLS data can be directly linked to a module, function, and +Therefore this SLS data can be directly linked to a module, function and arguments passed to that function. .sp This does issue the burden, that function names, state names and function @@ -133218,7 +115869,7 @@ human_friendly_state_id: # An arbitrary state ID declaration. .ft C import salt.exceptions -def enforce_custom_thing(name, foo, bar=True): +def enforce_custom_thing(name, foo, baz=True): \(aq\(aq\(aq Enforce the state of a custom thing @@ -133237,9 +115888,9 @@ def enforce_custom_thing(name, foo, bar=True): # Start with basic error\-checking. Do all the passed parameters make sense # and agree with each\-other? - if bar == True and foo.startswith(\(aqFoo\(aq): + if baz == True and foo.startswith(\(aqFoo\(aq): raise salt.exceptions.SaltInvocationError( - \(aqArgument "foo" cannot start with "Foo" if argument "bar" is True.\(aq) + \(aqArgument "foo" cannot start with "Foo" if argument "baz" is True.\(aq) # Check the current state of the system. Does anything need to change? current_state = __salt__[\(aqmy_custom_module.current_state\(aq](name) @@ -133670,12 +116321,6 @@ Extract an archive T} _ T{ -\fBartifactory\fP -T} T{ -This state downloads artifacts from artifactory. -T} -_ -T{ \fBat\fP T} T{ Configuration disposable regularly scheduled tasks for at. @@ -133712,12 +116357,6 @@ Manage Cloudwatch alarms T} _ T{ -\fBboto_dynamodb\fP -T} T{ -Manage DynamoDB Tables -T} -_ -T{ \fBboto_elasticache\fP T} T{ Manage Elasticache @@ -133732,7 +116371,7 @@ _ T{ \fBboto_iam_role\fP T} T{ -Manage IAM roles +Manage IAM roles. T} _ T{ @@ -133754,24 +116393,12 @@ Manage Security Groups T} _ T{ -\fBboto_sns\fP -T} T{ -Manage SNS Topics -T} -_ -T{ \fBboto_sqs\fP T} T{ Manage SQS Queues T} _ T{ -\fBchef\fP -T} T{ -Execute Chef client runs -T} -_ -T{ \fBcloud\fP T} T{ Using states instead of maps to deploy clouds @@ -133796,12 +116423,6 @@ Management of cron, the Unix command scheduler T} _ T{ -\fBcyg\fP -T} T{ -Installation of Cygwin packages. -T} -_ -T{ \fBddns\fP T} T{ Dynamic DNS updates @@ -133826,12 +116447,6 @@ Manage Docker containers T} _ T{ -\fBdrac\fP -T} T{ -Management of Dell DRAC -T} -_ -T{ \fBenviron\fP T} T{ Support for getting and setting the environment variables of the current salt process. @@ -133880,12 +116495,6 @@ Configuration of the GNOME desktop T} _ T{ -\fBgrafana\fP -T} T{ -Manage Grafana Dashboards -T} -_ -T{ \fBgrains\fP T} T{ Manage grains on the minion @@ -133904,12 +116513,6 @@ Interaction with Mercurial repositories T} _ T{ -\fBhipchat\fP -T} T{ -Send a message to Hipchat -T} -_ -T{ \fBhost\fP T} T{ Management of addresses and names in hosts file @@ -133922,12 +116525,6 @@ Support for htpasswd module T} _ T{ -\fBhttp\fP -T} T{ -HTTP monitoring states -T} -_ -T{ \fBincron\fP T} T{ Management of incron, the inotify cron @@ -133964,12 +116561,6 @@ Management of iptables T} _ T{ -\fBjboss7\fP -T} T{ -Manage JBoss 7 Application Server via CLI interface -T} -_ -T{ \fBkeyboard\fP T} T{ Management of keyboard layouts @@ -134000,12 +116591,6 @@ Manage libvirt certificates T} _ T{ -\fBlinux_acl\fP -T} T{ -Linux File Access Control Lists -T} -_ -T{ \fBlocale\fP T} T{ Management of languages/locales @@ -134032,7 +116617,7 @@ _ T{ \fBlxc\fP T} T{ -Manage Linux Containers +lxc / Spin up and control LXC containers T} _ T{ @@ -134210,12 +116795,6 @@ Management of PostgreSQL groups (roles) T} _ T{ -\fBpostgres_schema\fP -T} T{ -Management of PostgreSQL schemas -T} -_ -T{ \fBpostgres_user\fP T} T{ Management of PostgreSQL users (roles) @@ -134240,12 +116819,6 @@ Managing python installations with pyenv T} _ T{ -\fBpyrax_queues\fP -T} T{ -Manage Rackspace Queues -T} -_ -T{ \fBquota\fP T} T{ Management of POSIX Quotas @@ -134342,24 +116915,12 @@ Starting or restarting of services and daemons T} _ T{ -\fBslack\fP -T} T{ -Send a message to Slack -T} -_ -T{ \fBsmtp\fP T} T{ Sending Messages via SMTP T} _ T{ -\fBsplunk_search\fP -T} T{ -Splunk Search State Module -T} -_ -T{ \fBssh_auth\fP T} T{ Control of entries in SSH authorized_key files @@ -134402,17 +116963,6 @@ Configuration of the Linux kernel using sysctl T} _ T{ -\fBsyslog_ng\fP -T} T{ -State module for syslog_ng -T} -_ -T{ -\fBsysrc\fP -T} T{ -T} -_ -T{ \fBtest\fP T} T{ Test States @@ -134437,12 +116987,6 @@ Management of user accounts T} _ T{ -\fBvbox_guest\fP -T} T{ -VirtualBox Guest Additions installer state -T} -_ -T{ \fBvirtualenv_mod\fP T} T{ Setup of Python virtualenv sandboxes @@ -134516,8 +117060,7 @@ T} _ .TE .SS salt.states.alias -.sp -Configuration of email aliases +.SS Configuration of email aliases .sp The mail aliases file can be managed to contain definitions for specific email aliases: @@ -134534,18 +117077,6 @@ username: .UNINDENT .UNINDENT .INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -thomas: - alias.present: - \- target: thomas@example.com -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 .TP .B salt.states.alias.absent(name) Ensure that the named alias is absent @@ -134572,8 +117103,7 @@ The forwarding address .UNINDENT .UNINDENT .SS salt.states.alternatives -.sp -Configuration of the alternatives system +.SS Configuration of the alternatives system .sp Control the alternatives system .INDENT 0.0 @@ -134727,8 +117257,7 @@ the above word between angle brackets (<>). .B salt.states.apache.configfile(name, config) .UNINDENT .SS salt.states.apache_module -.sp -Manage Apache Modules +.SS Manage Apache Modules .sp New in version 2014.7.0. @@ -134790,7 +117319,7 @@ New in version 2014.1.0. .INDENT 0.0 .TP -.B salt.states.archive.extracted(name, source, archive_format, archive_user=None, tar_options=None, source_hash=None, if_missing=None, keep=False) +.B salt.states.archive.extracted(name, source, archive_format, tar_options=None, source_hash=None, if_missing=None, keep=False) New in version 2014.1.0. .sp @@ -134834,7 +117363,6 @@ graylog2\-server: \- source: https://github.com/downloads/Graylog2/graylog2\-server/graylog2\-server\-0.9.6p1.tar.gz \- source_hash: md5=499ae16dcae71eeb7c3a30c75ea7a1a6 \- archive_format: tar - \- tar_options: v \- if_missing: /opt/graylog2\-server\-0.9.6p1/ .ft P .fi @@ -134855,9 +117383,6 @@ It uses the same syntax as the file.managed source_hash argument. .B archive_format tar, zip or rar .TP -.B archive_user: -user to extract files as -.TP .B if_missing Some archives, such as tar, extract themselves in a subfolder. This directive can be used to validate if the archive had been @@ -134869,97 +117394,15 @@ It needs to be the tar argument specific to the archive being extracted, such as \(aqJ\(aq for LZMA or \(aqv\(aq to verbosely list files processed. Using this option means that the tar executable on the target will be used, which is less platform independent. -Main operators like \-x, \-\-extract, \-\-get, \-c and \-f/\-\-file -\fBshould not be used\fP here. -If \fBarchive_format\fP is \fBzip\fP or \fBrar\fP and this option is not set, -then the Python tarfile module is used. The tarfile module supports gzip -and bz2 in Python 2. +Main operators like \-x, \-\-extract, \-\-get, \-c, etc. and \-f/\-\-file are +\fBshoult not be used\fP here. +If this option is not set, then the Python tarfile module is used. +The tarfile module supports gzip and bz2 in Python 2. .TP .B keep Keep the archive in the minion\(aqs cache .UNINDENT .UNINDENT -.SS salt.states.jboss7 -.sp -This state downloads artifacts from artifactory. -.INDENT 0.0 -.TP -.B salt.states.artifactory.downloaded(name, artifact, target_dir=\(aq/tmp\(aq, target_file=None) -Ensures that the artifact from artifactory exists at given location. If it doesn\(aqt exist, then -it will be downloaded. It it already exists then the checksum of existing file is checked against checksum -in artifactory. If it is different then the step will fail. -.INDENT 7.0 -.TP -.B artifact: -.INDENT 7.0 -.TP -.B Details of the artifact to be downloaded from artifactory. -.INDENT 7.0 -.IP \(bu 2 -artifactory_url: URL of the artifactory instance -.IP \(bu 2 -repository: Repository in artifactory -.IP \(bu 2 -artifact_id: Artifact ID -.IP \(bu 2 -group_id: Group ID -.IP \(bu 2 -packaging: Packaging -.IP \(bu 2 -version: Version -.UNINDENT -.UNINDENT -.TP -.B target_dir: -Directory where the artifact should be downloaded. By default it is downloaded to /tmp directory. -.TP -.B target_file: -Target file to download artifact to. By default file name is resolved by artifactory. -.UNINDENT -.sp -Example:: -Download artifact to a specific file: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -jboss_module_downloaded: - artifactory.downloaded: - \- artifact: - artifactory_url: http://artifactory.intranet.company.com/artifactory - repository: \(aqlibs\-release\-local\(aq - artifact_id: \(aqmodule\(aq - group_id: \(aqcom.company.module\(aq - packaging: \(aqjar\(aq - version: \(aq1.0\(aq - \- target_file: /opt/jboss7/modules/com/company/lib/module.jar -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Download artifact to the folder (automatically resolves file name): -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -jboss_module_downloaded: - artifactory.downloaded: - \- artifact: - artifactory_url: http://artifactory.intranet.company.com/artifactory - repository: \(aqlibs\-release\-local\(aq - artifact_id: \(aqmodule\(aq - group_id: \(aqcom.company.module\(aq - packaging: \(aqjar\(aq - version: \(aq1.0\(aq - \- target_dir: /opt/jboss7/modules/com/company/lib -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.states.at .SS Configuration disposable regularly scheduled tasks for at. .sp @@ -135037,7 +117480,7 @@ example4: .UNINDENT .INDENT 0.0 .TP -.B salt.states.at.present(name, timespec, tag=None, user=None, job=None) +.B salt.states.at.present(name, timespec, tag=None, runas=None, user=None, job=None) Add a job to queue. .INDENT 7.0 .TP @@ -135049,6 +117492,12 @@ The \(aqtimespec\(aq follows the format documented in the at(1) manpage. .TP .B tag Make a tag for the job. +.TP +.B runas +Users run the job. +.sp +Deprecated since version 2014.1.4. + .TP .B user The user to run the at job @@ -135073,8 +117522,7 @@ rose: .UNINDENT .UNINDENT .SS salt.states.augeas -.sp -Configuration management using Augeas +.SS Configuration management using Augeas .sp New in version 0.17.0. @@ -135113,7 +117561,7 @@ known to resolve the issue. New in version 2014.7.0. .sp -This state replaces \fBsetvalue()\fP\&. +This state replaces \fI\%setvalue()\fP\&. .sp Issue changes to Augeas, optionally for a specific context, with a specific lens. @@ -135264,9 +117712,16 @@ every time this state is run. .UNINDENT .UNINDENT .UNINDENT -.SS salt.states.aws_sqs +.INDENT 0.0 +.TP +.B salt.states.augeas.setvalue(name, prefix=None, changes=None, **kwargs) +Deprecated since version 2014.7.0: Use \fI\%change()\fP instead. + .sp -Manage SQS Queues +Set a value for a specific augeas path +.UNINDENT +.SS salt.states.aws_sqs +.SS Manage SQS Queues .sp Create and destroy SQS queues. Be aware that this interacts with Amazon\(aqs services, and so may incur charges. @@ -135325,8 +117780,7 @@ Include additional arguments and options to the aws command line .UNINDENT .UNINDENT .SS salt.states.blockdev -.sp -Management of Block Devices +.SS Management of Block Devices .sp A state module to manage blockdevices .INDENT 0.0 @@ -135347,9 +117801,6 @@ master\-data: .fi .UNINDENT .UNINDENT -.sp -New in version 2014.7.0. - .INDENT 0.0 .TP .B salt.states.blockdev.formatted(name, fs_type=\(aqext4\(aq, **kwargs) @@ -135445,15 +117896,13 @@ It\(aqs also possible to specify key, keyid and region via a profile, either as a passed in dict, or as a string to pull from pillars or minion config: .INDENT 0.0 .INDENT 3.5 -.sp -.nf -.ft C -myprofile: - keyid: GKTADJGHEIQSXMKKRBJ08H - key: askdjghsdfjkghWupUjasdflkdfklgjsdfjajkghs - region: us\-east\-1 -.ft P -.fi +.INDENT 0.0 +.TP +.B myprofile: +keyid: GKTADJGHEIQSXMKKRBJ08H +key: askdjghsdfjkghWupUjasdflkdfklgjsdfjajkghs +region: us\-east\-1 +.UNINDENT .UNINDENT .UNINDENT .INDENT 0.0 @@ -135531,110 +117980,6 @@ Ensure myasg is deleted: .fi .UNINDENT .UNINDENT -.sp -It\(aqs possible to specify cloudwatch alarms that will be setup along with the -ASG. Note the alarm name will be the name attribute defined, plus the ASG -resource name. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -Ensure myasg exists: - boto_asg.present: - \- name: myasg - \- launch_config_name: mylc - \- availability_zones: - \- us\-east\-1a - \- us\-east\-1b - \- min_size: 1 - \- max_size: 1 - \- desired_capacity: 1 - \- load_balancers: - \- myelb - \- profile: myprofile - \- alarms: - CPU: - name: \(aqASG CPU **MANAGED BY SALT**\(aq - attributes: - metric: CPUUtilization - namespace: AWS/EC2 - statistic: Average - comparison: \(aq>=\(aq - threshold: 65.0 - period: 60 - evaluation_periods: 30 - unit: null - description: \(aqASG CPU\(aq - alarm_actions: [ \(aqarn:aws:sns:us\-east\-1:12345:myalarm\(aq ] - insufficient_data_actions: [] - ok_actions: [ \(aqarn:aws:sns:us\-east\-1:12345:myalarm\(aq ] -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -You can also use alarms from pillars, and override values from the pillar -alarms by setting overrides on the resource. Note that \(aqboto_asg_alarms\(aq -will be used as a default value for all resources, if defined and can be -used to ensure alarms are always set for an ASG resource. -.sp -Setting the alarms in a pillar: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -my_asg_alarm: - CPU: - name: \(aqASG CPU **MANAGED BY SALT**\(aq - attributes: - metric: CPUUtilization - namespace: AWS/EC2 - statistic: Average - comparison: \(aq>=\(aq - threshold: 65.0 - period: 60 - evaluation_periods: 30 - unit: null - description: \(aqASG CPU\(aq - alarm_actions: [ \(aqarn:aws:sns:us\-east\-1:12345:myalarm\(aq ] - insufficient_data_actions: [] - ok_actions: [ \(aqarn:aws:sns:us\-east\-1:12345:myalarm\(aq ] -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Overriding the alarm values on the resource: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -Ensure myasg exists: - boto_asg.present: - \- name: myasg - \- launch_config_name: mylc - \- availability_zones: - \- us\-east\-1a - \- us\-east\-1b - \- min_size: 1 - \- max_size: 1 - \- desired_capacity: 1 - \- load_balancers: - \- myelb - \- profile: myprofile - \- alarms_from_pillar: my_asg_alarm - # override CPU:attributes:threshold - \- alarms: - CPU: - attributes: - threshold: 50.0 -.ft P -.fi -.UNINDENT -.UNINDENT .INDENT 0.0 .TP .B salt.states.boto_asg.absent(name, force=False, region=None, key=None, keyid=None, profile=None) @@ -135663,7 +118008,7 @@ that contains a dict with region, key and keyid. .UNINDENT .INDENT 0.0 .TP -.B salt.states.boto_asg.present(name, launch_config_name, availability_zones, min_size, max_size, launch_config=None, desired_capacity=None, load_balancers=None, default_cooldown=None, health_check_type=None, health_check_period=None, placement_group=None, vpc_zone_identifier=None, tags=None, termination_policies=None, suspended_processes=None, scaling_policies=None, alarms=None, alarms_from_pillar=\(aqboto_asg_alarms\(aq, region=None, key=None, keyid=None, profile=None) +.B salt.states.boto_asg.present(name, launch_config_name, availability_zones, min_size, max_size, launch_config=None, desired_capacity=None, load_balancers=None, default_cooldown=None, health_check_type=None, health_check_period=None, placement_group=None, vpc_zone_identifier=None, tags=None, termination_policies=None, suspended_processes=None, scaling_policies=None, region=None, key=None, keyid=None, profile=None) Ensure the autoscale group exists. .INDENT 7.0 .TP @@ -135746,16 +118091,6 @@ List of processes to be suspended. see List of scaling policies. Each policy is a dict of key\-values described by \fI\%http://boto.readthedocs.org/en/latest/ref/autoscale.html#boto.ec2.autoscale.policy.ScalingPolicy\fP .TP -.B alarms: -a dictionary of name\->boto_cloudwatch_alarm sections to be associated with this ASG. -All attributes should be specified except for dimension which will be -automatically set to this ASG. -See the boto_cloudwatch_alarm state for information about these attributes. -.TP -.B alarms_from_pillar: -name of pillar dict that contains alarm settings. Alarms defined for this specific -state will override those from pillar. -.TP .B region The region to connect to. .TP @@ -135771,8 +118106,7 @@ that contains a dict with region, key and keyid. .UNINDENT .UNINDENT .SS salt.states.boto_cloudwatch_alarm -.sp -Manage Cloudwatch alarms +.SS Manage Cloudwatch alarms .sp New in version 2014.7.0. @@ -135893,238 +118227,8 @@ A dict with region, key and keyid, or a pillar key (string) that contains a dict with region, key and keyid. .UNINDENT .UNINDENT -.SS salt.states.boto_dynamodb -.SS Manage DynamoDB Tables -.sp -New in version 2015.2. - -.sp -Create and destroy DynamoDB tables. Be aware that this interacts with Amazon\(aqs -services, and so may incur charges. -.sp -This module uses \fBboto\fP, which can be installed via package, or pip. -.sp -This module accepts explicit DynamoDB credentials but can also utilize -IAM roles assigned to the instance through Instance Profiles. Dynamic -credentials are then automatically obtained from AWS API and no further -configuration is necessary. More information available \fI\%here\fP\&. -.sp -If IAM roles are not used you need to specify them either in a pillar file or -in the minion\(aqs config file: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -keyid: GKTADJGHEIQSXMKKRBJ08H -key: askdjghsdfjkghWupUjasdflkdfklgjsdfjajkghs -region: us\-east\-1 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -It\(aqs also possible to specify \fBkey\fP, \fBkeyid\fP and \fBregion\fP via a -profile, either passed in as a dict, or as a string to pull from -pillars or minion config: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -myprofile: - keyid: GKTADJGHEIQSXMKKRBJ08H - key: askdjghsdfjkghWupUjasdflkdfklgjsdfjajkghs - region: us\-east\-1 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C - -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B Ensure DynamoDB table does not exist: -.INDENT 7.0 -.TP -.B boto_dynamodb.absent: -.INDENT 7.0 -.IP \(bu 2 -table_name: new_table -.IP \(bu 2 -keyid: GKTADJGHEIQSXMKKRBJ08H -.IP \(bu 2 -key: askdjghsdfjkghWupUjasdflkdfklgjsdfjajkghs -.IP \(bu 2 -region: us\-east\-1 -.UNINDENT -.UNINDENT -.TP -.B Ensure DynamoDB table exists: -.INDENT 7.0 -.TP -.B boto_dynamodb.present: -.INDENT 7.0 -.IP \(bu 2 -table_name: new_table -.IP \(bu 2 -read_capacity_units: 1 -.IP \(bu 2 -write_capacity_units: 2 -.IP \(bu 2 -hash_key: primary_id -.IP \(bu 2 -hash_key_data_type: N -.IP \(bu 2 -range_key: start_timestamp -.IP \(bu 2 -range_key_data_type: N -.IP \(bu 2 -keyid: GKTADJGHEIQSXMKKRBJ08H -.IP \(bu 2 -key: askdjghsdfjkghWupUjasdflkdfklgjsdfjajkghs -.IP \(bu 2 -region: us\-east\-1 -.IP \(bu 2 -.INDENT 2.0 -.TP -.B local_indexes: -.INDENT 7.0 -.IP \(bu 2 -.INDENT 2.0 -.TP -.B index: -.INDENT 7.0 -.IP \(bu 2 -name: "primary_id_end_timestamp_index" -.IP \(bu 2 -hash_key: primary_id -.IP \(bu 2 -hash_key_data_type: N -.IP \(bu 2 -range_key: end_timestamp -.IP \(bu 2 -range_key_data_type: N -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.IP \(bu 2 -.INDENT 2.0 -.TP -.B global_indexes: -.INDENT 7.0 -.IP \(bu 2 -.INDENT 2.0 -.TP -.B index: -.INDENT 7.0 -.IP \(bu 2 -name: "name_end_timestamp_index" -.IP \(bu 2 -hash_key: name -.IP \(bu 2 -hash_key_data_type: S -.IP \(bu 2 -range_key: end_timestamp -.IP \(bu 2 -range_key_data_type: N -.IP \(bu 2 -read_capacity_units: 3 -.IP \(bu 2 -write_capacity_units: 4 -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.boto_dynamodb.absent(table_name, region=None, key=None, keyid=None, profile=None) -Ensure the DynamoDB table does not exist. -.INDENT 7.0 -.TP -.B table_name -Name of the DynamoDB table. -.TP -.B region -Region to connect to. -.TP -.B key -Secret key to be used. -.TP -.B keyid -Access key to be used. -.TP -.B profile -A dict with region, key and keyid, or a pillar key (string) -that contains a dict with region, key and keyid. -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.boto_dynamodb.present(table_name, region=None, key=None, keyid=None, profile=None, read_capacity_units=None, write_capacity_units=None, hash_key=None, hash_key_data_type=None, range_key=None, range_key_data_type=None, local_indexes=None, global_indexes=None) -Ensure the DynamoDB table exists. Note: all properties of the table -can only be set during table creation. Adding or changing -indexes or key schema cannot be done after table creation -.INDENT 7.0 -.TP -.B table_name -Name of the DynamoDB table -.TP -.B region -Region to connect to. -.TP -.B key -Secret key to be used. -.TP -.B keyid -Access key to be used. -.TP -.B profile -A dict with region, key and keyid, or a pillar key (string) -that contains a dict with region, key and keyid. -.TP -.B read_capacity_units -The read throughput for this table -.TP -.B write_capacity_units -The write throughput for this table -.TP -.B hash_key -The name of the attribute that will be used as the hash key -for this table -.TP -.B hash_key_data_type -The DynamoDB datatype of the hash key -.TP -.B range_key -The name of the attribute that will be used as the range key -for this table -.TP -.B range_key_data_type -The DynamoDB datatype of the range key -.TP -.B local_indexes -The local indexes you would like to create -.TP -.B global_indexes -The local indexes you would like to create -.UNINDENT -.UNINDENT .SS salt.states.boto_elasticache -.sp -Manage Elasticache +.SS Manage Elasticache .sp New in version 2014.7.0. @@ -136332,8 +118436,7 @@ that contains a dict with region, key and keyid. .UNINDENT .UNINDENT .SS salt.states.boto_elb -.sp -Manage ELBs +.SS Manage ELBs .sp New in version 2014.7.0. @@ -136372,7 +118475,7 @@ passed in as a dict, or as a string to pull from pillars or minion config: myprofile: keyid: GKTADJGHEIQSXMKKRBJ08H key: askdjghsdfjkghWupUjasdflkdfklgjsdfjajkghs - region: us\-east\-1 + region: us\-east\-1 .ft P .fi .UNINDENT @@ -136386,10 +118489,6 @@ Ensure myelb ELB exists: boto_elb.present: \- name: myelb \- region: us\-east\-1 - \- availability_zones: - \- us\-east\-1a - \- us\-east\-1c - \- us\-east\-1d \- keyid: GKTADJGHEIQSXMKKRBJ08H \- key: askdjghsdfjkghWupUjasdflkdfklgjsdfjajkghs \- listeners: @@ -136437,149 +118536,13 @@ Ensure myelb ELB exists: .fi .UNINDENT .UNINDENT -.sp -It\(aqs possible to specify attributes from pillars by specifying a pillar. You -can override the values defined in the pillard by setting the attributes on the -resource. The module will use the default pillar key \(aqboto_elb_attributes\(aq, -which allows you to set default attributes for all ELB resources. -.sp -Setting the attributes pillar: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -my_elb_attributes: - cross_zone_load_balancing: - enabled: true - connection_draining: - enabled: true - timeout: 20 - access_log: - enabled: true - s3_bucket_name: \(aqmybucket\(aq - s3_bucket_prefix: \(aqmy\-logs\(aq - emit_interval: 5 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Overriding the attribute values on the resource: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -Ensure myelb ELB exists: - boto_elb.present: - \- name: myelb - \- region: us\-east\-1 - \- attributes_from_pillar: my_elb_attributes - # override cross_zone_load_balancing:enabled - \- attributes: - cross_zone_load_balancing: - enabled: false - \- profile: myelbprofile -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -It\(aqs possible to specify cloudwatch alarms that will be setup along with the -ELB. Note the alarm name will be defined by the name attribute provided, plus -the ELB resource name. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -Ensure myelb ELB exists: - boto_elb.present: - \- name: myelb - \- region: us\-east\-1 - \- profile: myelbprofile - \- alarms: - UnHealthyHostCount: - name: \(aqELB UnHealthyHostCount **MANAGED BY SALT**\(aq - attributes: - metric: UnHealthyHostCount - namespace: AWS/ELB - statistic: Average - comparison: \(aq>=\(aq - threshold: 1.0 - period: 600 - evaluation_periods: 6 - unit: null - description: ELB UnHealthyHostCount - alarm_actions: [\(aqarn:aws:sns:us\-east\-1:12345:myalarm\(aq] - insufficient_data_actions: [] - ok_actions: [\(aqarn:aws:sns:us\-east\-1:12345:myalarm\(aq] -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -You can also use alarms from pillars, and override values from the pillar -alarms by setting overrides on the resource. Note that \(aqboto_elb_alarms\(aq -will be used as a default value for all resources, if defined and can be -used to ensure alarms are always set for a resource. -.sp -Setting the alarms in a pillar: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -my_elb_alarm: - UnHealthyHostCount: - name: \(aqELB UnHealthyHostCount **MANAGED BY SALT**\(aq - attributes: - metric: UnHealthyHostCount - namespace: AWS/ELB - statistic: Average - comparison: \(aq>=\(aq - threshold: 1.0 - period: 600 - evaluation_periods: 6 - unit: null - description: ELB UnHealthyHostCount - alarm_actions: [\(aqarn:aws:sns:us\-east\-1:12345:myalarm\(aq] - insufficient_data_actions: [] - ok_actions: [\(aqarn:aws:sns:us\-east\-1:12345:myalarm\(aq] -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Overriding the alarm values on the resource: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -Ensure myelb ELB exists: - boto_elb.present: - \- name: myelb - \- region: us\-east\-1 - \- profile: myelbprofile - \- alarms_from_pillar: my_elb_alarm - # override UnHealthyHostCount:attributes:threshold - \- alarms: - UnHealthyHostCount: - attributes: - threshold: 2.0 -.ft P -.fi -.UNINDENT -.UNINDENT .INDENT 0.0 .TP .B salt.states.boto_elb.absent(name, region=None, key=None, keyid=None, profile=None) .UNINDENT .INDENT 0.0 .TP -.B salt.states.boto_elb.present(name, listeners, availability_zones=None, subnets=None, security_groups=None, scheme=\(aqinternet\-facing\(aq, health_check=None, attributes=None, attributes_from_pillar=\(aqboto_elb_attributes\(aq, cnames=None, alarms=None, alarms_from_pillar=\(aqboto_elb_alarms\(aq, region=None, key=None, keyid=None, profile=None) +.B salt.states.boto_elb.present(name, listeners, availability_zones=None, subnets=None, security_groups=None, scheme=\(aqinternet\-facing\(aq, health_check=None, attributes=None, cnames=None, region=None, key=None, keyid=None, profile=None) Ensure the IAM role exists. .INDENT 7.0 .TP @@ -136590,18 +118553,7 @@ Name of the IAM role. A list of availability zones for this ELB. .TP .B listeners -.INDENT 7.0 -.TP -.B A list of listener lists; example: -.INDENT 7.0 -.TP -.B [ -[\(aq443\(aq, \(aqHTTPS\(aq, \(aqarn:aws:iam::1111111:server\-certificate/mycert\(aq], -[\(aq8443\(aq, \(aq80\(aq, \(aqHTTPS\(aq, \(aqHTTP\(aq, \(aqarn:aws:iam::1111111:server\-certificate/mycert\(aq] -.UNINDENT -.sp -] -.UNINDENT +A list of listener lists; example: [[\(aq443\(aq, \(aqHTTPS\(aq, \(aqarn:aws:iam::1111111:server\-certificate/mycert\(aq], [\(aq8443\(aq, \(aq80\(aq, \(aqHTTPS\(aq, \(aqHTTP\(aq, \(aqarn:aws:iam::1111111:server\-certificate/mycert\(aq]] .TP .B subnets A list of subnet IDs in your VPC to attach to your LoadBalancer. @@ -136618,24 +118570,10 @@ A dict defining the health check for this ELB. .B attributes A dict defining the attributes to set on this ELB. .TP -.B attributes_from_pillar -name of pillar dict that contains attributes. Attributes defined for this specific -state will override those from pillar. -.TP .B cnames A list of cname dicts with attributes: name, zone, ttl, and identifier. See the boto_route53 state for information about these attributes. .TP -.B alarms: -a dictionary of name\->boto_cloudwatch_alarm sections to be associated with this ELB. -All attributes should be specified except for dimension which will be -automatically set to this ELB. -See the boto_cloudwatch_alarm state for information about these attributes. -.TP -.B alarms_from_pillar: -name of pillar dict that contains alarm settings. Alarms defined for this specific -state will override those from pillar. -.TP .B region Region to connect to. .TP @@ -136651,8 +118589,7 @@ that contains a dict with region, key and keyid. .UNINDENT .UNINDENT .SS salt.states.boto_iam_role -.sp -Manage IAM roles +.SS Manage IAM roles. .sp New in version 2014.7.0. @@ -136706,8 +118643,6 @@ myrole: \- region: us\-east\-1 \- key: GKTADJGHEIQSXMKKRBJ08H \- keyid: askdjghsdfjkghWupUjasdflkdfklgjsdfjajkghs - \- policies_from_pillars: - \- shared_iam_bootstrap_policy \- policies: MySQSPolicy: Statement: @@ -136767,7 +118702,7 @@ that contains a dict with region, key and keyid. .UNINDENT .INDENT 0.0 .TP -.B salt.states.boto_iam_role.present(name, policy_document=None, path=None, policies=None, policies_from_pillars=None, region=None, key=None, keyid=None, profile=None) +.B salt.states.boto_iam_role.present(name, policy_document=None, path=None, policies=None, region=None, key=None, keyid=None, profile=None) Ensure the IAM role exists. .INDENT 7.0 .TP @@ -136783,15 +118718,6 @@ The path to the instance profile. (See \fI\%http://boto.readthedocs.org/en/lates .B policies A dict of IAM role policies. .TP -.B policies_from_pillars -A list of pillars that contain role policy dicts. Policies in the -pillars will be merged in the order defined in the list and key -conflicts will be handled by later defined keys overriding earlier -defined keys. The policies defined here will be merged with the -policies defined in the policies argument. If keys conflict, the keys -in the policies argument will override the keys defined in -policies_from_pillars. -.TP .B region Region to connect to. .TP @@ -136807,8 +118733,7 @@ that contains a dict with region, key and keyid. .UNINDENT .UNINDENT .SS salt.states.boto_lc -.sp -Manage Launch Configurations +.SS Manage Launch Configurations .sp New in version 2014.7.0. @@ -136966,7 +118891,7 @@ The user data available to launched EC2 instances. .TP .B cloud_init A dict of cloud_init configuration. Currently supported values: -scripts, cloud\-config. Mutually exclusive with user_data. +scripts, cloud\-config. Mutually exlusive with user_data. .TP .B instance_type The instance type. ex: m1.small. @@ -137028,8 +118953,7 @@ that contains a dict with region, key and keyid. .UNINDENT .UNINDENT .SS salt.states.boto_route53 -.sp -Manage Route53 records +.SS Manage Route53 records .sp New in version 2014.7.0. @@ -137068,7 +118992,7 @@ passed in as a dict, or as a string to pull from pillars or minion config: myprofile: keyid: GKTADJGHEIQSXMKKRBJ08H key: askdjghsdfjkghWupUjasdflkdfklgjsdfjajkghs - region: us\-east\-1 + region: us\-east\-1 .ft P .fi .UNINDENT @@ -137327,126 +119251,8 @@ A dict with region, key and keyid, or a pillar key (string) that contains a dict with region, key and keyid. .UNINDENT .UNINDENT -.SS salt.states.boto_sns -.sp -Manage SNS Topics -.sp -Create and destroy SNS topics. Be aware that this interacts with Amazon\(aqs -services, and so may incur charges. -.sp -This module uses \fBboto\fP, which can be installed via package, or pip. -.sp -This module accepts explicit AWS credentials but can also utilize -IAM roles assigned to the instance through Instance Profiles. Dynamic -credentials are then automatically obtained from AWS API and no further -configuration is necessary. More information available \fI\%here\fP\&. -.sp -If IAM roles are not used you need to specify them either in a pillar file or -in the minion\(aqs config file: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -sns.keyid: GKTADJGHEIQSXMKKRBJ08H -sns.key: askdjghsdfjkghWupUjasdflkdfklgjsdfjajkghs -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -It\(aqs also possible to specify \fBkey\fP, \fBkeyid\fP and \fBregion\fP via a profile, either -passed in as a dict, or as a string to pull from pillars or minion config: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -myprofile: - keyid: GKTADJGHEIQSXMKKRBJ08H - key: askdjghsdfjkghWupUjasdflkdfklgjsdfjajkghs - region: us\-east\-1 -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -mytopic: - boto_sns.present: - \- region: us\-east\-1 - \- keyid: GKTADJGHEIQSXMKKRBJ08H - \- key: askdjghsdfjkghWupUjasdflkdfklgjsdfjajkghs - -# Using a profile from pillars -mytopic: - boto_sns.present: - \- region: us\-east\-1 - \- profile: mysnsprofile - -# Passing in a profile -mytopic: - boto_sns.present: - \- region: us\-east\-1 - \- profile: - keyid: GKTADJGHEIQSXMKKRBJ08H - key: askdjghsdfjkghWupUjasdflkdfklgjsdfjajkghs -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.boto_sns.absent(name, region=None, key=None, keyid=None, profile=None) -Ensure the named sns topic is deleted. -.INDENT 7.0 -.TP -.B name -Name of the SNS topic. -.TP -.B region -Region to connect to. -.TP -.B key -Secret key to be used. -.TP -.B keyid -Access key to be used. -.TP -.B profile -A dict with region, key and keyid, or a pillar key (string) -that contains a dict with region, key and keyid. -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.boto_sns.present(name, region=None, key=None, keyid=None, profile=None) -Ensure the SNS topic exists. -.INDENT 7.0 -.TP -.B name -Name of the SNS topic. -.TP -.B region -Region to connect to. -.TP -.B key -Secret key to be used. -.TP -.B keyid -Access key to be used. -.TP -.B profile -A dict with region, key and keyid, or a pillar key (string) -that contains a dict with region, key and keyid. -.UNINDENT -.UNINDENT .SS salt.states.boto_sqs -.sp -Manage SQS Queues +.SS Manage SQS Queues .sp New in version 2014.7.0. @@ -137485,7 +119291,7 @@ passed in as a dict, or as a string to pull from pillars or minion config: myprofile: keyid: GKTADJGHEIQSXMKKRBJ08H key: askdjghsdfjkghWupUjasdflkdfklgjsdfjajkghs - region: us\-east\-1 + region: us\-east\-1 .ft P .fi .UNINDENT @@ -137569,136 +119375,6 @@ A dict with region, key and keyid, or a pillar key (string) that contains a dict with region, key and keyid. .UNINDENT .UNINDENT -.SS salt.states.chef -.SS Execute Chef client runs -.sp -Run chef\-client or chef\-solo -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -my\-chef\-run: - chef.client: - \- override\-runlist: \(aqdemo1,demo2\(aq - \- server: \(aqhttps://chef.domain.com\(aq - -default\-chef\-run: - chef.client: [] - -my\-solo\-run: - chef.solo: - \- environment: dev -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.chef.client(name, **kwargs) -.INDENT 7.0 -.TP -.B name -Unique identifier for the state. Does not affect the Chef run. -.TP -.B server -The chef server URL -.TP -.B client_key -Set the client key file location -.TP -.B config -The configuration file to use -.TP -.B config\-file\-jail -Directory under which config files are allowed to be loaded -(no client.rb or knife.rb outside this path will be loaded). -.TP -.B environment -Set the Chef Environment on the node -.TP -.B group -Group to set privilege to -.TP -.B json\-attributes -Load attributes from a JSON file or URL -.TP -.B localmode -Point chef\-client at local repository if True -.TP -.B log_level -Set the log level (debug, info, warn, error, fatal) -.TP -.B logfile -Set the log file location -.TP -.B node\-name -The node name for this client -.TP -.B override\-runlist -Replace current run list with specified items for a single run -.TP -.B pid -Set the PID file location, defaults to /tmp/chef\-client.pid -.TP -.B run\-lock\-timeout -Set maximum duration to wait for another client run to finish, -default is indefinitely. -.TP -.B runlist -Permanently replace current run list with specified items -.TP -.B user -User to set privilege to -.TP -.B validation_key -Set the validation key file location, used for registering new clients -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.chef.solo(name, **kwargs) -.INDENT 7.0 -.TP -.B name -Unique identifier for the state. Does not affect the Chef run. -.TP -.B config -The configuration file to use -.TP -.B environment -Set the Chef Environment on the node -.TP -.B group -Group to set privilege to -.TP -.B json\-attributes -Load attributes from a JSON file or URL -.TP -.B log_level -Set the log level (debug, info, warn, error, fatal) -.TP -.B logfile -Set the log file location -.TP -.B node\-name -The node name for this client -.TP -.B override\-runlist -Replace current run list with specified items for a single run -.TP -.B recipe\-url -Pull down a remote gzipped tarball of recipes and untar it to -the cookbook cache -.TP -.B run\-lock\-timeout -Set maximum duration to wait for another client run to finish, -default is indefinitely. -.TP -.B user -User to set privilege to -.UNINDENT -.UNINDENT .SS salt.states.cloud .SS Using states instead of maps to deploy clouds .sp @@ -137843,7 +119519,7 @@ no disk space: .ft C > /var/log/messages: cmd.run: - \- unless: echo \(aqfoo\(aq > /tmp/.test && rm \-f /tmp/.test + \- unless: echo \(aqfoo\(aq > /tmp/.test .ft P .fi .UNINDENT @@ -138951,172 +120627,6 @@ Custom\-defined identifier for tracking the cron line for future crontab edits. This defaults to the state id .UNINDENT .UNINDENT -.SS salt.states.cyg -.sp -Installation of Cygwin packages. -.sp -A state module to manage cygwin packages. Packages can be installed -or removed. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -dos2unix: - cyg.installed -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B class salt.states.cyg.DictDiffer(current_dict, past_dict) -Calculate the difference between two dictionaries. -.INDENT 7.0 -.IP 1. 3 -items added -.IP 2. 3 -items removed -.IP 3. 3 -keys same in both but changed values -.IP 4. 3 -keys same in both and unchanged values -.UNINDENT -.INDENT 7.0 -.TP -.B added() -Return a set of additions to past_dict. -.UNINDENT -.INDENT 7.0 -.TP -.B changed() -Return a set of the keys with changed values. -.UNINDENT -.INDENT 7.0 -.TP -.B removed() -Return a set of things removed from past_dict. -.UNINDENT -.INDENT 7.0 -.TP -.B same() -True if the two dicts are the same. -.UNINDENT -.INDENT 7.0 -.TP -.B unchanged() -Return a set of the keys with unchanged values. -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.cyg.installed(name, cyg_arch=\(aqx86_64\(aq, mirrors=None) -Make sure that a package is installed. -.INDENT 7.0 -.TP -.B name -The name of the package to install -.TP -.B cyg_arch -x86_64 -The cygwin architecture to install the package into. -Current options are x86 and x86_64 -.TP -.B mirrors -None -List of mirrors to check. -None will use a default mirror (kernel.org) -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -rsync: - cyg.installed: - \- mirrors: - \- http://mirror/without/public/key: "" - \- http://mirror/with/public/key: http://url/of/public/key -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.cyg.removed(name, cyg_arch=\(aqx86_64\(aq, mirrors=None) -Make sure that a package is not installed. -.INDENT 7.0 -.TP -.B name -The name of the package to uninstall -.TP -.B cyg_arch -x86_64 -The cygwin architecture to remove the package from. -Current options are x86 and x86_64 -.TP -.B mirrors -None -List of mirrors to check. -None will use a default mirror (kernel.org) -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -rsync: - cyg.removed: - \- mirrors: - \- http://mirror/without/public/key: "" - \- http://mirror/with/public/key: http://url/of/public/key -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.cyg.updated(name=None, cyg_arch=\(aqx86_64\(aq, mirrors=None) -Make sure all packages are up to date. -.INDENT 7.0 -.TP -.B name -None -No affect, salt fails poorly without the arg available -.TP -.B cyg_arch -x86_64 -The cygwin architecture to update. -Current options are x86 and x86_64 -.TP -.B mirrors -None -List of mirrors to check. -None will use a default mirror (kernel.org) -.UNINDENT -.sp -CLI Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -rsync: - cyg.updated: - \- mirrors: - \- http://mirror/without/public/key: "" - \- http://mirror/with/public/key: http://url/of/public/key -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.states.ddns .SS Dynamic DNS updates .sp @@ -139285,8 +120795,8 @@ The answer to the question .UNINDENT .INDENT 0.0 .TP -.B salt.states.debconfmod.set_file(name, source, template=None, context=None, defaults=None, **kwargs) -Set debconf selections from a file or a template +.B salt.states.debconfmod.set_file(name, source, **kwargs) +Set debconf selections from a file .INDENT 7.0 .INDENT 3.5 .sp @@ -139299,13 +120809,6 @@ Set debconf selections from a file or a template : debconf.set_file: \- source: salt://pathto/pkg.selections?saltenv=myenvironment - -: - debconf.set_file: - \- source: salt://pathto/pkg.selections.jinja2 - \- template: jinja2 - \- context: - some_value: "false" .ft P .fi .UNINDENT @@ -139314,17 +120817,6 @@ Set debconf selections from a file or a template .TP .B source: The location of the file containing the package selections -.TP -.B template -If this setting is applied then the named templating engine will be -used to render the package selections file, currently jinja, mako, and -wempy are supported -.TP -.B context -Overrides default context variables passed to the template. -.TP -.B defaults -Default context passed to the template. .UNINDENT .UNINDENT .SS salt.states.disk @@ -139423,21 +120915,6 @@ mysuperdocker\-container: .UNINDENT .UNINDENT .IP \(bu 2 -loaded -.INDENT 2.0 -.INDENT 3.5 -.sp -.nf -.ft C -mysuperdocker\-file: - docker.loaded: - \- name: mysuperdocker - \- source: salt://_files/tmp/docker_image.tar -.ft P -.fi -.UNINDENT -.UNINDENT -.IP \(bu 2 running .INDENT 2.0 .INDENT 3.5 @@ -139459,9 +120936,9 @@ my_service: \fBNOTE:\fP .INDENT 2.0 .INDENT 3.5 -The \fBport_bindings\fP argument above is a dictionary. The double -indentation is required for PyYAML to load the data structure -properly as a python dictionary. More information can be found +The \fBport_bindings\fP argument above is a dictionary. Note the +double\-indentation, this is required for PyYAML to load the data +structure properly as a dictionary. More information can be found \fIhere\fP .UNINDENT .UNINDENT @@ -139501,6 +120978,18 @@ run .INDENT 3.5 The docker modules are named \fBdockerio\fP because the name \(aqdocker\(aq would conflict with the underlying docker\-py library. +.sp +We should add magic to all methods to also match containers by name +now that the \(aqnaming link\(aq stuff has been merged in docker. +This applies for example to: +.INDENT 0.0 +.IP \(bu 2 +running +.IP \(bu 2 +absent +.IP \(bu 2 +run +.UNINDENT .UNINDENT .UNINDENT .INDENT 0.0 @@ -139530,7 +121019,7 @@ or filesystem path to the dockerfile .UNINDENT .INDENT 0.0 .TP -.B salt.states.dockerio.installed(name, image, command=None, hostname=None, user=None, detach=True, stdin_open=False, tty=False, mem_limit=0, ports=None, environment=None, dns=None, volumes=None, volumes_from=None, cpu_shares=None, cpuset=None, *args, **kwargs) +.B salt.states.dockerio.installed(name, image, command=None, hostname=None, user=None, detach=True, stdin_open=False, tty=False, mem_limit=0, ports=None, environment=None, dns=None, volumes=None, volumes_from=None, *args, **kwargs) Ensure that a container with the given name exists; if not, build a new container from the specified image. (\fIdocker run\fP) @@ -139586,81 +121075,22 @@ is running the specified image. .UNINDENT .INDENT 0.0 .TP -.B salt.states.dockerio.loaded(name, source=None, source_hash=\(aq\(aq, force=False) -Load an image into the local docker registry (\fIdocker load\fP) -.INDENT 7.0 -.TP -.B name -Name of the docker image -.TP -.B source -The source .tar file to download to the minion, created by docker save -this source file can be hosted on either the salt master server, -or on an HTTP or FTP server. -.sp -If the file is hosted on a HTTP or FTP server then the source_hash -argument is also required -.sp -\fBNOTE:\fP -.INDENT 7.0 -.INDENT 3.5 -See first the documentation for salt file.managed -<\fI\%http://docs.saltstack.com/en/latest/ref/states/all/_\fP -salt.states.file.html#salt.states.file.managed> -.UNINDENT -.UNINDENT -.TP -.B source_hash -.INDENT 7.0 -.TP -.B This can be one of the following: -.INDENT 7.0 -.IP 1. 3 -a source hash string -.IP 2. 3 -the URI of a file that contains source hash strings -.UNINDENT -.sp -\fBNOTE:\fP -.INDENT 7.0 -.INDENT 3.5 -See first the documentation for salt file.managed -<\fI\%http://docs.saltstack.com/en/latest/ref/states/all/_\fP -salt.states.file.html#salt.states.file.managed> -.UNINDENT -.UNINDENT -.UNINDENT -.TP -.B force -Load even if the image exists -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.states.dockerio.mod_watch(name, sfun=None, *args, **kw) .UNINDENT .INDENT 0.0 .TP -.B salt.states.dockerio.present(name, image=None, is_latest=False) +.B salt.states.dockerio.present(name) If a container with the given name is not present, this state will fail. -Supports optionally checking for specific image/version (\fIdocker inspect\fP) .INDENT 7.0 .TP .B name: container id -.TP -.B image: -image the container should be running (defaults to any) -.TP -.B is_latest: -also check if the container runs the latest version of the image ( -latest defined as the latest pulled onto the local machine) .UNINDENT .UNINDENT .INDENT 0.0 .TP -.B salt.states.dockerio.pulled(name, tag=\(aqlatest\(aq, force=False, insecure_registry=False, *args, **kwargs) +.B salt.states.dockerio.pulled(name, tag=\(aqlatest\(aq, force=False, *args, **kwargs) Pull an image from a docker registry. (\fIdocker pull\fP) .sp \fBNOTE:\fP @@ -139671,9 +121101,9 @@ See first the documentation for \fIdocker login\fP, \fIdocker pull\fP, and \fI\%docker.import_image\fP (\fI\%docker import\fP). NOTE that we added in SaltStack a way to authenticate yourself with the -Docker Hub Registry by supplying your credentials (username, email & -password) using pillars. For more information, see salt.modules.dockerio -execution module. +Docker Hub Registry by supplying your credentials (username, email & password) +using pillars. For more information, see salt.modules.dockerio execution +module. .UNINDENT .UNINDENT .INDENT 7.0 @@ -139686,14 +121116,11 @@ Tag of the image .TP .B force Pull even if the image is already pulled -.TP -.B insecure_registry -Set to \fBTrue\fP to allow connections to non\-HTTPS registries. Default \fBFalse\fP\&. .UNINDENT .UNINDENT .INDENT 0.0 .TP -.B salt.states.dockerio.pushed(name, tag=\(aqlatest\(aq, insecure_registry=False) +.B salt.states.dockerio.pushed(name, tag=\(aqlatest\(aq) Push an image from a docker registry. (\fIdocker push\fP) .sp \fBNOTE:\fP @@ -139704,9 +121131,9 @@ See first the documentation for \fIdocker login\fP, \fIdocker pull\fP, and \fI\%docker.import_image\fP (\fI\%docker import\fP). NOTE that we added in SaltStack a way to authenticate yourself with the -Docker Hub Registry by supplying your credentials (username, email -& password) using pillars. For more information, see -salt.modules.dockerio execution module. +Docker Hub Registry by supplying your credentials (username, email & password) +using pillars. For more information, see salt.modules.dockerio execution +module. .UNINDENT .UNINDENT .INDENT 7.0 @@ -139716,9 +121143,6 @@ Name of the image .TP .B tag Tag of the image [Optional] -.TP -.B insecure_registry -Set to \fBTrue\fP to allow connections to non\-HTTPS registries. Default \fBFalse\fP\&. .UNINDENT .UNINDENT .INDENT 0.0 @@ -139733,7 +121157,7 @@ You can match by either name or hostname command to run in the container .TP .B cid -Container id or name +Container id .TP .B state_id state_id @@ -139753,38 +121177,41 @@ Do not execute cmd if statement in the container returns 0 .UNINDENT .INDENT 0.0 .TP -.B salt.states.dockerio.running(name, image, container=None, command=None, hostname=None, user=None, detach=True, stdin_open=False, tty=False, mem_limit=0, ports=None, environment=None, dns=None, volumes=None, volumes_from=None, start=True, cap_add=None, cap_drop=None, privileged=None, lxc_conf=None, network_mode=None, check_is_running=True, publish_all_ports=False, links=None, restart_policy=None, cpu_shares=None, cpuset=None, *args, **kwargs) -Ensure that a container is running. If the container does not exist, it -will be created from the specified image. (\fIdocker run\fP) +.B salt.states.dockerio.running(name, container=None, port_bindings=None, binds=None, publish_all_ports=False, links=None, lxc_conf=None, privileged=False, dns=None, volumes_from=None, network_mode=None, restart_policy=None, cap_add=None, cap_drop=None, check_is_running=True) +Ensure that a container is running. (\fIdocker inspect\fP) .INDENT 7.0 .TP -.B name / container -Name for the container +.B name +name of the service .TP -.B image -Image from which to build this container -.TP -.B environment +.B container +name of the container to start +.UNINDENT +.sp +publish_all_ports .INDENT 7.0 .TP -.B Environment variables for the container, either +.B links +Link several container together .INDENT 7.0 -.IP \(bu 2 -a mapping of key, values -.IP \(bu 2 -a list of mappings of key, values +.INDENT 3.5 +.sp +.nf +.ft C +\- links: + name_other_container: alias_for_other_container +.ft P +.fi .UNINDENT .UNINDENT .TP -.B ports +.B port_bindings .INDENT 7.0 .TP -.B List of ports definitions, either: +.B List of ports to expose on host system .INDENT 7.0 .IP \(bu 2 -a port to map -.IP \(bu 2 -a mapping of mapping portInHost : PortInContainer +a mapping port\(aqs guest, hostname\(aqs host and port\(aqs host. .UNINDENT .UNINDENT .INDENT 7.0 @@ -139792,8 +121219,8 @@ a mapping of mapping portInHost : PortInContainer .sp .nf .ft C -\- ports: - \- "5000/tcp": +\- port_bindings: + "5000/tcp": HostIp: "" HostPort: "5000" .ft P @@ -139801,35 +121228,18 @@ a mapping of mapping portInHost : PortInContainer .UNINDENT .UNINDENT .TP -.B publish_all_ports -Publish all ports from the port list (default is false, -only meaningful if port does not contain portinhost:portincontainer mapping) -.TP -.B volumes -List of volumes to mount or create in the container (like \fB\-v\fP of \fBdocker run\fP command), +.B binds +List of volumes to mount (like \fB\-v\fP of \fBdocker run\fP command), mapping host directory to container directory. -To create a volume in the container: +.sp +For read\-write mounting, use the short form: .INDENT 7.0 .INDENT 3.5 .sp .nf .ft C -\- volumes: - \- "/var/log/service" -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -For read\-write mounting, use the short form (note that the notion of -source:target from docker is preserved): -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -\- volumes: - \- /var/log/service: /var/log/service +\- binds: + /var/log/service: /var/log/service .ft P .fi .UNINDENT @@ -139841,38 +121251,17 @@ Or, to specify read\-only mounting, use the extended form: .sp .nf .ft C -\- volumes: - \- /home/user1: - bind: /mnt/vol2 - ro: true - \- /var/www: - bind: /mnt/vol1 - ro: false +\- binds: + /home/user1: + bind: /mnt/vol2 + ro: true + /var/www: + bind: /mnt/vol1 + ro: false .ft P .fi .UNINDENT .UNINDENT -.sp -Or (mostly for backwards compatibility) a dict style -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -\- volumes: - /home/user1: - bind: /mnt/vol2 - ro: true - /var/www: - bind: /mnt/vol1 - ro: false -.ft P -.fi -.UNINDENT -.UNINDENT -.TP -.B volumes_from -List of containers to share volumes with .TP .B dns List of DNS servers. @@ -139888,6 +121277,20 @@ List of DNS servers. .UNINDENT .UNINDENT .TP +.B volumes_from +List of container names to get volumes definition from +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +\- volumes_from: + \- name_other_container +.ft P +.fi +.UNINDENT +.UNINDENT +.TP .B network_mode .INDENT 7.0 .IP \(bu 2 @@ -139935,45 +121338,6 @@ List of capabilities to drop in a container. Enable checking if a container should run or not. Useful for data\-only containers that must be linked to another one. e.g. nginx <\- static\-files -.TP -.B cpu_shares -CPU shares (relative weight) -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -\- cpu_shares: 2 -.ft P -.fi -.UNINDENT -.UNINDENT -.TP -.B cpuset -CPUs in which to allow execution (\(aq0\-3\(aq or \(aq0,1\(aq) -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -\- cpuset: \(aq0\-3\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.sp -For other parameters, see salt.modules.dockerio execution module -and the docker\-py python bindings for docker documentation -<\fI\%https://github.com/dotcloud/docker\-py#api\fP>\(ga_ for -\fIdocker.create_container\fP\&. -.sp -\fBNOTE:\fP -.INDENT 7.0 -.INDENT 3.5 -This command does not verify that the named container -is running the specified image. -.UNINDENT .UNINDENT .UNINDENT .INDENT 0.0 @@ -139990,86 +121354,6 @@ Its implementation might be very similar from .UNINDENT .UNINDENT .UNINDENT -.SS salt.states.drac -.sp -Management of Dell DRAC -.sp -The DRAC module is used to create and manage DRAC cards on Dell servers -.sp -Ensure the user damian is present -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -damian: - drac.present: - \- name: damian - \- password: secret - \- permission: login,test_alerts,clear_logs -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.sp -Ensure the user damian does not exist -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -damian: - drac.absent: - \- name: damian -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.sp -Ensure DRAC network is in a consistent state -.INDENT 0.0 -.INDENT 3.5 -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.drac.absent(name) -Ensure a user does not exist on the Dell DRAC -.INDENT 7.0 -.TP -.B name: -The users username -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.drac.network(ip, netmask, gateway) -Ensure the DRAC network settings are consistent -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.drac.present(name, password, permission) -Ensure the user exists on the Dell DRAC -.INDENT 7.0 -.TP -.B name: -The users username -.TP -.B password -The password used to authenticate -.TP -.B permission -The permissions that should be assigned to a user -.UNINDENT -.UNINDENT .SS salt.states.environ .sp Support for getting and setting the environment variables @@ -140151,7 +121435,7 @@ profile: .UNINDENT .INDENT 0.0 .TP -.B salt.states.eselect.set_(name, target, module_parameter=None, action_parameter=None) +.B salt.states.eselect.set_(name, target, parameter=None, module_parameter=None, action_parameter=None) Verify that the given module is set to the given target .INDENT 7.0 .TP @@ -140166,6 +121450,12 @@ additional params passed to the defined module .TP .B action_parameter additional params passed to the defined action +.TP +.B parameter +additional params passed to the defined action +.sp +Deprecated since version Lithium. + .UNINDENT .UNINDENT .SS salt.states.event @@ -140293,10 +121583,9 @@ def run(): \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 -When using both the \fBdefaults\fP and \fBcontext\fP arguments, note the extra -indentation (four spaces instead of the normal two). This is due to an -idiosyncrasy of how PyYAML loads nested dictionaries, and is explained in -greater detail \fIhere\fP\&. +The \fBdefaults\fP and \fBcontext\fP arguments require extra indentation (four +spaces instead of the normal two) in order to create a nested dictionary. +\fIMore information\fP\&. .UNINDENT .UNINDENT .sp @@ -140854,45 +122143,44 @@ Note: this function will store two copies of the file in\-memory and only edit the targeted file if necessary. .INDENT 7.0 .TP -.B name -Filesystem path to the file to be edited +.B Parameters +.INDENT 7.0 +.IP \(bu 2 +\fBname\fP \-\- Filesystem path to the file to be edited +.IP \(bu 2 +\fBmarker_start\fP \-\- The line content identifying a line as the start of +the content block. Note that the whole line containing this marker will +be considered, so whitespace or extra content before or after the +marker is included in final output +.IP \(bu 2 +\fBmarker_end\fP \-\- The line content identifying a line as the end of +the content block. Note that the whole line containing this marker will +be considered, so whitespace or extra content before or after the +marker is included in final output. +Note: you can use file.accumulated and target this state. All +accumulated data dictionaries content will be added as new lines in the +content. +.IP \(bu 2 +\fBcontent\fP \-\- The content to be used between the two lines identified by +marker_start and marker_stop. +.IP \(bu 2 +\fBappend_if_not_found\fP \-\- False by default, if markers are not found and +set to True then the markers and content will be appended to the file +.IP \(bu 2 +\fBprepend_if_not_found\fP \-\- False by default, if markers are not found and +set to True then the markers and content will be prepended to the file +.IP \(bu 2 +\fBbackup\fP \-\- The file extension to use for a backup of the file if any +edit is made. Set to \fBFalse\fP to skip making a backup. +.IP \(bu 2 +\fBdry_run\fP \-\- Don\(aqt make any edits to the file +.IP \(bu 2 +\fBshow_changes\fP \-\- Output a unified diff of the old file and the new +file. If \fBFalse\fP return a boolean if any changes were made. +.UNINDENT .TP -.B marker_start -The line content identifying a line as the start of the content block. -Note that the whole line containing this marker will be considered, so -whitespace or extra content before or after the marker is included in -final output -.TP -.B marker_end -The line content identifying a line as the end of the content block. -Note that the whole line containing this marker will be considered, so -whitespace or extra content before or after the marker is included in -final output. Note: you can use file.accumulated and target this state. -All accumulated data dictionaries content will be added as new lines in -the content -.TP -.B content -The content to be used between the two lines identified by marker_start -and marker_stop -.TP -.B append_if_not_found -If markers are not found and set to True then the markers and content -will be appended to the file. Default is \fBFalse\fP -.TP -.B prepend_if_not_found -If markers are not found and set to True then the markers and content -will be prepended to the file. Default is \fBFalse\fP -.TP -.B backup -The file extension to use for a backup of the file if any edit is made. -Set this to \fBFalse\fP to skip making a backup. -.TP -.B dry_run -Don\(aqt make any edits to the file -.TP -.B show_changes -Output a unified diff of the old file and the new file. If \fBFalse\fP -return a boolean if any changes were made +.B Return type +bool or str .UNINDENT .sp Example of usage with an accumulator and with a variable: @@ -141006,7 +122294,7 @@ New in version 0.9.5. .UNINDENT .INDENT 0.0 .TP -.B salt.states.file.copy(name, source, force=False, makedirs=False, preserve=False, user=None, group=None, mode=None, subdir=False, **kwargs) +.B salt.states.file.copy(name, source, force=False, makedirs=False) If the source file exists on the system, copy it to the named file. The named file will not be overwritten if it already exists unless the force option is set to True. @@ -141024,50 +122312,11 @@ specify "force: True" to overwrite the target file .TP .B makedirs If the target subdirectories don\(aqt exist create them -.TP -.B preserve -New in version 2015.2.0. - -.sp -Set \fBpreserve: True\fP to preserve user/group ownership and mode -after copying. Default is \fBFalse\fP\&. If \fBpreseve\fP is set to \fBTrue\fP, -then user/group/mode attributes will be ignored. -.TP -.B user -New in version 2015.2.0. - -.sp -The user to own the copied file, this defaults to the user salt is -running as on the minion. If \fBpreserve\fP is set to \fBTrue\fP, then -this will be ignored -.TP -.B group -New in version 2015.2.0. - -.sp -The group to own the copied file, this defaults to the group salt is -running as on the minion. If \fBpreserve\fP is set to \fBTrue\fP or on -Windows this will be ignored -.TP -.B mode -New in version 2015.2.0. - -.sp -The permissions to set on the copied file, aka 644, \(aq0775\(aq, \(aq4664\(aq. -If \fBpreserve\fP is set to \fBTrue\fP, then this will be ignored. -Not supported on Windows -.TP -.B subdir -New in version 2015.2.0. - -.sp -If the name is a directory then place the file inside the named -directory .UNINDENT .UNINDENT .INDENT 0.0 .TP -.B salt.states.file.directory(name, user=None, group=None, recurse=None, dir_mode=None, file_mode=None, makedirs=False, clean=False, require=None, exclude_pat=None, follow_symlinks=False, force=False, backupname=None, allow_symlink=True, **kwargs) +.B salt.states.file.directory(name, user=None, group=None, recurse=None, dir_mode=None, file_mode=None, makedirs=False, clean=False, require=None, exclude_pat=None, follow_symlinks=False, force=False, backupname=None, **kwargs) Ensure that a named directory is present and has the right perms .INDENT 7.0 .TP @@ -141085,9 +122334,8 @@ salt is running as on the minion. On Windows, this is ignored .B recurse Enforce user/group ownership and mode of directory recursively. Accepts a list of strings representing what you would like to recurse. If -\fBmode\fP is defined, will recurse on both \fBfile_mode\fP and \fBdir_mode\fP if -they are defined. If \fBignore_files\fP or \fBignore_dirs\fP is included, files or -directories will be left unchanged respectively. +\(aqmode\(aq is defined, will recurse on both \(aqfile_mode\(aq and \(aqdir_mode\(aq if +they are defined. Example: .INDENT 7.0 .INDENT 3.5 @@ -141108,43 +122356,6 @@ Example: .fi .UNINDENT .UNINDENT -.sp -Leave files or directories unchanged: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -/var/log/httpd: - file.directory: - \- user: root - \- group: root - \- dir_mode: 755 - \- file_mode: 644 - \- recurse: - \- user - \- group - \- mode - \- ignore_files - -/var/log/httpd: - file.directory: - \- user: root - \- group: root - \- dir_mode: 755 - \- file_mode: 644 - \- recurse: - \- user - \- group - \- mode - \- ignore_dirs -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -New in version 2015.2.0. - .TP .B dir_mode / mode The permissions mode to set any directories created. Not supported on @@ -141199,17 +122410,6 @@ backupname will be removed first. .sp New in version 2014.7.0. -.TP -.B allow_symlink -True -If allow_symlink is True and the specified path is a symlink, it will be -allowed to remain if it points to a directory. If allow_symlink is False -then the state will fail, unless force is also set to True, in which case -it will be removed or renamed, depending on the value of the backupname -argument. -.sp -New in version 2014.7.0. - .UNINDENT .UNINDENT .INDENT 0.0 @@ -141302,34 +122502,15 @@ md5 32 .fi .UNINDENT .UNINDENT -.INDENT 7.0 -.TP -.B \fBUsing a Source Hash File\fP +.sp The file can contain several checksums for several files. Each line must contain both the file name and the hash. If no file name is matched, the first hash encountered will be used, otherwise the most secure hash with the correct source file name will be used. .sp -When using a source hash file the source_hash argument needs to be a -url, the standard download urls are supported, ftp, http, salt etc: +Debian file type \fB*.dsc\fP is supported. .sp -Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -tomdroid\-src\-0.7.3.tar.gz: - file.managed: - \- name: /tmp/tomdroid\-src\-0.7.3.tar.gz - \- source: https://launchpad.net/tomdroid/beta/0.7.3/+download/tomdroid\-src\-0.7.3.tar.gz - \- source_hash: https://launchpad.net/tomdroid/beta/0.7.3/+download/tomdroid\-src\-0.7.3.hash -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The following is an example of the supported source_hash format: +Examples: .INDENT 7.0 .INDENT 3.5 .sp @@ -141342,25 +122523,7 @@ ead48423703509d37c4a90e6a0d53e143b6fc268 .fi .UNINDENT .UNINDENT -.sp -Debian file type \fB*.dsc\fP files are also supported. -.TP -.B \fBInserting the Source Hash in the sls Data\fP -Examples: .INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -tomdroid\-src\-0.7.3.tar.gz: - file.managed: - \- name: /tmp/tomdroid\-src\-0.7.3.tar.gz - \- source: https://launchpad.net/tomdroid/beta/0.7.3/+download/tomdroid\-src\-0.7.3.tar.gz - \- source_hash: md5=79eef25f9b0b2c642c62b7f737d4f53f -.ft P -.fi -.UNINDENT -.UNINDENT .TP .B Known issues: If the remote server URL has the hash file as an apparent @@ -141622,23 +122785,16 @@ New in version 0.17.0. .INDENT 0.0 .TP .B salt.states.file.mod_run_check_cmd(cmd, filename, **check_cmd_opts) -Execute the check_cmd logic. -.sp -Return a result dict if \fBcheck_cmd\fP succeeds (check_cmd == 0) -otherwise return True +Execute the check_cmd logic +Return a result dict if: +* check_cmd succeeded (check_cmd == 0) +else return True .UNINDENT .INDENT 0.0 .TP .B salt.states.file.patch(name, source=None, hash=None, options=\(aq\(aq, dry_run_first=True, env=None, **kwargs) -Apply a patch to a file. -.sp -\fBNOTE:\fP -.INDENT 7.0 -.INDENT 3.5 -A suitable \fBpatch\fP executable must be available on the minion when -using this state function. -.UNINDENT -.UNINDENT +Apply a patch to a file. Note: a suitable \fBpatch\fP executable must be +available on the minion when using this state function. .INDENT 7.0 .TP .B name @@ -141939,7 +123095,81 @@ complex_search_and_replace: .UNINDENT .INDENT 0.0 .TP -.B salt.states.file.serialize(name, dataset=None, dataset_pillar=None, user=None, group=None, mode=None, env=None, backup=\(aq\(aq, makedirs=False, show_diff=True, create=True, merge_if_exists=False, **kwargs) +.B salt.states.file.sed(name, before, after, limit=\(aq\(aq, backup=\(aq.bak\(aq, options=\(aq\-r \-e\(aq, flags=\(aqg\(aq, negate_match=False) +Deprecated since version 0.17.0: Use the \fI\%file.replace\fP state instead. + +.sp +Maintain a simple edit to a file +.sp +The file will be searched for the \fBbefore\fP pattern before making the +edit. In general the \fBlimit\fP pattern should be as specific as possible +and \fBbefore\fP and \fBafter\fP should contain the minimal text to be changed. +.INDENT 7.0 +.TP +.B before +A pattern that should exist in the file before the edit. +.TP +.B after +A pattern that should exist in the file after the edit. +.TP +.B limit +An optional second pattern that can limit the scope of the before +pattern. +.TP +.B backup +\(aq.bak\(aq +The extension for the backed\-up version of the file before the edit. If +no backups is desired, pass in the empty string: \(aq\(aq +.TP +.B options +\fB\-r \-e\fP +Any options to pass to the \fBsed\fP command. \fB\-r\fP uses extended +regular expression syntax and \fB\-e\fP denotes that what follows is an +expression that sed will execute. +.TP +.B flags +\fBg\fP +Any flags to append to the sed expression. \fBg\fP specifies the edit +should be made globally (and not stop after the first replacement). +.TP +.B negate_match +False +Negate the search command (\fB!\fP) +.sp +New in version 0.17.0. + +.UNINDENT +.sp +Usage: +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +# Disable the epel repo by default +/etc/yum.repos.d/epel.repo: + file.sed: + \- before: 1 + \- after: 0 + \- limit: ^enabled= + +# Remove ldap from nsswitch +/etc/nsswitch.conf: + file.sed: + \- before: \(aqldap\(aq + \- after: \(aq\(aq + \- limit: \(aq^passwd:\(aq +.ft P +.fi +.UNINDENT +.UNINDENT +.sp +New in version 0.9.5. + +.UNINDENT +.INDENT 0.0 +.TP +.B salt.states.file.serialize(name, dataset, user=None, group=None, mode=None, env=None, backup=\(aq\(aq, makedirs=False, show_diff=True, create=True, merge_if_exists=False, **kwargs) Serializes dataset and store it into managed file. Useful for sharing simple configuration files. .INDENT 7.0 @@ -141948,17 +123178,7 @@ simple configuration files. The location of the file to create .TP .B dataset -The dataset that will be serialized -.TP -.B dataset_pillar -Operates like \fBdataset\fP, but draws from a value stored in pillar, -using the pillar path syntax used in \fBpillar.get\fP\&. This is useful when the pillar value -contains newlines, as referencing a pillar variable using a jinja/mako -template can result in YAML formatting issues due to the newlines -causing indentation mismatches. -.sp -New in version FIXME. - +the dataset that will be serialized .TP .B formatter Write the data as this format. Supported output formats: @@ -142166,15 +123386,8 @@ The character to remove in order to uncomment a line .B backup \fB\&.bak\fP The file will be backed up before edit with this file extension; -.sp -\fBWARNING:\fP -.INDENT 7.0 -.INDENT 3.5 -This backup will be overwritten each time \fBsed\fP / \fBcomment\fP / -\fBuncomment\fP is called. Meaning the backup will only be useful -after the first invocation. -.UNINDENT -.UNINDENT +\fBWARNING:\fP each time \fBsed\fP/\fBcomment\fP/\fBuncomment\fP is called will +overwrite this backup .UNINDENT .sp Usage: @@ -142215,7 +123428,7 @@ addressable: .UNINDENT .INDENT 0.0 .TP -.B salt.states.gem.installed(name, ruby=None, gem_bin=None, user=None, version=None, rdoc=False, ri=False, pre_releases=False, proxy=None) +.B salt.states.gem.installed(name, ruby=None, runas=None, user=None, version=None, rdoc=False, ri=False, proxy=None) Make sure that a gem is installed. .INDENT 7.0 .TP @@ -142223,13 +123436,13 @@ Make sure that a gem is installed. The name of the gem to install .TP .B ruby: None -Only for RVM or rbenv installations: the ruby version and gemset to -target. +For RVM or rbenv installations: the ruby version and gemset to target. .TP -.B gem_bin: None -Custom \fBgem\fP command to run instead of the default. -Use this to install gems to a non\-default ruby install. If you are -using rvm or rbenv use the ruby argument instead. +.B runas: None +The user under which to run the \fBgem\fP command +.sp +Deprecated since version 0.17.0. + .TP .B user: None The user under which to run the \fBgem\fP command @@ -142250,10 +123463,6 @@ Generate RDoc documentation for the gem(s). False Generate RI documentation for the gem(s). .TP -.B pre_releases -False -Install pre\-release version of gem(s) if available. -.TP .B proxy None Use the specified HTTP proxy server for all outgoing traffic. @@ -142262,21 +123471,21 @@ Format: \fI\%http://hostname[:port\fP] .UNINDENT .INDENT 0.0 .TP -.B salt.states.gem.removed(name, ruby=None, user=None, gem_bin=None) +.B salt.states.gem.removed(name, ruby=None, runas=None, user=None) Make sure that a gem is not installed. .INDENT 7.0 .TP .B name The name of the gem to uninstall .TP -.B gem_bin -None -Full path to \fBgem\fP binary to use. +.B ruby: None +For RVM or rbenv installations: the ruby version and gemset to target. .TP -.B ruby -None -If RVM or rbenv are installed, the ruby version and gemset to use. -Ignored if \fBgem_bin\fP is specified. +.B runas: None +The user under which to run the \fBgem\fP command +.sp +Deprecated since version 0.17.0. + .TP .B user: None The user under which to run the \fBgem\fP command @@ -142367,7 +123576,7 @@ mylocalrepo: .UNINDENT .INDENT 0.0 .TP -.B salt.states.git.latest(name, rev=None, target=None, user=None, force=None, force_checkout=False, force_reset=False, submodules=False, mirror=False, bare=False, remote_name=\(aqorigin\(aq, always_fetch=False, depth=None, identity=None, https_user=None, https_pass=None, onlyif=False, unless=False) +.B salt.states.git.latest(name, rev=None, target=None, runas=None, user=None, force=None, force_checkout=False, force_reset=False, submodules=False, mirror=False, bare=False, remote_name=\(aqorigin\(aq, always_fetch=False, identity=None, onlyif=False, unless=False) Make sure the repository is cloned to the given directory and is up to date .INDENT 7.0 .TP @@ -142380,6 +123589,12 @@ clone / before update .TP .B target Name of the target directory where repository is about to be cloned +.TP +.B runas +Name of the user performing repository management operations +.sp +Deprecated since version 0.17.0. + .TP .B user Name of the user performing repository management operations @@ -142394,10 +123609,6 @@ Force git to clone into pre\-existing directories (deletes contents) Force a checkout even if there might be overwritten changes (Default: False) .TP -.B force_reset -Force the checkout to \fB\-\-reset hard\fP to the remote ref -(Default: False) -.TP .B submodules Update submodules on clone or branch change (Default: False) .TP @@ -142419,19 +123630,8 @@ If a tag or branch name is used as the rev a fetch will not occur until the tag or branch name changes. Setting this to true will force a fetch to occur. Only applies when rev is set. (Default: False) .TP -.B depth -Defines depth in history when git a clone is needed in order to ensure -latest. E.g. \fBdepth: 1\fP is usefull when deploying from a repository -with a long history. Use rev to specify branch. This is not compatible with tags or revision IDs.(Default: \fBNone\fP) -.TP .B identity -A path on the minion server to a private key to use over SSH -.TP -.B https_user -HTTP Basic Auth username for HTTPS (only) clones -.TP -.B https_pass -HTTP Basic Auth password for HTTPS (only) clones +A path to a private key to use over SSH .TP .B onlyif A command to run as a check, run the named command only if the command @@ -142500,7 +123700,7 @@ else return True .UNINDENT .INDENT 0.0 .TP -.B salt.states.git.present(name, bare=True, user=None, force=False, shared=None) +.B salt.states.git.present(name, bare=True, runas=None, user=None, force=False) Make sure the repository is present in the given directory .INDENT 7.0 .TP @@ -142509,6 +123709,12 @@ Name of the directory where the repository is about to be created .TP .B bare Create a bare repository (Default: True) +.TP +.B runas +Name of the user performing repository management operations +.sp +Deprecated since version 0.17.0. + .TP .B user Name of the user performing repository management operations @@ -142519,16 +123725,6 @@ New in version 0.17.0. .B force Force\-create a new repository into an pre\-existing non\-git directory (deletes contents) -.TP -.B shared -.INDENT 7.0 -.INDENT 3.5 -Specify the permission for sharing, see git\-init for details (Default: None) -.UNINDENT -.UNINDENT -.sp -New in version XXXX. - .UNINDENT .UNINDENT .SS salt.states.glusterfs @@ -142536,64 +123732,6 @@ New in version XXXX. Manage glusterfs pool. .INDENT 0.0 .TP -.B salt.states.glusterfs.add_volume_bricks(name, bricks) -Add brick(s) to an existing volume -.INDENT 7.0 -.TP -.B name -Volume name -.TP -.B bricks -List of bricks to add to the volume -.UNINDENT -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C - -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B myvolume: -.INDENT 7.0 -.TP -.B glusterfs.add_volume_bricks: -.INDENT 7.0 -.IP \(bu 2 -.INDENT 2.0 -.TP -.B bricks: -.INDENT 7.0 -.IP \(bu 2 -host1:/srv/gluster/drive1 -.IP \(bu 2 -host2:/srv/gluster/drive2 -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.TP -.B Replicated Volume: -.INDENT 7.0 -.TP -.B glusterfs.add_volume_bricks: -.INDENT 7.0 -.IP \(bu 2 -name: volume2 -.IP \(bu 2 -bricks: -\- host1:/srv/gluster/drive2 -\- host2:/srv/gluster/drive3 -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP .B salt.states.glusterfs.created(name, bricks, stripe=False, replica=False, device_vg=False, transport=\(aqtcp\(aq, start=False) Check if volume already exists .INDENT 7.0 @@ -142720,232 +123858,6 @@ desktop_lockdown: sets values in the org.gnome.desktop.lockdown schema .B salt.states.gnomedesktop.wm_preferences(name, user=None, action_double_click_titlebar=None, action_middle_click_titlebar=None, action_right_click_titlebar=None, application_based=None, audible_bell=None, auto_raise=None, auto_raise_delay=None, button_layout=None, disable_workarounds=None, focus_mode=None, focus_new_windows=None, mouse_button_modifier=None, num_workspaces=None, raise_on_click=None, resize_with_right_button=None, theme=None, titlebar_font=None, titlebar_uses_system_font=None, visual_bell=None, visual_bell_type=None, workspace_names=None, **kwargs) wm_preferences: sets values in the org.gnome.desktop.wm.preferences schema .UNINDENT -.SS salt.states.grafana -.sp -Manage Grafana Dashboards -.sp -This module uses \fBelasticsearch\fP, which can be installed via package, or pip. -.sp -You can specify elasticsearch hosts directly to the module, or you can use an -elasticsearch profile via pillars: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -mygrafanaprofile: - hosts: - \- es1.example.com:9200 - \- es2.example.com:9200 - index: grafana\-dash -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -# Basic usage (uses default pillar profile key \(aqgrafana\(aq) -Ensure myservice dashboard is managed: - grafana.dashboard_present: - \- name: myservice - \- dashboard_from_pillar: default - \- rows_from_pillar: - \- systemhealth - \- requests - -# Passing hosts in -Ensure myservice dashboard is managed: - grafana.dashboard_present: - \- name: myservice - \- dashboard_from_pillar: default - \- rows: - \- collapse: false - editable: true - height: 150px - title: System Health - panels: - \- aliasColors: {} - id: 200000 - annotate: - enable: false - bars: false - datasource: null - editable: true - error: false - fill: 7 - grid: - leftMax: 100 - leftMin: null - rightMax: null - rightMin: null - threshold1: 60 - threshold1Color: rgb(216, 27, 27) - threshold2: null - threshold2Color: rgba(234, 112, 112, 0.22) - leftYAxisLabel: \(aq\(aq - legend: - avg: false - current: false - max: false - min: false - show: false - total: false - values: false - lines: true - linewidth: 1 - nullPointMode: connected - percentage: false - pointradius: 5 - points: false - renderer: flot - resolution: 100 - scale: 1 - seriesOverrides: [] - span: 4 - stack: false - steppedLine: false - targets: - \- target: cloudwatch.aws.ec2.mysrv.cpuutilization.average - title: CPU (asg average) - tooltip: - query_as_alias: true - shared: false - value_type: cumulative - type: graph - x\-axis: true - y\-axis: true - y_formats: - \- short - \- short - zerofill: true - \- rows_from_pillar: - \- systemhealth - \- requests - \- profile: - hosts: - \- es1.example.com:9200 - \- es2.example.com:9200 - index: grafana\-dash - -# Using a profile from pillars -Ensure myservice dashboard is managed: - grafana.dashboard_present: - \- name: myservice - \- dashboard: - annotations: - enable: true - list: [] - editable: true - hideAllLegends: false - hideControls: false - nav: - \- collapse: false - enable: true - notice: false - now: true - refresh_intervals: - \- 10s - \- 30s - \- 1m - \- 5m - \- 15m - \- 30m - \- 1h - \- 2h - \- 1d - status: Stable - time_options: - \- 5m - \- 15m - \- 1h - \- 2h - \- 3h - \- 4h - \- 6h - \- 12h - \- 1d - \- 2d - \- 4d - \- 7d - \- 16d - \- 30d - type: timepicker - originalTitle: dockerregistry - refresh: 1m - rows: [] - sharedCrosshair: false - style: dark - tags: [] - templating: - enable: true - list: [] - time: - from: now\-2h - to: now - timezone: browser - \- rows_from_pillars: - \- systemhealth - \- requests - \- profile: mygrafanaprofile -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The behavior of this module is to create dashboards if they do not exist, to -add rows if they do not exist in existing dashboards, and to update rows if -they exist in dashboards. The module will not manage rows that are not defined, -.INDENT 0.0 -.INDENT 3.5 -allowing users to manage their own custom rows. -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.grafana.dashboard_absent(name, hosts=None, profile=\(aqgrafana\(aq) -Ensure the named grafana dashboard is deleted. -.INDENT 7.0 -.TP -.B name -Name of the grafana dashboard. -.TP -.B profile -A pillar key or dict that contains a list of hosts and an -elasticsearch index to use. -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.grafana.dashboard_present(name, dashboard=None, dashboard_from_pillar=None, rows=None, rows_from_pillar=None, profile=\(aqgrafana\(aq) -Ensure the grafana dashboard exists and is managed. -.INDENT 7.0 -.TP -.B name -Name of the grafana dashboard. -.TP -.B dashboard -A dict that defines a dashboard that should be managed. -.TP -.B dashboard_from_pillar -A pillar key that contains a grafana dashboard dict. Mutually exclusive -with dashboard. -.TP -.B rows -A list of grafana rows. -.TP -.B rows_from_pillar -A list of pillar keys that contain lists of grafana dashboard rows. -Rows defined in the pillars will be appended to the rows defined in the -state. -.TP -.B profile -A pillar key or dict that contains a list of hosts and an -elasticsearch index to use. -.UNINDENT -.UNINDENT .SS salt.states.grains .SS Manage grains on the minion .sp @@ -143022,14 +123934,17 @@ grain_name: .INDENT 0.0 .TP .B salt.states.grains.list_absent(name, value) -Delete a value from a grain formed as a list +Delete a value from a grain formed as a list. +.sp +New in version 2014.1.0. + .INDENT 7.0 .TP .B name -The grain name +The grain name. .TP .B value -The value to delete from the grain list +The value to delete from the grain list. .UNINDENT .sp The grain should be \fI\%list type\fP @@ -143045,6 +123960,22 @@ roles: .fi .UNINDENT .UNINDENT +.sp +For multiple grains, the syntax looks like: +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +roles: + grains.list_absent: + \- value: + \- web + \- dev +.ft P +.fi +.UNINDENT +.UNINDENT .UNINDENT .INDENT 0.0 .TP @@ -143052,14 +123983,14 @@ roles: New in version 2014.1.0. .sp -Ensure the value is present in the list type grain +Ensure the value is present in the list type grain. .INDENT 7.0 .TP .B name -The grain name +The grain name. .TP .B value -The value is present in the list type grain +The value is present in the list type grain. .UNINDENT .sp The grain should be \fI\%list type\fP @@ -143075,6 +124006,22 @@ roles: .fi .UNINDENT .UNINDENT +.sp +For multiple grains, the syntax looks like: +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +roles: + grains.list_present: + \- value: + \- web + \- dev +.ft P +.fi +.UNINDENT +.UNINDENT .UNINDENT .INDENT 0.0 .TP @@ -143197,7 +124144,7 @@ https://bitbucket.org/example_user/example_repo: .UNINDENT .INDENT 0.0 .TP -.B salt.states.hg.latest(name, rev=None, target=None, clean=False, user=None, identity=None, force=False, opts=False) +.B salt.states.hg.latest(name, rev=None, target=None, clean=False, runas=None, user=None, force=False, opts=False) Make sure the repository is cloned to the given directory and is up to date .INDENT 7.0 .TP @@ -143208,22 +124155,19 @@ Address of the remote repository as passed to "hg clone" The remote branch, tag, or revision hash to clone/pull .TP .B target -Target destination directory path on minion to clone into +Name of the target directory where repository is about to be cloned .TP .B clean Force a clean update with \-C (Default: False) .TP -.B user +.B runas Name of the user performing repository management operations .sp -New in version 0.17.0. +Deprecated since version 0.17.0. .TP -.B identity -Private SSH key on the minion server for authentication (\fI\%ssh://\fP) -.sp -New in version 2015.2.0. - +.B user +Name of the user performing repository management operations .TP .B force Force hg to clone into pre\-existing directories (deletes contents) @@ -143232,101 +124176,6 @@ Force hg to clone into pre\-existing directories (deletes contents) Include additional arguments and options to the hg command line .UNINDENT .UNINDENT -.SS salt.states.hipchat -.SS Send a message to Hipchat -.sp -This state is useful for sending messages to Hipchat during state runs. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -hipchat\-message: - hipchat.send_message: - \- room_id: 123456 - \- from_name: SuperAdmin - \- message: \(aqThis state was executed successfully.\(aq - \- api_key: peWcBiMOS9HrZG15peWcBiMOS9HrZG15 - \- api_version: v1 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The api key can be specified in the master or minion configuration like below: -.. code\-block:: yaml -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.TP -.B hipchat: -api_key: peWcBiMOS9HrZG15peWcBiMOS9HrZG15 -api_version: v1 -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.hipchat.send_message(name, room_id, from_name, message, api_key=None, api_version=None, message_color=\(aqyellow\(aq, notify=False) -Send a message to a Hipchat room. -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -hipchat\-message: - hipchat.send_message: - \- room_id: 123456 - \- from_name: SuperAdmin - \- message: \(aqThis state was executed successfully.\(aq - \- api_key: peWcBiMOS9HrZG15peWcBiMOS9HrZG15 - \- api_version: v1 - \- color: green - \- notify: True -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The following parameters are required: -.INDENT 7.0 -.TP -.B name -The unique name for this event. -.TP -.B room_id -The room to send the message to. Can either be the ID or the name. -.TP -.B from_name -The name of that is to be shown in the "from" field. -If not specified, defaults to. -.TP -.B message -The message that is to be sent to the Hipchat room. -.UNINDENT -.sp -The following parameters are optional: -api_key -.INDENT 7.0 -.INDENT 3.5 -The api key for Hipchat to use for authentication, -if not specified in the configuration options of master or minion. -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B api_version -The api version for Hipchat to use, -if not specified in the configuration options of master or minion. -.TP -.B color -The color the Hipchat message should be displayed in. One of the following, default: yellow -"yellow", "red", "green", "purple", "gray", or "random". -.TP -.B notify -Should a notification in the room be raised. -.UNINDENT -.UNINDENT .SS salt.states.host .SS Management of addresses and names in hosts file .sp @@ -143455,16 +124304,6 @@ see \fBsalt.module.htpasswd.useradd\fP touch the file even if user already created .UNINDENT .UNINDENT -.SS salt.states.http -.sp -HTTP monitoring states -.sp -Perform an HTTP query and statefully return the result -.INDENT 0.0 -.TP -.B salt.states.http.query(name, match=None, match_type=\(aqstring\(aq, status=None, **kwargs) -Perform an HTTP query and statefully return the result -.UNINDENT .SS salt.states.incron .SS Management of incron, the inotify cron .sp @@ -143707,7 +124546,8 @@ for example /etc/sysctl.conf .nf .ft C /home/saltminion/api\-paste.ini: - ini.options_present: + ini_manage: + \- options_absent \- sections: test: \- testkey @@ -143733,7 +124573,8 @@ changes dict will contain the list of changes made .nf .ft C /home/saltminion/api\-paste.ini: - ini.options_present: + ini_manage: + \- options_present \- sections: test: testkey: \(aqtestval\(aq @@ -143759,7 +124600,8 @@ changes dict will contain the list of changes made .nf .ft C /home/saltminion/api\-paste.ini: - ini.sections_absent: + ini_manage: + \- sections_absent \- sections: \- test \- test1 @@ -143780,7 +124622,8 @@ changes dict will contain the sections that changed .nf .ft C /home/saltminion/api\-paste.ini: - ini.sections_present: + ini_manage: + \- sections_present \- sections: test: testkey: testval @@ -144112,26 +124955,10 @@ httpd: \- proto: tcp \- sport: 1025:65535 \- save: True - -default to accept: - iptables.set_policy: - \- chain: INPUT - \- policy: ACCEPT .ft P .fi .UNINDENT .UNINDENT -.sp -\fBNOTE:\fP -.INDENT 0.0 -.INDENT 3.5 -Various functions of the \fBiptables\fP module use the \fB\-\-check\fP option. If -the version of \fBiptables\fP on the target system does not include this -option, an alternate version of this check will be performed using the -output of iptables\-save. This may have unintended consequences on legacy -releases of \fBiptables\fP\&. -.UNINDENT -.UNINDENT .INDENT 0.0 .TP .B salt.states.iptables.append(name, family=\(aqipv4\(aq, **kwargs) @@ -144245,12 +125072,6 @@ specified as \fIconnstate\fP instead of \fIstate\fP (not to be confused with .UNINDENT .INDENT 0.0 .TP -.B salt.states.iptables.mod_aggregate(low, chunks, running) -The mod_aggregate function which looks up all rules in the available -low chunks and merges them into a single rules ref in the present low data -.UNINDENT -.INDENT 0.0 -.TP .B salt.states.iptables.set_policy(name, family=\(aqipv4\(aq, **kwargs) New in version 2014.1.0. @@ -144260,446 +125081,6 @@ Sets the default policy for iptables firewall tables .TP .B family Networking family, either ipv4 or ipv6 -.TP -.B policy -The requested table policy -.UNINDENT -.UNINDENT -.SS salt.states.jboss7 -.sp -Manage JBoss 7 Application Server via CLI interface -.sp -This state uses jboss\-cli.sh script from JBoss installation and parses its output to determine execution result. -.sp -In order to run each state, jboss_config dictionary with the following properties must be passed: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -jboss: - cli_path: \(aq/opt/jboss/jboss\-7.0/bin/jboss\-cli.sh\(aq - controller: 10.11.12.13:9999 - cli_user: \(aqjbossadm\(aq - cli_password: \(aqjbossadm\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -If controller doesn\(aqt require password, then passing cli_user and cli_password parameters is not obligatory. -.sp -Example of application deployment: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -application_deployed: - jboss7.deployed: - \- artifact: - artifactory_url: http://artifactory.intranet.company.com/artifactory - repository: \(aqext\-release\-local\(aq - artifact_id: \(aqwebcomponent\(aq - group_id: \(aqcom.company.application\(aq - packaging: \(aqwar\(aq - version: \(aq0.1\(aq - target_dir: \(aq/tmp\(aq - \- jboss_config: - cli_path: \(aq/opt/jboss/jboss\-7.0/bin/jboss\-cli.sh\(aq - controller: 10.11.12.13:9999 - cli_user: \(aqjbossadm\(aq - cli_password: \(aqjbossadm\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Since same dictionary with configuration will be used in all the states, it is much more convenient to move jboss configuration and other properties -to pillar. For example, configuration of jboss server, artifactory address and application version could be moved to pillars: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -application_deployed: - jboss7.deployed: - \- artifact: - artifactory_url: {{ pillar[\(aqartifactory\(aq][\(aqurl\(aq] }} - repository: {{ pillar[\(aqartifactory\(aq][\(aqrepository\(aq] }} - artifact_id: \(aqwebcomponent\(aq - group_id: \(aqcom.company.application\(aq - packaging: \(aqwar\(aq - version: {{ pillar[\(aqwebcomponent\-artifact\(aq][\(aqversion\(aq] }} - latest_snapshot: {{ pillar[\(aqwebcomponent\-artifact\(aq][\(aqlatest_snapshot\(aq] }} - repository: {{ pillar[\(aqwebcomponent\-artifact\(aq][\(aqrepository\(aq] }} - \- jboss_config: {{ pillar[\(aqjboss\(aq] }} -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Configuration in pillars: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -artifactory: - url: \(aqhttp://artifactory.intranet.company.com/artifactory\(aq - repository: \(aqlibs\-snapshots\-local\(aq - -webcomponent\-artifact: - repository: \(aqlibs\-snapshots\-local\(aq - latest_snapshot: True - version: \-1 #If latest_snapshot then version is ignored -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -For the sake of brevity, examples for each state assume that jboss_config is moved to pillars. -.INDENT 0.0 -.TP -.B salt.states.jboss7.bindings_exist(name, jboss_config, bindings) -Ensures that given JNDI binding are present on the server. -If a binding doesn\(aqt exist on the server it will be created. -If it already exists its value will be changed. -.INDENT 7.0 -.TP -.B jboss_config: -Dict with connection properties (see state description) -.TP -.B bindings: -Dict with bindings to set. -.UNINDENT -.sp -Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -jndi_entries_created: - jboss7.bindings_exist: - \- bindings: - \(aqjava:global/sampleapp/environment\(aq: \(aqDEV\(aq - \(aqjava:global/sampleapp/configurationFile\(aq: \(aq/var/opt/sampleapp/config.properties\(aq - \- jboss_config: {{ pillar[\(aqjboss\(aq] }} -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.jboss7.datasource_exists(name, jboss_config, datasource_properties, recreate=False) -Ensures that a datasource with given properties exist on the jboss instance. -If datasource doesn\(aqt exist, it is created, otherwise only the properties that are different will be updated. -.INDENT 7.0 -.TP -.B name -Datasource property name -.TP -.B jboss_config -Dict with connection properties (see state description) -.TP -.B datasource_properties -Dict with datasource properties -.TP -.B recreate -False -If set to True and datasource exists it will be removed and created again. However, if there are deployments that depend on the datasource, it will not me possible to remove it. -.UNINDENT -.sp -Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -sampleDS: - jboss7.datasource_exists: - \- recreate: False - \- datasource_properties: - driver\-name: mysql - connection\-url: \(aqjdbc:mysql://localhost:3306/sampleDatabase\(aq - jndi\-name: \(aqjava:jboss/datasources/sampleDS\(aq - user\-name: sampleuser - password: secret - min\-pool\-size: 3 - use\-java\-context: True - \- jboss_config: {{ pillar[\(aqjboss\(aq] }} -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.jboss7.deployed(name, jboss_config, artifact=None, salt_source=None) -Ensures that the given application is deployed on server. -.INDENT 7.0 -.TP -.B jboss_config: -Dict with connection properties (see state description) -.TP -.B artifact: -.INDENT 7.0 -.TP -.B If set, the artifact will be fetched from artifactory. This is a Dict object with the following properties: -.INDENT 7.0 -.IP \(bu 2 -artifactory_url: Full url to artifactory instance, for example: \fI\%http://artifactory.intranet.company.com/artifactory\fP -.IP \(bu 2 -repository: One of the repositories, for example: libs\-snapshots, ext\-release\-local, etc.. -.IP \(bu 2 -artifact_id: Artifact ID of the artifact -.IP \(bu 2 -group_id: Group ID of the artifact -.IP \(bu 2 -packaging: war/jar/ear, etc... -.IP \(bu 2 -version: Artifact version. If latest_snapshot is set to True, the value of this attribute will be ignored, and newest snapshot will be taken instead. -.IP \(bu 2 -latest_snapshot: If set to True and repository is a snapshot repository it will automatically select the newest snapshot. -.IP \(bu 2 -snapshot_version: Exact version of the snapshot (with timestamp). A snapshot version may have several builds and a way to differentiate is to provide a build timestamp. -.IP \(bu 2 -target_dir: Temporary directory on minion where artifacts will be downloaded -.UNINDENT -.UNINDENT -.TP -.B salt_source: -.INDENT 7.0 -.TP -.B If set, the artifact to be deployed will be fetched from salt master. This is a Dict object with the following properties: -.INDENT 7.0 -.IP \(bu 2 -source: File on salt master (eg. salt://application\-web\-0.39.war) -.IP \(bu 2 -target_file: Temporary file on minion to save file to (eg. \(aq/tmp/application\-web\-0.39.war\(aq) -.IP \(bu 2 -undeploy: Regular expression to match against existing deployments. If any deployment matches the regular expression then it will be undeployed. -.UNINDENT -.UNINDENT -.UNINDENT -.sp -The deployment consists of the following steps: -.INDENT 7.0 -.IP \(bu 2 -Fetch artifact (salt filesystem, artifact or filesystem on minion) -.IP \(bu 2 -Check if same artifact is not deployed yet (perhaps with different version) -.IP \(bu 2 -Undeploy the artifact if it is already deployed -.IP \(bu 2 -Deploy the new artifact -.UNINDENT -.sp -Examples: -.sp -Deployment of a file from Salt file system: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -application_deployed: - jboss7.deployed: - \- salt_source: - source: salt://application\-web\-0.39.war - target_file: \(aq/tmp/application\-web\-0.39.war\(aq - undeploy: \(aqapplication\-web\-.*\(aq - \- jboss_config: {{ pillar[\(aqjboss\(aq] }} -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Here, application\-web\-0.39.war file is downloaded from Salt file system to /tmp/application\-web\-0.39.war file on minion. -Existing deployments are checked if any of them matches \(aqapplication\-web\-.*\(aq regular expression, and if so then it -is undeployed before deploying the application. This is useful to automate deployment of new application versions. -.sp -JBoss state is capable of deploying artifacts directly from Artifactory repository. Here are some examples of deployments: -.INDENT 7.0 -.IP 1. 3 -Deployment of released version of artifact from Artifactory. -.UNINDENT -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -application_deployed: - jboss7.deployed: - \- artifact: - artifactory_url: http://artifactory.intranet.company.com/artifactory - repository: \(aqext\-release\-local\(aq - artifact_id: \(aqwebcomponent\(aq - group_id: \(aqcom.company.application\(aq - packaging: \(aqwar\(aq - version: \(aq0.1\(aq - target_dir: \(aq/tmp\(aq - \- jboss_config: {{ pillar[\(aqjboss\(aq] }} -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -This performs the following operations: -.INDENT 7.0 -.IP \(bu 2 -Download artifact from artifactory. In the example above the artifact will be fetched from: \fI\%http://artifactory.intranet.company.com/artifactory/ext\-release\-local/com/company/application/webcomponent/0.1/webcomponent\-0.1.war\fP -As a rule, for released versions the artifacts are downloaded from: artifactory_url/repository/group_id_with_slashed_instead_of_dots/artifact_id/version/artifact_id\-version.packaging\(aq -This follows artifactory convention for artifact resolution. By default the artifact will be downloaded to /tmp directory on minion. -.IP \(bu 2 -Connect to JBoss via controller (defined in jboss_config dict) and check if the artifact is not deployed already. In case of artifactory -it will check if any deployment\(aqs name starts with artifact_id value. If deployment already exists it will be undeployed -.IP \(bu 2 -Deploy the downloaded artifact to JBoss via cli interface. -.UNINDENT -.INDENT 7.0 -.IP 2. 3 -Deployment of last updated version of given SNAPSHOT version of artifact from Artifactory. -.UNINDENT -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -application_deployed: - jboss7.deployed: - \- artifact: - artifactory_url: http://artifactory.intranet.company.com/artifactory - repository: \(aqext\-snapshot\-local\(aq - artifact_id: \(aqwebcomponent\(aq - group_id: \(aqcom.company.application\(aq - packaging: \(aqwar\(aq - version: \(aq0.1\-SNAPSHOT\(aq - \- jboss_config: {{ pillar[\(aqjboss\(aq] }} -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Deploying snapshot version involves an additional step of resolving the exact version of the artifact (including the timestamp), which -is not necessary when deploying a release. -In the example above first a request will be made to retrieve the update timestamp from: -\fI\%http://artifactory.intranet.company.com/artifactory/ext\-snapshot\-local/com/company/application/webcomponent/0.1\-SNAPSHOT/maven\-metadata.xml\fP -Then the artifact will be fetched from -\fI\%http://artifactory.intranet.company.com/artifactory/ext\-snapshot\-local/com/company/application/webcomponent/0.1\-SNAPSHOT/webcomponent\-RESOLVED_SNAPSHOT_VERSION.war\fP -.sp -\fBNOTE:\fP -.INDENT 7.0 -.INDENT 3.5 -In order to perform a snapshot deployment you have to: -.INDENT 0.0 -.IP \(bu 2 -Set repository to a snapshot repository. -.IP \(bu 2 -Choose a version that ends with "SNAPSHOT" string. -Snapshot repositories have a different layout and provide some extra information that is needed for deployment of the last or a specific snapshot. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 7.0 -.IP 3. 3 -Deployment of SNAPSHOT version (with exact timestamp) of artifact from Artifactory. -.UNINDENT -.sp -If you need to deploy an exact version of the snapshot you may provide snapshot_version parameter. -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -application_deployed: - jboss7.deployed: - \- artifact: - artifactory_url: http://artifactory.intranet.company.com/artifactory - repository: \(aqext\-snapshot\-local\(aq - artifact_id: \(aqwebcomponent\(aq - group_id: \(aqcom.company.application\(aq - packaging: \(aqwar\(aq - version: \(aq0.1\-SNAPSHOT\(aq - snapshot_version: \(aq0.1\-20141023.131756\-19\(aq - \- jboss_config: {{ pillar[\(aqjboss\(aq] }} -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -In this example the artifact will be retrieved from: -\fI\%http://artifactory.intranet.company.com/artifactory/ext\-snapshot\-local/com/company/application/webcomponent/0.1\-SNAPSHOT/webcomponent\-0.1\-20141023.131756\-19.war\fP -.INDENT 7.0 -.IP 4. 3 -Deployment of latest snapshot of artifact from Artifactory. -.UNINDENT -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -application_deployed: - jboss7.deployed: - \- artifact: - artifactory_url: http://artifactory.intranet.company.com/artifactory - repository: \(aqext\-snapshot\-local\(aq - artifact_id: \(aqwebcomponent\(aq - group_id: \(aqcom.company.application\(aq - packaging: \(aqwar\(aq - latest_snapshot: True - \- jboss_config: {{ pillar[\(aqjboss\(aq] }} -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Instead of providing an exact version of a snapshot it is sometimes more convenient to get the newest version. If artifact.latest_snapshot -is set to True, then the newest snapshot will be downloaded from Artifactory. In this case it is not necessary to specify version. -This is particulary useful when integrating with CI tools that will deploy the current snapshot to the Artifactory. -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.jboss7.reloaded(name, jboss_config, timeout=60, interval=5) -Reloads configuration of jboss server. -.INDENT 7.0 -.TP -.B jboss_config: -Dict with connection properties (see state description) -.TP -.B timeout: -Time to wait until jboss is back in running state. Default timeout is 60s. -.TP -.B interval: -Interval between state checks. Default interval is 5s. Decreasing the interval may slightly decrease waiting time -but be aware that every status check is a call to jboss\-cli which is a java process. If interval is smaller than -process cleanup time it may easily lead to excessive resource consumption. -.UNINDENT -.sp -This step performs the following operations: -.INDENT 7.0 -.IP \(bu 2 -Ensures that server is in running or reload\-required state (by reading server\-state attribute) -.IP \(bu 2 -Reloads configuration -.IP \(bu 2 -Waits for server to reload and be in running state -.UNINDENT -.sp -Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -configuration_reloaded: - jboss7.reloaded: - \- jboss_config: {{ pillar[\(aqjboss\(aq] }} -.ft P -.fi -.UNINDENT .UNINDENT .UNINDENT .SS salt.states.keyboard @@ -145080,31 +125461,6 @@ Defaults to \fB/etc/pki\fP, this is the root location used for libvirt keys on the hypervisor .UNINDENT .UNINDENT -.SS salt.states.linux_acl -.sp -Linux File Access Control Lists -.sp -Ensure a Linux ACL is present -.INDENT 0.0 -.INDENT 3.5 -.UNINDENT -.UNINDENT -.sp -Ensure a Linux ACL does not exist -.INDENT 0.0 -.INDENT 3.5 -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.linux_acl.absent(name, acl_type, acl_name, perms, recurse=False) -Ensure a Linux ACL does not exist -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.linux_acl.present(name, acl_type, acl_name, perms, recurse=False) -Ensure a Linux ACL is present -.UNINDENT .SS salt.states.locale .SS Management of languages/locales .sp @@ -145376,23 +125732,24 @@ lvstest: .UNINDENT .UNINDENT .SS salt.states.lxc -.SS Manage Linux Containers +.SS lxc / Spin up and control LXC containers .INDENT 0.0 .TP .B salt.states.lxc.absent(name) -Ensure a container is not present, destroying it if present +Destroy a container .INDENT 7.0 .TP .B name -Name of the container to destroy +id of the container to destroy .UNINDENT .INDENT 7.0 .INDENT 3.5 .sp .nf .ft C -web01: - lxc.absent +destroyer: + lxc.absent: + \- name: my_instance_name2 .ft P .fi .UNINDENT @@ -145401,30 +125758,103 @@ web01: .INDENT 0.0 .TP .B salt.states.lxc.cloned(name, orig, snapshot=True, size=None, vgname=None, profile=None) -Deprecated since version 2015.2.0: Use \fI\%lxc.present\fP - +Clone a container +.INDENT 7.0 +.TP +.B name +id of the container to clone to +.TP +.B orig +id of the container to clone from +.TP +.B snapshot +do we use snapshots +.TP +.B size +Which size +.TP +.B vgname +If LVM, which volume group +.TP +.B profile +pillar lxc profile +.UNINDENT +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +myclone: + lxc.cloned: + \- name: my_instance_name2 + \- orig: ubuntu + \- vgname: lxc + \- snapshot: true +.ft P +.fi +.UNINDENT +.UNINDENT .UNINDENT .INDENT 0.0 .TP -.B salt.states.lxc.created(name, **kwargs) -Deprecated since version 2015.2.0: Use \fI\%lxc.present\fP - +.B salt.states.lxc.created(name, template=\(aqubuntu\(aq, profile=None, fstype=None, size=None, backing=None, vgname=None, lvname=None) +Create a container using a template +.INDENT 7.0 +.TP +.B name +id of the container to act on +.TP +.B template +template to create from +.TP +.B profile +pillar lxc profile +.TP +.B fstype +fstype to use +.TP +.B size +Which size +.TP +.B backing +Which backing +.INDENT 7.0 +.TP +.B None +Filesystem +.TP +.B lvm +lv +.TP +.B brtfs +brtfs +.UNINDENT +.TP +.B vgname +If LVM, which volume group +.TP +.B lvname +If LVM, which lv +.UNINDENT +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +mycreation: + lxc.created: + \- name: my_instance_name2 + \- backing: lvm + \- size: 1G + \- template: ubuntu +.ft P +.fi +.UNINDENT +.UNINDENT .UNINDENT .INDENT 0.0 .TP .B salt.states.lxc.edited_conf(name, lxc_conf=None, lxc_conf_unset=None) -.sp -\fBWARNING:\fP -.INDENT 7.0 -.INDENT 3.5 -This state is unsuitable for setting parameters that appear more than -once in an LXC config file, or parameters which must appear in a -certain order (such as when configuring more than one network -interface). It is slated to be replaced, and as of version 2015.2.0 it -is deprecated. -.UNINDENT -.UNINDENT -.sp Edit LXC configuration options .INDENT 7.0 .INDENT 3.5 @@ -145436,7 +125866,7 @@ setconf: \- name: ubuntu \- lxc_conf: \- network.ipv4.ip: 10.0.3.6 - \- lxc_conf_unset: +\- lxc_conf_unset: \- lxc.utsname .ft P .fi @@ -145445,225 +125875,45 @@ setconf: .UNINDENT .INDENT 0.0 .TP -.B salt.states.lxc.frozen(name, start=True) -New in version 2015.2.0. - -.sp -Ensure that a container is frozen -.sp -\fBNOTE:\fP -.INDENT 7.0 -.INDENT 3.5 -This state does not enforce the existence of the named container, it -just freezes the container if it is running. To ensure that the named -container exists, use \fI\%lxc.present\fP\&. -.UNINDENT -.UNINDENT +.B salt.states.lxc.set_pass(name, password=None, user=None, users=None) +Set the password of system users inside containers .INDENT 7.0 .TP .B name -The name of the container +id of the container to act on .TP -.B start -True -Start container first, if necessary. If \fBFalse\fP, then this state will -fail if the container is not running. -.UNINDENT -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -web01: - lxc.frozen - -web02: - lxc.frozen: - \- start: False -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 +.B user +user to set password .TP -.B salt.states.lxc.present(name, running=None, clone_from=None, snapshot=False, profile=None, template=None, options=None, image=None, config=None, fstype=None, size=None, backing=None, vgname=None, lvname=None) -Changed in version 2015.2.0: The \fI\%lxc.created\fP state has been renamed -to \fBlxc.present\fP, and the \fI\%lxc.cloned\fP -state has been merged into this state. - -.sp -Create the named container if it does not exist -.INDENT 7.0 -.TP -.B name -The name of the container to be created -.TP -.B running -False.INDENT 7.0 -.IP \(bu 2 -If \fBTrue\fP, ensure that the container is running -.IP \(bu 2 -If \fBFalse\fP, ensure that the container is stopped -.IP \(bu 2 -If \fBNone\fP, do nothing with regards to the running state of the -container +.B users +users to set password to .UNINDENT -.sp -New in version 2015.2.0. - -.TP -.B clone_from -Create named container as a clone of the specified container -.TP -.B snapshot -False -Use Copy On Write snapshots (LVM). Only supported with \fBclone_from\fP\&. -.TP -.B profile -Profile to use in container creation (see the \fILXC Tutorial\fP for more information). Values in a -profile will be overridden by the parameters listed below. -.UNINDENT -.sp -\fBContainer Creation Arguments\fP -.INDENT 7.0 -.TP -.B template -The template to use. E.g., \(aqubuntu\(aq or \(aqfedora\(aq. Conflicts with the -\fBimage\fP argument. -.sp -\fBNOTE:\fP -.INDENT 7.0 -.INDENT 3.5 -The \fBdownload\fP template requires the following three parameters -to be defined in \fBoptions\fP: -.INDENT 0.0 -.IP \(bu 2 -\fBdist\fP \- The name of the distribution -.IP \(bu 2 -\fBrelease\fP \- Release name/version -.IP \(bu 2 -\fBarch\fP \- Architecture of the container -.UNINDENT -.sp -The available images can be listed using the \fBlxc.images\fP function. -.UNINDENT -.UNINDENT -.TP -.B options -New in version 2015.2.0. - -.sp -Template\-specific options to pass to the lxc\-create command. These -correspond to the long options (ones beginning with two dashes) that -the template script accepts. For example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -web01: - lxc.present: - \- template: download - \- options: - dist: centos - release: 6 - arch: amd64 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Remember to double\-indent the options, due to \fIhow PyYAML works\fP\&. -.TP -.B image -A tar archive to use as the rootfs for the container. Conflicts with -the \fBtemplate\fP argument. -.TP -.B backing -The type of storage to use. Set to \fBlvm\fP to use an LVM group. -Defaults to filesystem within /var/lib/lxc. -.TP -.B fstype -Filesystem type to use on LVM logical volume -.TP -.B size -Size of the volume to create. Only applicable if \fBbacking\fP is set to -\fBlvm\fP\&. -.TP -.B vgname -lxc -Name of the LVM volume group in which to create the volume for this -container. Only applicable if \fBbacking\fP is set to \fBlvm\fP\&. -.TP -.B lvname -Name of the LVM logical volume in which to create the volume for this -container. Only applicable if \fBbacking\fP is set to \fBlvm\fP\&. -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.lxc.running(name, restart=False) -Changed in version 2015.2.0: The \fI\%lxc.started\fP state has been renamed -to \fBlxc.running\fP - -.sp -Ensure that a container is running -.sp -\fBNOTE:\fP -.INDENT 7.0 -.INDENT 3.5 -This state does not enforce the existence of the named container, it -just starts the container if it is not running. To ensure that the -named container exists, use \fI\%lxc.present\fP\&. -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B name -The name of the container -.TP -.B restart -False -Restart container if it is already running -.UNINDENT -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -web01: - lxc.running - -web02: - lxc.running: - \- restart: True -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.lxc.set_pass(name, **kwargs) -Deprecated since version 2015.2.0. - -.sp -This state function has been disabled, as it did not conform to design -guidelines. Specifically, due to the fact that \fBlxc.set_password\fP uses \fBchpasswd(8)\fP to set the password, -there was no method to make this action idempotent (in other words, the -password would be changed every time). This makes this state redundant, -since the following state will do the same thing: .INDENT 7.0 .INDENT 3.5 .sp .nf .ft C setpass: - module.run: - \- name: set_pass - \- m_name: root - \- password: secret + lxc.stopped: + \- name: my_instance_name2 + \- password: s3cret + \- user: foo +.ft P +.fi +.UNINDENT +.UNINDENT +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +setpass2: + lxc.stopped: + \- name: my_instance_name2 + \- password: s3cret + \- users: + \- foo + \- bar .ft P .fi .UNINDENT @@ -145672,44 +125922,45 @@ setpass: .INDENT 0.0 .TP .B salt.states.lxc.started(name, restart=False) -Deprecated since version 2015.2.0: Use \fI\%lxc.running\fP - -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.lxc.stopped(name, kill=False) -Ensure that a container is stopped -.sp -\fBNOTE:\fP -.INDENT 7.0 -.INDENT 3.5 -This state does not enforce the existence of the named container, it -just stops the container if it running or frozen. To ensure that the -named container exists, use \fI\%lxc.present\fP, or use the \fI\%lxc.absent\fP state to ensure that the container does not -exist. -.UNINDENT -.UNINDENT +Start a container .INDENT 7.0 .TP .B name -The name of the container +id of the container to start .TP -.B kill -False -Do not wait for the container to stop, kill all tasks in the container. -Older LXC versions will stop containers like this irrespective of this -argument. -.sp -New in version 2015.2.0. - +.B force +force reboot .UNINDENT .INDENT 7.0 .INDENT 3.5 .sp .nf .ft C -web01: - lxc.stopped +destroyer: + lxc.started: + \- name: my_instance_name2 +.ft P +.fi +.UNINDENT +.UNINDENT +.UNINDENT +.INDENT 0.0 +.TP +.B salt.states.lxc.stopped(name) +Stop a container +.INDENT 7.0 +.TP +.B name +id of the container to stop +.UNINDENT +.INDENT 7.0 +.INDENT 3.5 +.sp +.nf +.ft C +sleepingcontainer: + lxc.stopped: + \- name: my_instance_name2 .ft P .fi .UNINDENT @@ -145775,13 +126026,7 @@ A state module for creating or destroying software RAID devices. .ft C /dev/md0: raid.present: - \- level: 5 - \- devices: - \- /dev/xvdd - \- /dev/xvde - \- /dev/xvdf - \- chunk: 256 - \- run: True + \- opts: level=1 chunk=256 raid\-devices=2 /dev/xvdd /dev/xvde .ft P .fi .UNINDENT @@ -146171,23 +126416,6 @@ disable_nfs: .fi .UNINDENT .UNINDENT -.sp -Note that some modules read all or some of the arguments from a list of keyword -arguments. For example: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -mine.send: - module.run: - \- func: network.ip_addrs - \- kwargs: - interface: eth0 -.ft P -.fi -.UNINDENT -.UNINDENT .INDENT 0.0 .TP .B salt.states.module.mod_watch(name, **kwargs) @@ -146297,20 +126525,19 @@ Ensure that the named user is absent The name of the user to remove .TP .B user -MongoDB user with sufficient privilege to create the user +The user to connect as (must be able to create the user) .TP .B password -Password for the admin user specified by the \fBuser\fP parameter +The password of the user .TP .B host -The hostname/IP address of the MongoDB server +The host to connect to .TP .B port -The port on which MongoDB is listening +The port to connect to .TP .B database -The database from which to remove the user specified by the \fBname\fP -parameter +The database to create the user in (if the db doesn\(aqt exist, it will be created) .UNINDENT .UNINDENT .INDENT 0.0 @@ -146323,47 +126550,22 @@ Ensure that the user is present with the specified properties The name of the user to manage .TP .B passwd -The password of the user to manage +The password of the user .TP .B user -MongoDB user with sufficient privilege to create the user +The user to connect as (must be able to create the user) .TP .B password -Password for the admin user specified with the \fBuser\fP parameter +The password of the user .TP .B host -The hostname/IP address of the MongoDB server +The host to connect to .TP .B port -The port on which MongoDB is listening +The port to connect to .TP .B database -The database in which to create the user -.sp -\fBNOTE:\fP -.INDENT 7.0 -.INDENT 3.5 -If the database doesn\(aqt exist, it will be created. -.UNINDENT -.UNINDENT -.UNINDENT -.sp -Example: -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -mongouser\-myapp: - mongodb_user.present: - \- name: myapp - \- passwd: password\-of\-myapp - # Connect as admin:sekrit - \- user: admin - \- password: sekrit -.ft P -.fi -.UNINDENT +The database to create the user in (if the db doesn\(aqt exist, it will be created) .UNINDENT .UNINDENT .SS salt.states.mount @@ -146398,7 +126600,7 @@ Mount any type of mountable filesystem with the mounted function: .UNINDENT .INDENT 0.0 .TP -.B salt.states.mount.mod_watch(name, user=None, **kwargs) +.B salt.states.mount.mod_watch(name, **kwargs) The mounted watcher, called to invoke the watch command. .INDENT 7.0 .TP @@ -146408,7 +126610,7 @@ The name of the mount point .UNINDENT .INDENT 0.0 .TP -.B salt.states.mount.mounted(name, device, fstype, mkmnt=False, opts=\(aqdefaults\(aq, dump=0, pass_num=0, config=\(aq/etc/fstab\(aq, persist=True, mount=True, user=None, match_on=\(aqauto\(aq) +.B salt.states.mount.mounted(name, device, fstype, mkmnt=False, opts=None, dump=0, pass_num=0, config=\(aq/etc/fstab\(aq, persist=True, mount=True) Verify that a device is mounted .INDENT 7.0 .TP @@ -146444,16 +126646,6 @@ Set if the mount should be saved in the fstab, Default is \fBTrue\fP .TP .B mount Set if the mount should be mounted immediately, Default is \fBTrue\fP -.TP -.B user -The user to own the mount; this defaults to the user salt is -running as on the minion -.TP -.B match_on -A name or list of fstab properties on which this state should be applied. -Default is \fBauto\fP, a special value indicating to guess based on fstype. -In general, \fBauto\fP matches on name for recognized special devices and -device otherwise. .UNINDENT .UNINDENT .INDENT 0.0 @@ -146481,7 +126673,7 @@ Activates a swap device .UNINDENT .INDENT 0.0 .TP -.B salt.states.mount.unmounted(name, device, config=\(aq/etc/fstab\(aq, persist=False, user=None) +.B salt.states.mount.unmounted(name, config=\(aq/etc/fstab\(aq, persist=False) New in version 0.17.0. .sp @@ -146490,24 +126682,12 @@ Verify that a device is not mounted .TP .B name The path to the location where the device is to be unmounted from -.UNINDENT -.sp -New in version 2015.2.0. - -.INDENT 7.0 -.TP -.B device -The device to be unmounted. .TP .B config Set an alternative location for the fstab, Default is \fB/etc/fstab\fP .TP .B persist Set if the mount should be purged from the fstab, Default is \fBFalse\fP -.TP -.B user -The user to own the mount; this defaults to the user salt is -running as on the minion .UNINDENT .UNINDENT .SS salt.states.mysql_database @@ -146652,7 +126832,7 @@ The name (key) of the grant to add The grant priv_type (i.e. select,insert,update OR all privileges) .TP .B database -The database priv_level (i.e. db.tbl OR db.*) +The database priv_level (ie. db.tbl OR db.*) .TP .B user The user to apply the grant to @@ -146768,7 +126948,7 @@ None: output to the result comment (default) grain to store the output (need output=grain) .TP .B key: -the specified grain will be treated as a dictionary, the result +the specified grain will be treated as a dictionnary, the result of this state will be stored under the specified key. .TP .B overwrite: @@ -146806,7 +126986,7 @@ New in version 0.16.2: Authentication overrides have been added. .sp The MySQL authentication information specified in the minion config file can be -overridden in states using the following arguments: \fBconnection_host\fP, +overidden in states using the following arguments: \fBconnection_host\fP, \fBconnection_port\fP, \fBconnection_user\fP, \fBconnection_pass\fP, \fBconnection_db\fP, \fBconnection_unix_socket\fP, \fBconnection_default_file\fP and \fBconnection_charset\fP\&. @@ -147049,22 +127229,6 @@ br0: \- network: eth4 \- require: \- network: eth4 - -system: - network.system: - \- enabled: True - \- hostname: server1.example.com - \- gateway: 192.168.0.1 - \- gatewaydev: eth0 - \- nozeroconf: True - \- nisdomain: example.com - \- require_reboot: True - \- apply_hostname: True - -\&.. note:: - Apply changes to hostname immediately. - -\&.. versionadded:: 2015.2.0 .ft P .fi .UNINDENT @@ -147362,11 +127526,17 @@ yaml: .UNINDENT .INDENT 0.0 .TP -.B salt.states.npm.bootstrap(name, user=None) +.B salt.states.npm.bootstrap(name, runas=None, user=None) Bootstraps a node.js application. .sp -Will execute \(aqnpm install \-\-json\(aq on the specified directory. +will execute npm install \-\-json on the specified directory .INDENT 7.0 +.TP +.B runas +The user to run NPM with +.sp +Deprecated since version 0.17.0. + .TP .B user The user to run NPM with @@ -147377,7 +127547,7 @@ New in version 0.17.0. .UNINDENT .INDENT 0.0 .TP -.B salt.states.npm.installed(name, pkgs=None, dir=None, user=None, force_reinstall=False, registry=None, env=None) +.B salt.states.npm.installed(name, pkgs=None, dir=None, runas=None, user=None, force_reinstall=False, registry=None, env=None) Verify that the given package is installed and is at the correct version (if specified). .INDENT 7.0 @@ -147414,6 +127584,12 @@ New in version 2014.7.0. .B dir The target directory in which to install the package, or None for global installation +.TP +.B runas +The user to run NPM with +.sp +Deprecated since version 0.17.0. + .TP .B user The user to run NPM with @@ -147441,13 +127617,19 @@ Install the package even if it is already installed .UNINDENT .INDENT 0.0 .TP -.B salt.states.npm.removed(name, dir=None, user=None) +.B salt.states.npm.removed(name, dir=None, runas=None, user=None) Verify that the given package is not installed. .INDENT 7.0 .TP .B dir The target directory in which to install the package, or None for global installation +.TP +.B runas +The user to run NPM with +.sp +Deprecated since version 0.17.0. + .TP .B user The user to run NPM with @@ -147684,7 +127866,7 @@ virtualenvwrapper: .UNINDENT .INDENT 0.0 .TP -.B salt.states.pip_state.installed(name, pkgs=None, pip_bin=None, requirements=None, env=None, bin_env=None, use_wheel=False, no_use_wheel=False, log=None, proxy=None, timeout=None, repo=None, editable=None, find_links=None, index_url=None, extra_index_url=None, no_index=False, mirrors=None, build=None, target=None, download=None, download_cache=None, source=None, upgrade=False, force_reinstall=False, ignore_installed=False, exists_action=None, no_deps=False, no_install=False, no_download=False, install_options=None, global_options=None, user=None, no_chown=False, cwd=None, activate=False, pre_releases=False, cert=None, allow_all_external=False, allow_external=None, allow_unverified=None, process_dependency_links=False, env_vars=None, use_vt=False) +.B salt.states.pip_state.installed(name, pip_bin=None, requirements=None, env=None, bin_env=None, use_wheel=False, no_use_wheel=False, log=None, proxy=None, timeout=None, repo=None, editable=None, find_links=None, index_url=None, extra_index_url=None, no_index=False, mirrors=None, build=None, target=None, download=None, download_cache=None, source=None, upgrade=False, force_reinstall=False, ignore_installed=False, exists_action=None, no_deps=False, no_install=False, no_download=False, install_options=None, global_options=None, user=None, runas=None, no_chown=False, cwd=None, activate=False, pre_releases=False, cert=None, allow_all_external=False, allow_external=None, allow_unverified=None, process_dependency_links=False) Make sure the package is installed .INDENT 7.0 .TP @@ -147835,14 +128017,6 @@ None Absolute path to a virtual environment directory or absolute path to a pip executable. The example below assumes a virtual environment has been created at \fB/foo/.virtualenvs/bar\fP\&. -.TP -.B env_vars -Add or modify environment variables. Useful for tweaking build steps, -such as specifying INCLUDE or LIBRARY paths in Makefiles, build scripts or -compiler calls. -.TP -.B use_vt -Use VT terminal emulation (see ouptut while installing) .UNINDENT .sp Example: @@ -147954,7 +128128,7 @@ more error prone. .UNINDENT .INDENT 0.0 .TP -.B salt.states.pip_state.removed(name, requirements=None, bin_env=None, log=None, proxy=None, timeout=None, user=None, cwd=None, use_vt=False) +.B salt.states.pip_state.removed(name, requirements=None, bin_env=None, log=None, proxy=None, timeout=None, user=None, runas=None, cwd=None) Make sure that a package is not installed. .INDENT 7.0 .TP @@ -147967,32 +128141,6 @@ The user under which to run pip .B bin_env None the pip executable or virtualenenv to use -.TP -.B use_vt -Use VT terminal emulation (see ouptut while installing) -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.pip_state.uptodate(name, bin_env=None, user=None, cwd=None, use_vt=False) -New in version 2015.2.0. - -.sp -Verify that the system is completely up to date. -.INDENT 7.0 -.TP -.B name -The name has no functional value and is only used as a tracking -reference -.TP -.B user -The user under which to run pip -.TP -.B bin_env -the pip executable or virtualenenv to use -.TP -.B use_vt -Use VT terminal emulation (see ouptut while installing) .UNINDENT .UNINDENT .SS salt.states.pkg @@ -148426,48 +128574,6 @@ mypkgs: .fi .UNINDENT .UNINDENT -.INDENT 7.0 -.TP -.B install_recommends -Whether to install the packages marked as recommended. Default is True. -Currently only works with APT based systems. -.sp -New in version 2015.2.0. - -.UNINDENT -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -httpd: - pkg.installed: - \- install_recommends: False -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B only_upgrade -Only upgrade the packages, if they are already installed. Default is False. -Currently only works with APT based systems. -.sp -New in version 2015.2.0. - -.UNINDENT -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -httpd: - pkg.installed: - \- only_upgrade: True -.ft P -.fi -.UNINDENT -.UNINDENT .UNINDENT .INDENT 0.0 .TP @@ -148515,48 +128621,6 @@ mypkgs: .fi .UNINDENT .UNINDENT -.INDENT 7.0 -.TP -.B install_recommends -Whether to install the packages marked as recommended. Default is True. -Currently only works with APT based systems. -.sp -New in version 2015.2.0. - -.UNINDENT -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -httpd: - pkg.latest: - \- install_recommends: False -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B only_upgrade -Only upgrade the packages, if they are already installed. Default is False. -Currently only works with APT based systems. -.sp -New in version 2015.2.0. - -.UNINDENT -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -httpd: - pkg.latest: - \- only_upgrade: True -.ft P -.fi -.UNINDENT -.UNINDENT .UNINDENT .INDENT 0.0 .TP @@ -148566,17 +128630,13 @@ low chunks and merges them into a single pkgs ref in the present low data .UNINDENT .INDENT 0.0 .TP -.B salt.states.pkg.purged(name, version=None, pkgs=None, **kwargs) +.B salt.states.pkg.purged(name, pkgs=None, **kwargs) Verify that a package is not installed, calling \fBpkg.purge\fP if necessary to purge the package. All configuration files are also removed. .INDENT 7.0 .TP .B name The name of the package to be purged. -.TP -.B version -The version of the package that should be removed. Don\(aqt do anything if -the package is installed with an unmatching version. .UNINDENT .sp Multiple Package Options: @@ -148584,8 +128644,7 @@ Multiple Package Options: .TP .B pkgs A list of packages to purge. Must be passed as a python list. The -\fBname\fP parameter will be ignored if this option is passed. It accepts -version numbers as well. +\fBname\fP parameter will be ignored if this option is passed. .UNINDENT .sp New in version 0.16.0. @@ -148593,17 +128652,13 @@ New in version 0.16.0. .UNINDENT .INDENT 0.0 .TP -.B salt.states.pkg.removed(name, version=None, pkgs=None, **kwargs) +.B salt.states.pkg.removed(name, pkgs=None, **kwargs) Verify that a package is not installed, calling \fBpkg.remove\fP if necessary to remove the package. .INDENT 7.0 .TP .B name The name of the package to be removed. -.TP -.B version -The version of the package that should be removed. Don\(aqt do anything if -the package is installed with an unmatching version. .UNINDENT .sp Multiple Package Options: @@ -148611,8 +128666,7 @@ Multiple Package Options: .TP .B pkgs A list of packages to remove. Must be passed as a python list. The -\fBname\fP parameter will be ignored if this option is passed. It accepts -version numbers as well. +\fBname\fP parameter will be ignored if this option is passed. .UNINDENT .sp New in version 0.16.0. @@ -148620,7 +128674,7 @@ New in version 0.16.0. .UNINDENT .INDENT 0.0 .TP -.B salt.states.pkg.uptodate(name, refresh=False, **kwargs) +.B salt.states.pkg.uptodate(name, refresh=False) New in version 2014.7.0. .sp @@ -148633,12 +128687,6 @@ reference .TP .B refresh refresh the package database before checking for new upgrades -.TP -.B kwargs -Any keyword arguments to pass through to \fBpkg.upgrade\fP\&. -.sp -New in version 2015.2. - .UNINDENT .UNINDENT .SS salt.states.pkgng @@ -148957,26 +129005,20 @@ salt: .INDENT 0.0 .TP .B salt.states.portage_config.flags(name, use=None, accept_keywords=None, env=None, license=None, properties=None, unmask=False, mask=False) -Enforce the given flags on the given package or \fBDEPEND\fP atom. -.sp -\fBWARNING:\fP -.INDENT 7.0 -.INDENT 3.5 -In most cases, the affected package(s) need to be rebuilt in +Enforce the given flags on the given package or DEPEND atom. +Please be warned that, in most cases, you need to rebuild the affected packages in order to apply the changes. -.UNINDENT -.UNINDENT .INDENT 7.0 .TP .B name -The name of the package or its DEPEND atom +The name of the package or his DEPEND atom .TP .B use -A list of \fBUSE\fP flags +A list of use flags .TP .B accept_keywords -A list of keywords to accept. \fB~ARCH\fP means current host arch, and will -be translated into a line without keywords +A list of keywords to accept. "~ARCH" means current host arch, and will +be translated in a line without keywords .TP .B env A list of environment files @@ -149072,7 +129114,7 @@ frank: .UNINDENT .INDENT 0.0 .TP -.B salt.states.postgres_database.absent(name, user=None, maintenance_db=None, db_password=None, db_host=None, db_port=None, db_user=None) +.B salt.states.postgres_database.absent(name, runas=None, user=None, maintenance_db=None, db_password=None, db_host=None, db_port=None, db_user=None) Ensure that the named database is absent .INDENT 7.0 .TP @@ -149090,6 +129132,12 @@ Database host if different from config or default .TP .B db_port Database port if different from config or default +.TP +.B runas +System user all operations should be performed on behalf of +.sp +Deprecated since version 0.17.0. + .TP .B user System user all operations should be performed on behalf of @@ -149100,7 +129148,7 @@ New in version 0.17.0. .UNINDENT .INDENT 0.0 .TP -.B salt.states.postgres_database.present(name, tablespace=None, encoding=None, lc_collate=None, lc_ctype=None, owner=None, template=None, user=None, maintenance_db=None, db_password=None, db_host=None, db_port=None, db_user=None) +.B salt.states.postgres_database.present(name, tablespace=None, encoding=None, lc_collate=None, lc_ctype=None, owner=None, template=None, runas=None, user=None, maintenance_db=None, db_password=None, db_host=None, db_port=None, db_user=None) Ensure that the named database is present with the specified properties. For more information about all of these options see man createdb(1) .INDENT 7.0 @@ -149125,6 +129173,12 @@ The username of the database owner .TP .B template The template database from which to build this database +.TP +.B runas +System user all operations should be performed on behalf of +.sp +Deprecated since version 0.17.0. + .TP .B user System user all operations should be performed on behalf of @@ -149160,9 +129214,6 @@ adminpack: .fi .UNINDENT .UNINDENT -.sp -New in version 2014.7.0. - .INDENT 0.0 .TP .B salt.states.postgres_extension.absent(name, if_exists=None, restrict=None, cascade=None, user=None, maintenance_db=None, db_password=None, db_host=None, db_port=None, db_user=None) @@ -149257,12 +129308,18 @@ frank: .UNINDENT .INDENT 0.0 .TP -.B salt.states.postgres_group.absent(name, user=None, maintenance_db=None, db_password=None, db_host=None, db_port=None, db_user=None) +.B salt.states.postgres_group.absent(name, runas=None, user=None, maintenance_db=None, db_password=None, db_host=None, db_port=None, db_user=None) Ensure that the named group is absent .INDENT 7.0 .TP .B name The groupname of the group to remove +.TP +.B runas +System user all operations should be performed on behalf of +.sp +Deprecated since version 0.17.0. + .TP .B user System user all operations should be performed on behalf of @@ -149285,7 +129342,7 @@ Database port if different from config or default .UNINDENT .INDENT 0.0 .TP -.B salt.states.postgres_group.present(name, createdb=None, createroles=None, createuser=None, encrypted=None, superuser=None, inherit=None, login=None, replication=None, password=None, refresh_password=None, groups=None, user=None, maintenance_db=None, db_password=None, db_host=None, db_port=None, db_user=None) +.B salt.states.postgres_group.present(name, createdb=None, createroles=None, createuser=None, encrypted=None, superuser=None, inherit=None, login=None, replication=None, password=None, refresh_password=None, groups=None, runas=None, user=None, maintenance_db=None, db_password=None, db_host=None, db_port=None, db_user=None) Ensure that the named group is present with the specified privileges Please note that the user/group notion in postgresql is just abstract, we have roles, where users can be seens as roles with the LOGIN privilege @@ -149347,11 +129404,17 @@ should be performed. If refresh_password is None or False, the password will be automatically updated without extra password change check. .sp -This behaviour makes it possible to execute in environments without -superuser access available, e.g. Amazon RDS for PostgreSQL +This behaviour allows to execute in environments without superuser access +available, e.g. Amazon RDS for PostgreSQL .TP .B groups A string of comma separated groups the group should be in +.TP +.B runas +System user all operations should be performed on behalf of +.sp +Deprecated since version 0.17.0. + .TP .B user System user all operations should be performed on behalf of @@ -149372,71 +129435,6 @@ Database host if different from config or default Database port if different from config or default .UNINDENT .UNINDENT -.SS salt.states.postgres_schema -.SS Management of PostgreSQL schemas -.sp -The postgres_schemas module is used to create and manage Postgres schemas. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -public: - postgres_schema.present \(aqdbname\(aq \(aqname\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.postgres_schema.absent(dbname, name, db_user=None, db_password=None, db_host=None, db_port=None) -Ensure that the named schema is absent -.INDENT 7.0 -.TP -.B dbname -The database\(aqs name will work on -.TP -.B name -The name of the schema to remove -.TP -.B db_user -database username if different from config or default -.TP -.B db_password -user password if any password for a specified user -.TP -.B db_host -Database host if different from config or default -.TP -.B db_port -Database port if different from config or default -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.postgres_schema.present(dbname, name, owner=None, db_user=None, db_password=None, db_host=None, db_port=None) -Ensure that the named schema is present in the database. -.INDENT 7.0 -.TP -.B dbname -The database\(aqs name will work on -.TP -.B name -The name of the schema to manage -.TP -.B db_user -database username if different from config or default -.TP -.B db_password -user password if any password for a specified user -.TP -.B db_host -Database host if different from config or default -.TP -.B db_port -Database port if different from config or default -.UNINDENT -.UNINDENT .SS salt.states.postgres_user .SS Management of PostgreSQL users (roles) .sp @@ -149454,12 +129452,18 @@ frank: .UNINDENT .INDENT 0.0 .TP -.B salt.states.postgres_user.absent(name, user=None, maintenance_db=None, db_password=None, db_host=None, db_port=None, db_user=None) +.B salt.states.postgres_user.absent(name, runas=None, user=None, maintenance_db=None, db_password=None, db_host=None, db_port=None, db_user=None) Ensure that the named user is absent .INDENT 7.0 .TP .B name The username of the user to remove +.TP +.B runas +System user all operations should be performed on behalf of +.sp +Deprecated since version 0.17.0. + .TP .B user System user all operations should be performed on behalf of @@ -149482,7 +129486,7 @@ Database port if different from config or default .UNINDENT .INDENT 0.0 .TP -.B salt.states.postgres_user.present(name, createdb=None, createroles=None, createuser=None, encrypted=None, superuser=None, replication=None, inherit=None, login=None, password=None, refresh_password=None, groups=None, user=None, maintenance_db=None, db_password=None, db_host=None, db_port=None, db_user=None) +.B salt.states.postgres_user.present(name, createdb=None, createroles=None, createuser=None, encrypted=None, superuser=None, replication=None, inherit=None, login=None, password=None, refresh_password=None, groups=None, runas=None, user=None, maintenance_db=None, db_password=None, db_host=None, db_port=None, db_user=None) Ensure that the named user is present with the specified privileges Please note that the user/group notion in postgresql is just abstract, we have roles, where users can be seens as roles with the LOGIN privilege @@ -149543,11 +129547,17 @@ should be performed. If refresh_password is None or False, the password will be automatically updated without extra password change check. .sp -This behaviour makes it possible to execute in environments without -superuser access available, e.g. Amazon RDS for PostgreSQL +This behaviour allows to execute in environments without superuser access +available, e.g. Amazon RDS for PostgreSQL .TP .B groups A string of comma separated groups the user should be in +.TP +.B runas +System user all operations should be performed on behalf of +.sp +Deprecated since version 0.17.0. + .TP .B user System user all operations should be performed on behalf of @@ -149689,13 +129699,19 @@ python\-2.7.6: .UNINDENT .INDENT 0.0 .TP -.B salt.states.pyenv.absent(name, user=None) +.B salt.states.pyenv.absent(name, runas=None, user=None) Verify that the specified python is not installed with pyenv. pyenv is installed if necessary. .INDENT 7.0 .TP .B name The version of python to uninstall +.TP +.B runas: None +The user to run pyenv as. +.sp +Deprecated since version 0.17.0. + .TP .B user: None The user to run pyenv as. @@ -149725,7 +129741,7 @@ The user to run pyenv as. .UNINDENT .INDENT 0.0 .TP -.B salt.states.pyenv.installed(name, default=False, user=None) +.B salt.states.pyenv.installed(name, default=False, runas=None, user=None) Verify that the specified python is installed with pyenv. pyenv is installed if necessary. .INDENT 7.0 @@ -149736,6 +129752,12 @@ The version of python to install .B default False Whether to make this python the default. +.TP +.B runas: None +The user to run pyenv as. +.sp +Deprecated since version 0.17.0. + .TP .B user: None The user to run pyenv as. @@ -149746,59 +129768,6 @@ New in version 0.17.0. .sp New in version 0.16.0. -.UNINDENT -.SS salt.states.pyrax_queues -.SS Manage Rackspace Queues -.sp -New in version 2015.2.0. - -.sp -Create and destroy Rackspace queues. Be aware that this interacts with -Rackspace\(aqs services, and so may incur charges. -.sp -This module uses \fBpyrax\fP, which can be installed via package, or pip. -This module is greatly inspired by boto_* modules from SaltStack code source. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -myqueue: - pyrax_queues.present: - \- provider: my\-pyrax - -myqueue: - pyrax_queues.absent: - \- provider: my\-pyrax -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.pyrax_queues.absent(name, provider) -Ensure the named Rackspace queue is deleted. -.INDENT 7.0 -.TP -.B name -Name of the Rackspace queue. -.TP -.B provider -Salt Cloud provider -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.pyrax_queues.present(name, provider) -Ensure the RackSpace queue exists. -.INDENT 7.0 -.TP -.B name -Name of the Rackspace queue. -.TP -.B provider -Salt Cloud Provider -.UNINDENT .UNINDENT .SS salt.states.quota .SS Management of POSIX Quotas @@ -149852,46 +129821,21 @@ rabbit@rabbit.example.com: .UNINDENT .INDENT 0.0 .TP -.B salt.states.rabbitmq_cluster.join(name, host, user=\(aqrabbit\(aq, ram_node=None, runas=\(aqroot\(aq) -Ensure the current node joined to a cluster with node \fI\%user@host\fP +.B salt.states.rabbitmq_cluster.join(name, host, user=\(aqrabbit\(aq, runas=None) +Ensure the RabbitMQ plugin is enabled. .INDENT 7.0 .TP .B name Irrelevant, not used (recommended: \fI\%user@host\fP) .TP .B user -The user of node to join to (default: rabbit) +The user to join the cluster as (default: rabbit) .TP .B host -The host of node to join to -.TP -.B ram_node -Join node as a RAM node +The cluster host to join to .TP .B runas -The user to run the rabbitmq command as -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.rabbitmq_cluster.joined(name, host, user=\(aqrabbit\(aq, ram_node=None, runas=\(aqroot\(aq) -Ensure the current node joined to a cluster with node \fI\%user@host\fP -.INDENT 7.0 -.TP -.B name -Irrelevant, not used (recommended: \fI\%user@host\fP) -.TP -.B user -The user of node to join to (default: rabbit) -.TP -.B host -The host of node to join to -.TP -.B ram_node -Join node as a RAM node -.TP -.B runas -The user to run the rabbitmq command as +The user to run the rabbitmq\-plugin command as .UNINDENT .UNINDENT .SS salt.states.rabbitmq_plugin @@ -149915,7 +129859,7 @@ some_plugin: .INDENT 0.0 .TP .B salt.states.rabbitmq_plugin.disabled(name, runas=None) -Ensure the RabbitMQ plugin is disabled. +Ensure the RabbitMQ plugin is enabled. .INDENT 7.0 .TP .B name @@ -150022,9 +129966,7 @@ rabbit_user: rabbitmq_user.present: \- password: password \- force: True - \- tags: - \- monitoring - \- user + \- tags: administrator \- perms: \- \(aq/\(aq: \- \(aq.*\(aq @@ -150064,7 +130006,7 @@ User\(aqs password, if one needs to be set If user exists, forcibly change the password .TP .B tags -Optional list of tags for the user +Optionally set user tags for user .TP .B perms A list of dicts with vhost keys and 3\-tuple values @@ -150147,13 +130089,11 @@ Deprecated since version Beryllium. .SS salt.states.rbenv .SS Managing Ruby installations with rbenv .sp -This module is used to install and manage ruby installations with rbenv and the -ruby\-build plugin. Different versions of ruby can be installed, and uninstalled. -Rbenv will be installed automatically the first time it is needed and can be -updated later. This module will \fInot\fP automatically install packages which rbenv -will need to compile the versions of ruby. If your version of ruby fails to -install, refer to the ruby\-build documentation to verify you are not missing any -dependencies: \fI\%https://github.com/sstephenson/ruby\-build/wiki\fP +This module is used to install and manage ruby installations with rbenv. +Different versions of ruby can be installed, and uninstalled. Rbenv will +be installed automatically the first time it is needed and can be updated +later. This module will \fInot\fP automatically install packages which rbenv +will need to compile the versions of ruby. .sp If rbenv is run as the root user then it will be installed to /usr/local/rbenv, otherwise it will be installed to the users ~/.rbenv directory. To make @@ -150162,8 +130102,7 @@ directories to the users PATH. If you are installing as root and want other users to be able to access rbenv then you will need to add RBENV_ROOT to their environment. .sp -The following state configuration demonstrates how to install Ruby 1.9.x -and 2.x using rbenv on Ubuntu/Debian: +This is how a state configuration could look like: .INDENT 0.0 .INDENT 3.5 .sp @@ -150171,28 +130110,19 @@ and 2.x using rbenv on Ubuntu/Debian: .ft C rbenv\-deps: pkg.installed: - \- names: + \- pkgs: \- bash \- git \- openssl - \- libssl\-dev - \- make + \- gmake \- curl - \- autoconf - \- bison - \- build\-essential - \- libssl\-dev - \- libyaml\-dev - \- libreadline6\-dev - \- zlib1g\-dev - \- libncurses5\-dev -ruby\-1.9.3\-p429: +ruby\-1.9.3\-p392: rbenv.absent: \- require: \- pkg: rbenv\-deps -ruby\-2.0.0\-p598: +ruby\-1.9.3\-p429: rbenv.installed: \- default: True \- require: @@ -150203,13 +130133,19 @@ ruby\-2.0.0\-p598: .UNINDENT .INDENT 0.0 .TP -.B salt.states.rbenv.absent(name, user=None) +.B salt.states.rbenv.absent(name, runas=None, user=None) Verify that the specified ruby is not installed with rbenv. Rbenv is installed if necessary. .INDENT 7.0 .TP .B name The version of ruby to uninstall +.TP +.B runas: None +The user to run rbenv as. +.sp +Deprecated since version 0.17.0. + .TP .B user: None The user to run rbenv as. @@ -150239,7 +130175,7 @@ The user to run rbenv as. .UNINDENT .INDENT 0.0 .TP -.B salt.states.rbenv.installed(name, default=False, user=None) +.B salt.states.rbenv.installed(name, default=False, runas=None, user=None) Verify that the specified ruby is installed with rbenv. Rbenv is installed if necessary. .INDENT 7.0 @@ -150250,6 +130186,12 @@ The version of ruby to install .B default False Whether to make this ruby the default. +.TP +.B runas: None +The user to run rbenv as. +.sp +Deprecated since version 0.17.0. + .TP .B user: None The user to run rbenv as. @@ -150305,7 +130247,7 @@ key_in_redis: .UNINDENT .sp The redis server information specified in the minion config file can be -overridden in states using the following arguments: \fBhost\fP, \fBpost\fP, \fBdb\fP, +overidden in states using the following arguments: \fBhost\fP, \fBpost\fP, \fBdb\fP, \fBpassword\fP\&. .INDENT 0.0 .INDENT 3.5 @@ -150511,7 +130453,7 @@ mygemset: .UNINDENT .INDENT 0.0 .TP -.B salt.states.rvm.gemset_present(name, ruby=\(aqdefault\(aq, user=None) +.B salt.states.rvm.gemset_present(name, ruby=\(aqdefault\(aq, runas=None, user=None) Verify that the gemset is present. .INDENT 7.0 .TP @@ -150520,6 +130462,12 @@ The name of the gemset. .TP .B ruby: default The ruby version this gemset belongs to. +.TP +.B runas: None +The user to run rvm as. +.sp +Deprecated since version 0.17.0. + .TP .B user: None The user to run rvm as. @@ -150530,7 +130478,7 @@ New in version 0.17.0. .UNINDENT .INDENT 0.0 .TP -.B salt.states.rvm.installed(name, default=False, user=None) +.B salt.states.rvm.installed(name, default=False, runas=None, user=None) Verify that the specified ruby is installed with RVM. RVM is installed when necessary. .INDENT 7.0 @@ -150541,6 +130489,12 @@ The version of ruby to install .B default False Whether to make this ruby the default. +.TP +.B runas: None +The user to run rvm as. +.sp +Deprecated since version 0.17.0. + .TP .B user: None The user to run rvm as. @@ -150854,8 +130808,7 @@ job1: \- Friday 5:00pm This will schedule the command: state.sls httpd test=True at 5pm on Monday, -Wednesday and Friday, and 3pm on Tuesday and Thursday. Requires that -python\-dateutil is installed on the minion. +Wednesday and Friday, and 3pm on Tuesday and Thursday. job1: schedule.present: @@ -150868,28 +130821,7 @@ job1: Scheduled jobs can also be specified using the format used by cron. This will schedule the command: state.sls httpd test=True to run every 5 minutes. Requires -that python\-croniter is installed on the minion. - -job1: - schedule.present: - \- function: state.sls - \- args: - \- httpd - \- kwargs: - test: True - \- when: - \- Monday 5:00pm - \- Tuesday 3:00pm - \- Wednesday 5:00pm - \- Thursday 3:00pm - \- Friday 5:00pm - \- returner: xmpp - \- return_config: xmpp_state_run - -This will schedule the command: state.sls httpd test=True at 5pm on Monday, -Wednesday and Friday, and 3pm on Tuesday and Thursday. Using the xmpp returner -to return the results of the scheduled job, with the alternative configuration -options found in the xmpp_state_run section. +that python\-croniter is installed. .ft P .fi .UNINDENT @@ -150933,12 +130865,10 @@ number of days have passed. This will schedule the job at the specified time(s). The when parameter must be a single value or a dictionary with the date string(s) using the dateutil format. -Requires python\-dateutil. .TP .B cron This will schedule the job at the specified time(s) using the crontab format. -Requires python\-croniter. .TP .B function The function that should be executed by the scheduled job. @@ -150963,13 +130893,7 @@ range with \(aqstart\(aq and \(aqend\(aq values. .B range This will schedule the command within the range specified. The range parameter must be a dictionary with the date strings -using the dateutil format. Requires python\-dateutil. -.TP -.B returner -The returner to use to return the results of the scheduled job. -.TP -.B return_config -The alternative configuration to use for returner configuration options. +using the dateutil format. .UNINDENT .UNINDENT .SS salt.states.selinux @@ -151256,7 +131180,7 @@ The name of the init or rc script used to manage the service .UNINDENT .INDENT 0.0 .TP -.B salt.states.service.mod_watch(name, sfun=None, sig=None, reload=False, full_restart=False, **kwargs) +.B salt.states.service.mod_watch(name, sfun=None, sig=None, reload=False, full_restart=False, force=False, **kwargs) The service watcher, called to invoke the watch command. .INDENT 7.0 .TP @@ -151289,86 +131213,6 @@ is None, which does not enable or disable anything. The string to search for when looking for the service process with ps .UNINDENT .UNINDENT -.SS salt.states.slack -.SS Send a message to Slack -.sp -This state is useful for sending messages to Slack during state runs. -.sp -New in version 2015.2.0. - -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -slack\-message: - slack.send_message: - \- channel: \(aq#general\(aq - \- from_name: SuperAdmin - \- message: \(aqThis state was executed successfully.\(aq - \- api_key: peWcBiMOS9HrZG15peWcBiMOS9HrZG15 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The api key can be specified in the master or minion configuration like below: -.. code\-block:: yaml -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.TP -.B slack: -api_key: peWcBiMOS9HrZG15peWcBiMOS9HrZG15 -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.slack.post_message(name, channel, from_name, message, api_key=None) -Send a message to a Slack room. -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -slack\-message: - slack.send_message: - \- channel: \(aq#general\(aq - \- from_name: SuperAdmin - \- message: \(aqThis state was executed successfully.\(aq - \- api_key: peWcBiMOS9HrZG15peWcBiMOS9HrZG15 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The following parameters are required: -.INDENT 7.0 -.TP -.B name -The unique name for this event. -.TP -.B channel -The room to send the message to. Can either be the ID or the name. -.TP -.B from_name -The name of that is to be shown in the "from" field. -If not specified, defaults to. -.TP -.B message -The message that is to be sent to the Hipchat room. -.UNINDENT -.sp -The following parameters are optional: -api_key -.INDENT 7.0 -.INDENT 3.5 -The api key for Slack to use for authentication, -if not specified in the configuration options of master or minion. -.UNINDENT -.UNINDENT -.UNINDENT .SS salt.states.smtp .SS Sending Messages via SMTP .sp @@ -151418,75 +131262,6 @@ server\-warning\-message: The message to send via SMTP .UNINDENT .UNINDENT -.SS salt.states.splunk_search -.sp -Splunk Search State Module -.sp -New in version 2015.2. - -.sp -This state is used to ensure presence of splunk searches. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -server\-warning\-message: - splunk_search.present: - \- name: This is the splunk search name - \- search: index=main sourcetype= -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.splunk_search.absent(name, profile=\(aqsplunk\(aq) -Ensure a search is absent -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -API Error Search: - splunk_search.absent -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The following parameters are required: -.INDENT 7.0 -.TP -.B name -This is the name of the search in splunk -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.splunk_search.present(name, profile=\(aqsplunk\(aq, **kwargs) -Ensure a search is present -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -API Error Search: - splunk_search.present: - search: index=main sourcetype=blah - template: alert_5min -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The following parameters are required: -.INDENT 7.0 -.TP -.B name -This is the name of the search in splunk -.UNINDENT -.UNINDENT .SS salt.states.ssh_auth .SS Control of entries in SSH authorized_key files .sp @@ -151727,13 +131502,6 @@ Return the current load average for the specified minion. Available values for name are \fI1\-min\fP, \fI5\-min\fP and \fI15\-min\fP\&. \fIminimum\fP and \fImaximum\fP values should be passed in as strings. .UNINDENT -.INDENT 0.0 -.TP -.B salt.states.status.process(name) -Return whether the specified signature is found in the process tree. This -differs slightly from the services states, in that it may refer to a -process that is not managed via the init system. -.UNINDENT .SS salt.states.supervisord .SS Interaction with the Supervisor daemon .INDENT 0.0 @@ -151753,12 +131521,18 @@ wsgi_server: .UNINDENT .INDENT 0.0 .TP -.B salt.states.supervisord.dead(name, user=None, conf_file=None, bin_env=None) +.B salt.states.supervisord.dead(name, user=None, runas=None, conf_file=None, bin_env=None) Ensure the named service is dead (not running). .INDENT 7.0 .TP .B name Service name as defined in the supervisor configuration file +.TP +.B runas +Name of the user to run the supervisorctl command +.sp +Deprecated since version 0.17.0. + .TP .B user Name of the user to run the supervisorctl command @@ -151776,11 +131550,11 @@ installed .UNINDENT .INDENT 0.0 .TP -.B salt.states.supervisord.mod_watch(name, restart=True, update=False, user=None, conf_file=None, bin_env=None) +.B salt.states.supervisord.mod_watch(name, restart=True, update=False, user=None, runas=None, conf_file=None, bin_env=None) .UNINDENT .INDENT 0.0 .TP -.B salt.states.supervisord.running(name, restart=False, update=False, user=None, conf_file=None, bin_env=None) +.B salt.states.supervisord.running(name, restart=False, update=False, user=None, runas=None, conf_file=None, bin_env=None) Ensure the named service is running. .INDENT 7.0 .TP @@ -151792,6 +131566,12 @@ Whether to force a restart .TP .B update Whether to update the supervisor configuration. +.TP +.B runas +Name of the user to run the supervisorctl command +.sp +Deprecated since version 0.17.0. + .TP .B user Name of the user to run the supervisorctl command @@ -151960,129 +131740,6 @@ The location of the sysctl configuration file. If not specified, the proper location will be detected based on platform. .UNINDENT .UNINDENT -.SS salt.states.syslog_ng -.SS State module for syslog_ng -.INDENT 0.0 -.TP -.B maintainer -Tibor Benke <\fI\%btibi@sch.bme.hu\fP> -.TP -.B maturity -new -.TP -.B depends -cmd, ps, syslog_ng -.TP -.B platform -all -.UNINDENT -.INDENT 0.0 -.TP -.B Users can generate syslog\-ng configuration files from YAML format or use -plain ones and reload, start, or stop their syslog\-ng by using this module. -.UNINDENT -.SS Details -.sp -The service module is not available on all system, so this module includes -\fI\%syslog_ng.reloaded\fP, -\fI\%syslog_ng.stopped\fP, -and \fI\%syslog_ng.started\fP functions. -If the service module is available on the computers, users should use that. -.sp -Users can generate syslog\-ng configuration with -\fI\%syslog_ng.config\fP function. -For more information see \fBsyslog\-ng state usage\fP\&. -.SS Syslog\-ng configuration file format -.sp -The syntax of a configuration snippet in syslog\-ng.conf: -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.INDENT 3.5 -object_type object_id {}; -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.sp -These constructions are also called statements. There are options inside of them: -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.INDENT 3.5 -option(parameter1, parameter2); option2(parameter1, parameter2); -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.sp -You can find more information about syslog\-ng\(aqs configuration syntax in the -Syslog\-ng Admin guide: -\fI\%http://www.balabit.com/sites/default/files/documents/syslog\-ng\-ose\-3.5\-guides/en/syslog\-ng\-ose\-v3.5\-guide\-admin/html\-single/index.html#syslog\-ng.conf.5\fP -.INDENT 0.0 -.TP -.B salt.states.syslog_ng.config(name, config, write=True) -Builds syslog\-ng configuration. -.sp -name : the id of the Salt document -config : the parsed YAML code -write : if True, it writes the config into the configuration file, -otherwise just returns it -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.syslog_ng.reloaded(name) -Reloads syslog\-ng. -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.syslog_ng.started(name=None, user=None, group=None, chroot=None, caps=None, no_caps=False, pidfile=None, enable_core=False, fd_limit=None, verbose=False, debug=False, trace=False, yydebug=False, persist_file=None, control=None, worker_threads=None, *args, **kwargs) -Ensures, that syslog\-ng is started via the given parameters. -.sp -Users shouldn\(aqt use this function, if the service module is available on -their system. -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.syslog_ng.stopped(name=None) -Kills syslog\-ng. -.UNINDENT -.SS salt.states.sysrc -.INDENT 0.0 -.TP -.B salt.states.sysrc.absent(name, **kwargs) -Ensure a sysrc variable is absent. -.INDENT 7.0 -.TP -.B name -The variable name to set -.TP -.B file -(optional) The rc file to add the variable to. -.TP -.B jail -(option) the name or JID of the jail to set the value in. -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.sysrc.managed(name, value, **kwargs) -Ensure a sysrc variable is set to a specific value. -.INDENT 7.0 -.TP -.B name -The variable name to set -.TP -.B value -Value to set the variable to -.TP -.B file -(optional) The rc file to add the variable to. -.TP -.B jail -(option) the name or JID of the jail to set the value in. -.UNINDENT -.UNINDENT .SS salt.states.test .SS Test States .INDENT 0.0 @@ -152538,18 +132195,17 @@ Ensure that the named user is absent The name of the user to remove .TP .B purge -Set purge to True to delete all of the user\(aqs files as well as the user, -Default is \fBFalse\fP\&. +Set purge to delete all of the user\(aqs files as well as the user .TP .B force -If the user is logged in, the absent state will fail. Set the force +If the user is logged in the absent state will fail, set the force option to True to remove the user even if they are logged in. Not -supported in FreeBSD and Solaris, Default is \fBFalse\fP\&. +supported in FreeBSD and Solaris. .UNINDENT .UNINDENT .INDENT 0.0 .TP -.B salt.states.user.present(name, uid=None, gid=None, gid_from_name=False, groups=None, optional_groups=None, remove_groups=True, home=None, createhome=True, password=None, enforce_password=True, empty_password=False, shell=None, unique=True, system=False, fullname=None, roomnumber=None, workphone=None, homephone=None, loginclass=None, date=None, mindays=None, maxdays=None, inactdays=None, warndays=None, expire=None) +.B salt.states.user.present(name, uid=None, gid=None, gid_from_name=False, groups=None, optional_groups=None, remove_groups=True, home=None, createhome=True, password=None, enforce_password=True, empty_password=False, shell=None, unique=True, system=False, fullname=None, roomnumber=None, workphone=None, homephone=None, date=None, mindays=None, maxdays=None, inactdays=None, warndays=None, expire=None) Ensure that the named user is present with the specified properties .INDENT 7.0 .TP @@ -152565,7 +132221,7 @@ The default group id .TP .B gid_from_name If True, the default group id will be set to the id of the group with -the same name as the user, Default is \fBFalse\fP\&. +the same name as the user. .TP .B groups A list of groups to assign the user to, pass a list object. If a group @@ -152585,15 +132241,15 @@ NOTE: If the same group is specified in both "groups" and .TP .B remove_groups Remove groups that the user is a member of that weren\(aqt specified in -the state, Default is \fBTrue\fP\&. +the state, True by default .TP .B home The location of the home directory to manage .TP .B createhome -If False, the home directory will not be created if it doesn\(aqt exist. +If True, the home directory will be created if it doesn\(aqt exist. Please note that directories leading up to the home directory -will NOT be created, Default is \fBTrue\fP\&. +will NOT be created. .TP .B password A password hash to set for the user. This field is only supported on @@ -152608,27 +132264,22 @@ Changed in version 0.16.0: BSD support added. Set to False to keep the password from being changed if it has already been set and the password hash differs from what is specified in the "password" field. This option will be ignored if "password" is not -specified, Default is \fBTrue\fP\&. +specified. .TP .B empty_password -Set to True to enable password\-less login for user, Default is \fBFalse\fP\&. +Set to True to enable no password\-less login for user .TP .B shell The login shell, defaults to the system default shell .TP .B unique -Require a unique UID, Default is \fBTrue\fP\&. +Require a unique UID, True by default .TP .B system -Choose UID in the range of FIRST_SYSTEM_UID and LAST_SYSTEM_UID, Default is -\fBFalse\fP\&. -.TP -.B loginclass -The login class, defaults to empty -(BSD only) +Choose UID in the range of FIRST_SYSTEM_UID and LAST_SYSTEM_UID. .UNINDENT .sp -User comment field (GECOS) support (currently Linux, BSD, and MacOS +User comment field (GECOS) support (currently Linux, FreeBSD, and MacOS only): .sp The below values should be specified as strings to avoid ambiguities when @@ -152679,70 +132330,11 @@ Date that account expires, represented in days since epoch (January 1, 1970). .UNINDENT .UNINDENT -.SS salt.states.vbox_guest -.sp -VirtualBox Guest Additions installer state -.INDENT 0.0 -.TP -.B salt.states.vbox_guest.additions_installed(name, reboot=False, upgrade_os=False) -Ensure that the VirtualBox Guest Additions are installed. Uses the CD, -connected by VirtualBox. -.INDENT 7.0 -.TP -.B name -The name has no functional value and is only used as a tracking -reference. -.TP -.B reboot -False -Restart OS to complete installation. -.TP -.B upgrade_os -False -Upgrade OS (to ensure the latests version of kernel and developer tools -installed). -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.vbox_guest.additions_removed(name, force=False) -Ensure that the VirtualBox Guest Additions are removed. Uses the CD, -connected by VirtualBox. -.sp -To connect VirtualBox Guest Additions via VirtualBox graphical interface -press \(aqHost+D\(aq (\(aqHost\(aq is usually \(aqRight Ctrl\(aq). -.INDENT 7.0 -.TP -.B name -The name has no functional value and is only used as a tracking -reference. -.TP -.B force -Force VirtualBox Guest Additions removing. -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.vbox_guest.grant_access_to_shared_folders_to(name, users=None) -Grant access to auto\-mounted shared folders to the users. -.sp -User is specified by it\(aqs name. To grant access for several users use -argument \fIusers\fP\&. -.INDENT 7.0 -.TP -.B name -Name of the user to grant access to auto\-mounted shared folders to. -.TP -.B users -List of names of users to grant access to auto\-mounted shared folders to. -If specified, \fIname\fP will not be taken into account. -.UNINDENT -.UNINDENT .SS salt.states.virtualenv .SS Setup of Python virtualenv sandboxes .INDENT 0.0 .TP -.B salt.states.virtualenv_mod.managed(name, venv_bin=None, requirements=None, system_site_packages=False, distribute=False, use_wheel=False, clear=False, python=None, extra_search_dir=None, never_download=None, prompt=None, user=None, no_chown=False, cwd=None, index_url=None, extra_index_url=None, pre_releases=False, no_deps=False, pip_download=None, pip_download_cache=None, pip_exists_action=None, proxy=None, use_vt=False, env_vars=None) +.B salt.states.virtualenv_mod.managed(name, venv_bin=None, requirements=None, system_site_packages=False, distribute=False, use_wheel=False, clear=False, python=None, extra_search_dir=None, never_download=None, prompt=None, user=None, runas=None, no_chown=False, cwd=None, index_url=None, extra_index_url=None, pre_releases=False, no_deps=False, pip_exists_action=None, proxy=None) Create a virtualenv and optionally manage it with pip .INDENT 7.0 .TP @@ -152769,11 +132361,6 @@ Default action of pip when a path already exists: (s)witch, (i)gnore, .TP .B proxy: None Proxy address which is passed to "pip install" -.TP -.B env_vars -Set environment variables that some builds will depend on. For example, -a Python C\-module may have a Makefile that needs INCLUDE_PATH set to -pick up a header file while compiling. .UNINDENT .sp Also accepts any kwargs that the virtualenv module will. @@ -152801,7 +132388,7 @@ Configure the DNS server list from DHCP Server .UNINDENT .INDENT 0.0 .TP -.B salt.states.win_dns_client.dns_exists(name, servers=None, interface=\(aqLocal Area Connection\(aq, replace=False) +.B salt.states.win_dns_client.dns_exists(name, servers=None, interface=\(aqLocal Area Connection\(aq) Configure the DNS server list in the specified interface .sp Example: @@ -152812,7 +132399,6 @@ Example: .ft C config_dns_servers: win_dns_client.dns_exists: - \- replace: True #remove any servers not in the "servers" list, default is False \- servers: \- 8.8.8.8 \- 8.8.8.9 @@ -153057,64 +132643,8 @@ the installation of the sub\-features .UNINDENT .sp Note: -Some features require reboot after un/installation. If so, until the server is restarted -other features can not be installed! -.sp -Example: -.sp -Run \fBsalt MinionName win_servermanager.list_available\fP to get a list of available roles and features. Use -the name in the right column. Do not use the role or feature names mentioned in the PKGMGR documentation. In -this example for IIS\-WebServerRole the name to be used is Web\-Server. -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -ISWebserverRole: - win_servermanager.installed: - \- force: True - \- recurse: True - \- name: Web\-Server -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.states.win_servermanager.removed(name) -Remove the windows feature -name: -.INDENT 7.0 -.INDENT 3.5 -short name of the feature (the right column in win_servermanager.list_available) -.UNINDENT -.UNINDENT -.sp -Note: -Some features require a reboot after uninstallation. If so the feature will not be completly uninstalled until -the server is restarted. -Example: -Run \fBsalt MinionName win_servermanager.list_installed\fP to get a list of all features installed. Use the top -name listed for each feature, not the indented one. Do not use the role or feature names mentioned in the -PKGMGR documentation. -.. code\-block:: yaml -.INDENT 7.0 -.INDENT 3.5 -.INDENT 0.0 -.TP -.B ISWebserverRole: -.INDENT 7.0 -.TP -.B win_servermanager.removed: -.INDENT 7.0 -.IP \(bu 2 -name: Web\-Server -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT +Some features requires reboot after un/installation, if so until the server is restarted +Other features can not be installed ! .UNINDENT .SS salt.states.win_system .SS Management of Windows system information @@ -153167,24 +132697,26 @@ New in version 2014.7.0. Set windows updates to run by category. Default behavior is to install all updates that do not require user interaction to complete. .sp -Optionally set \fBcategory\fP to a category of your choice to only -install certain updates. Default is to set to install all available updates. +Optionally set \fBcategory\fP to a category of your choosing to only +install certain updates. default is all available updates. .sp -The following example will install all Security and Critical Updates, +In the example below, will install all Security and Critical Updates, and download but not install standard updates. +.sp +Example: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C updates: - win_update.installed: - \- categories: - \- \(aqCritical Updates\(aq - \- \(aqSecurity Updates\(aq - win_update.downloaded: - \- categories: - \- \(aqUpdates\(aq + win_update.installed: + \- categories: + \- \(aqCritical Updates\(aq + \- \(aqSecurity Updates\(aq + win_update.downloaded: + \- categories: + \- \(aqUpdates\(aq .ft P .fi .UNINDENT @@ -153194,48 +132726,37 @@ You can also specify a number of features about the update to have a fine grain approach to specific types of updates. These are the following features/states of updates available for configuring: .INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -\(aqUI\(aq \- User interaction required, skipped by default -\(aqdownloaded\(aq \- Already downloaded, skipped by default (downloading) -\(aqpresent\(aq \- Present on computer, included by default (installing) -\(aqinstalled\(aq \- Already installed, skipped by default -\(aqreboot\(aq \- Reboot required, included by default -\(aqhidden\(aq \- skip those updates that have been hidden. -\(aqsoftware\(aq \- Software updates, included by default -\(aqdriver\(aq \- driver updates, skipped by default -.ft P -.fi -.UNINDENT +.IP \(bu 2 +\fBUI\fP \- User interaction required, skipped by default +.IP \(bu 2 +\fBdownloaded\fP \- Already downloaded, skipped by default (downloading) +.IP \(bu 2 +\fBpresent\fP \- Present on computer, included by default (installing) +.IP \(bu 2 +\fBinstalled\fP \- Already installed, skipped by default +.IP \(bu 2 +\fBreboot\fP \- Reboot required, included by default +.IP \(bu 2 +\fBhidden\fP \- skip those updates that have been hidden. +.IP \(bu 2 +\fBsoftware\fP \- Software updates, included by default +.IP \(bu 2 +\fBdriver\fP \- driver updates, skipped by default .UNINDENT .sp -The following example installs all driver updates that don\(aqt require a reboot: +This example installs all driver updates that don\(aqt require a reboot: +Example: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C gryffindor: - win_update.installed: - \- includes: - \- driver: True - \- software: False - \- reboot: False -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -To just update your windows machine, add this your sls: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -updates: - win_update.installed + win_update.installed: + \- includes: + \- driver: True + \- software: False + \- reboot: False .ft P .fi .UNINDENT @@ -153294,47 +132815,48 @@ updates: Cache updates for later install. .INDENT 7.0 .TP -.B name: -if categories is left empty, it will be assumed that you are passing the category option -through the name. These are separate because you can only have one name, but can have -multiple categories. +.B name +If \fBcategories\fP is left empty, it will be assumed that you are +passing the category option through the name. These are separate +because you can only have one name, but can have multiple categories. .TP -.B categories: -the list of categories to be downloaded. These are simply strings in the update\(aqs -information, so there is no enumeration of the categories available. Some known categories: +.B categories +The list of categories to be downloaded. These are simply strings in +the update\(aqs information, so there is no enumeration of the categories +available. Known categories include: .INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C +.IP \(bu 2 Updates +.IP \(bu 2 Windows 7 +.IP \(bu 2 Critical Updates +.IP \(bu 2 Security Updates +.IP \(bu 2 Update Rollups -.ft P -.fi -.UNINDENT .UNINDENT .TP -.B includes: -a list of features of the updates to cull by. Available features: +.B includes +A list of features of the updates to cull by. Available features +include: .INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -\(aqUI\(aq \- User interaction required, skipped by default -\(aqdownloaded\(aq \- Already downloaded, skipped by default (downloading) -\(aqpresent\(aq \- Present on computer, included by default (installing) -\(aqinstalled\(aq \- Already installed, skipped by default -\(aqreboot\(aq \- Reboot required, included by default -\(aqhidden\(aq \- skip those updates that have been hidden. -\(aqsoftware\(aq \- Software updates, included by default -\(aqdriver\(aq \- driver updates, skipped by default -.ft P -.fi -.UNINDENT +.IP \(bu 2 +\fBUI\fP \- User interaction required, skipped by default +.IP \(bu 2 +\fBdownloaded\fP \- Already downloaded, skipped by default (downloading) +.IP \(bu 2 +\fBpresent\fP \- Present on computer, included by default (installing) +.IP \(bu 2 +\fBinstalled\fP \- Already installed, skipped by default +.IP \(bu 2 +\fBreboot\fP \- Reboot required, included by default +.IP \(bu 2 +\fBhidden\fP \- Kkip those updates that have been hidden. +.IP \(bu 2 +\fBsoftware\fP \- Software updates, included by default +.IP \(bu 2 +\fBdriver\fP \- Driver updates, skipped by default .UNINDENT .TP .B retries @@ -153348,47 +132870,48 @@ step. Install specified windows updates. .INDENT 7.0 .TP -.B name: -if categories is left empty, it will be assumed that you are passing the category option -through the name. These are separate because you can only have one name, but can have -multiple categories. +.B name +If \fBcategories\fP is left empty, it will be assumed that you are +passing the category option through the name. These are separate +because you can only have one name, but can have multiple categories. .TP -.B categories: -the list of categories to be downloaded. These are simply strings in the update\(aqs -information, so there is no enumeration of the categories available. Some known categories: +.B categories +The list of categories to be downloaded. These are simply strings in +the update\(aqs information, so there is no enumeration of the categories +available. Known categories include: .INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C +.IP \(bu 2 Updates +.IP \(bu 2 Windows 7 +.IP \(bu 2 Critical Updates +.IP \(bu 2 Security Updates +.IP \(bu 2 Update Rollups -.ft P -.fi -.UNINDENT .UNINDENT .TP -.B includes: -a list of features of the updates to cull by. Available features: +.B includes +A list of features of the updates to cull by. Available features +include: .INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -\(aqUI\(aq \- User interaction required, skipped by default -\(aqdownloaded\(aq \- Already downloaded, skipped by default (downloading) -\(aqpresent\(aq \- Present on computer, included by default (installing) -\(aqinstalled\(aq \- Already installed, skipped by default -\(aqreboot\(aq \- Reboot required, included by default -\(aqhidden\(aq \- skip those updates that have been hidden. -\(aqsoftware\(aq \- Software updates, included by default -\(aqdriver\(aq \- driver updates, skipped by default -.ft P -.fi -.UNINDENT +.IP \(bu 2 +\fBUI\fP \- User interaction required, skipped by default +.IP \(bu 2 +\fBdownloaded\fP \- Already downloaded, skipped by default (downloading) +.IP \(bu 2 +\fBpresent\fP \- Present on computer, included by default (installing) +.IP \(bu 2 +\fBinstalled\fP \- Already installed, skipped by default +.IP \(bu 2 +\fBreboot\fP \- Reboot required, included by default +.IP \(bu 2 +\fBhidden\fP \- Kkip those updates that have been hidden. +.IP \(bu 2 +\fBsoftware\fP \- Software updates, included by default +.IP \(bu 2 +\fBdriver\fP \- Driver updates, skipped by default .UNINDENT .TP .B retries @@ -153511,7 +133034,7 @@ installed2 .UNINDENT .INDENT 0.0 .TP -.B salt.states.zcbuildout.installed(name, config=\(aqbuildout.cfg\(aq, quiet=False, parts=None, user=None, env=(), buildout_ver=None, test_release=False, distribute=None, new_st=None, offline=False, newest=False, python=\(aq/usr/bin/python2.7\(aq, debug=False, verbose=False, unless=None, onlyif=None, use_vt=False, loglevel=\(aqdebug\(aq) +.B salt.states.zcbuildout.installed(name, config=\(aqbuildout.cfg\(aq, quiet=False, parts=None, runas=None, user=None, env=(), buildout_ver=None, test_release=False, distribute=None, new_st=None, offline=False, newest=False, python=\(aq/usr/bin/python2.7\(aq, debug=False, verbose=False, unless=None, onlyif=None, use_vt=False, loglevel=\(aqdebug\(aq) Install buildout in a specific directory .sp It is a thin wrapper to modules.buildout.buildout @@ -153534,6 +133057,12 @@ buildout config to use (default: buildout.cfg) .TP .B parts specific buildout parts to run +.TP +.B runas +user used to run buildout as +.sp +Deprecated since version 2014.1.4. + .TP .B user user used to run buildout as @@ -153632,12 +133161,12 @@ This example would allow the file state to change, but would limit the concurrency of the trafficserver service restart to 4. .INDENT 0.0 .TP -.B salt.states.zk_concurrency.lock(path, zk_hosts, identifier=None, max_concurrency=1, timeout=None, ephemeral_lease=False) +.B salt.states.zk_concurrency.lock(zk_hosts, path, max_concurrency, timeout=None, ephemeral_lease=False) Block state execution until you are able to get the lock (or hit the timeout) .UNINDENT .INDENT 0.0 .TP -.B salt.states.zk_concurrency.unlock(path, zk_hosts=None, identifier=None, max_concurrency=1, ephemeral_lease=False) +.B salt.states.zk_concurrency.unlock(path) Remove lease from semaphore .UNINDENT .SS Execution Modules @@ -153800,28 +133329,10 @@ The \fB__virtual__\fP function is used to return either a False is returned then the module is not loaded, if a string is returned then the module is loaded with the name of the string. .sp -\fBNOTE:\fP -.INDENT 0.0 -.INDENT 3.5 -Optionally, modules may additionally return a list of reasons that a module could -not be loaded. For example, if a dependency for \(aqmy_mod\(aq was not met, a -__virtual__ function could do as follows: -.INDENT 0.0 -.INDENT 3.5 -return False, [\(aqMy Module must be installed before this module can be -used.\(aq] -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.sp This means that the package manager modules can be presented as the \fBpkg\fP module regardless of what the actual module is named. .sp -Since \fB__virtual__\fP is called before the module is loaded, \fB__salt__\fP will be -unavailable as it will not have been packed into the module at this point in time. -.sp -The package manager modules are among the best example of using the \fB__virtual__\fP +The package manager modules are the best example of using the \fB__virtual__\fP function. Some examples: .INDENT 0.0 .IP \(bu 2 @@ -153830,8 +133341,6 @@ function. Some examples: \fI\%yumpkg.py\fP .IP \(bu 2 \fI\%aptpkg.py\fP -.IP \(bu 2 -\fI\%at.py\fP .UNINDENT .sp \fBNOTE:\fP @@ -154017,29 +133526,6 @@ def foo(): .fi .UNINDENT .UNINDENT -.sp -In addition to global dependancies the depends decorator also supports raw booleans. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -from salt.utils.decorators import depends - -HAS_DEP = False -try: - import dependency_that_sometimes_exists - HAS_DEP = True -except ImportError: - pass - -@depends(HAS_DEP) -def foo(): - return True -.ft P -.fi -.UNINDENT -.UNINDENT .SS Master Tops .sp Salt includes a number of built\-in subsystems to generate top file data, they @@ -154153,11 +133639,6 @@ The above essentially is the same as a top.sls containing the following: .sp .nf .ft C -base: - \(aq*\(aq: - \- basepackages - \- database - base: \(aq*\(aq: \- basepackages @@ -154346,12 +133827,6 @@ Wheel system wrapper for key system T} _ T{ -\fBminions\fP -T} T{ -Wheel system wrapper for connected minions -T} -_ -T{ \fBpillar_roots\fP T} T{ The \fIpillar_roots\fP wheel module is used to manage files under the pillar roots directories on the master server. @@ -154375,36 +133850,6 @@ This will strip comments from your config file .UNINDENT .INDENT 0.0 .TP -.B salt.wheel.config.update_config(file_name, yaml_contents) -Update master config with -\fByaml_contents\fP\&. -.sp -Writes \fByaml_contents\fP to a file named -\fBfile_name.conf\fP under the folder -specified by \fBdefault_include\fP\&. -This folder is named \fBmaster.d\fP by -default. Please look at -\fI\%http://docs.saltstack.com/en/latest/ref/configuration/master.html#include\-configuration\fP -for more information. -.sp -Example low data -data = { -.INDENT 7.0 -.INDENT 3.5 -\(aqusername\(aq: \(aqsalt\(aq, -\(aqpassword\(aq: \(aqsalt\(aq, -\(aqfun\(aq: \(aqconfig.update_config\(aq, -\(aqfile_name\(aq: \(aqgui\(aq, -\(aqyaml_contents\(aq: {\(aqid\(aq: 1}, -\(aqclient\(aq: \(aqwheel\(aq, -\(aqeauth\(aq: \(aqpam\(aq, -.UNINDENT -.UNINDENT -.sp -} -.UNINDENT -.INDENT 0.0 -.TP .B salt.wheel.config.values() Return the raw values of the config file .UNINDENT @@ -154470,21 +133915,11 @@ Accept keys based on a glob match .UNINDENT .INDENT 0.0 .TP -.B salt.wheel.key.accept_dict(match) -Accept keys based on a dict of keys -.UNINDENT -.INDENT 0.0 -.TP .B salt.wheel.key.delete(match) Delete keys based on a glob match .UNINDENT .INDENT 0.0 .TP -.B salt.wheel.key.delete_dict(match) -Delete keys based on a dict of keys -.UNINDENT -.INDENT 0.0 -.TP .B salt.wheel.key.finger(match) Return the matching key fingerprints .UNINDENT @@ -154518,20 +133953,7 @@ List all the keys .INDENT 0.0 .TP .B salt.wheel.key.reject(match) -Reject keys based on a glob match -.UNINDENT -.INDENT 0.0 -.TP -.B salt.wheel.key.reject_dict(match) -Reject keys based on a dict of keys -.UNINDENT -.SS salt.wheel.minions -.sp -Wheel system wrapper for connected minions -.INDENT 0.0 -.TP -.B salt.wheel.minions.connected() -List all connected minions on a salt\-master +Delete keys based on a glob match .UNINDENT .SS salt.wheel.pillar_roots .sp @@ -154563,456 +133985,6 @@ Read the contents of a text file, if the file is binary then Write the named file, by default the first file found is written, but the index of the file can be specified to write to a lower priority file root .UNINDENT -.SS Full list of builtin beacon modules -.TS -center; -|l|l|. -_ -T{ -\fBinotify\fP -T} T{ -Watch files and translate the changes into salt events -T} -_ -T{ -\fBjournald\fP -T} T{ -A simple beacon to watch journald for specific entries -T} -_ -T{ -\fBtwilio_txt_msg\fP -T} T{ -Beacon to emit Twilio text messages -T} -_ -T{ -\fBwtmp\fP -T} T{ -Beacon to fire events at login of users as registered in the wtmp file -T} -_ -.TE -.SS salt.beacons.inotify -.sp -Watch files and translate the changes into salt events -.INDENT 0.0 -.TP -.B salt.beacons.inotify.beacon(config) -Watch the configured files -.sp -Example Config -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -beacons: - inotify: - /path/to/file/or/dir: - mask: - \- open - \- create - \- close_write - recurse: True - auto_add: True -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 7.0 -.TP -.B The mask can be a single option from: -access -attrib -close_nowrite -close_write -create -delete -delete_self -excl_unlink -ignored -modify -moved_from -moved_to -move_self -oneshot -onlydir -open -unmount -.TP -.B recurse: -Tell the beacon to recursively watch files in the directory -.TP -.B auto_add: -Automatically start adding files that are created in the watched directory -.UNINDENT -.UNINDENT -.SS salt.beacons.journald -.sp -A simple beacon to watch journald for specific entries -.INDENT 0.0 -.TP -.B salt.beacons.journald.beacon(config) -The journald beacon allows for the systemd jornal to be parsed and linked -objects to be turned into events. -.sp -This beacons config will return all sshd jornal entries -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -beacons: - journald: - sshd: - SYSLOG_IDENTIFIER: sshd - PRIORITY: 6 -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.SS salt.beacons.twilio_txt_msg -.sp -Beacon to emit Twilio text messages -.INDENT 0.0 -.TP -.B salt.beacons.twilio_txt_msg.beacon(config) -Emit a dict name "texts" whose value is a list -of texts. -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -beacons: - twilio_txt_msg: - account_sid: "" - auth_token: "" - twilio_number: "+15555555555" - poll_interval: 10 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -poll_interval defaults to 10 seconds -.UNINDENT -.SS salt.beacons.wtmp -.sp -Beacon to fire events at login of users as registered in the wtmp file -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -beacons: - wtmp: {} -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.beacons.wtmp.beacon(config) -Read the last wtmp file and return information on the logins -.INDENT 7.0 -.INDENT 3.5 -.sp -.nf -.ft C -beacons: - wtmp: {} -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.SS Full list of builtin sdb modules -.TS -center; -|l|l|. -_ -T{ -\fBetcd_db\fP -T} T{ -etcd Database Module -T} -_ -T{ -\fBkeyring_db\fP -T} T{ -Keyring Database Module -T} -_ -T{ -\fBmemcached\fP -T} T{ -Memcached sdb Module -T} -_ -T{ -\fBsqlite3\fP -T} T{ -SQLite sdb Module -T} -_ -.TE -.SS salt.sdb.etcd_db -.sp -etcd Database Module -.INDENT 0.0 -.TP -.B maintainer -SaltStack -.TP -.B maturity -New -.TP -.B depends -python\-etcd -.TP -.B platform -all -.UNINDENT -.sp -New in version 2015.2.0. - -.sp -This module allows access to the etcd database using an \fBsdb://\fP URI. This -package is located at \fBhttps://pypi.python.org/pypi/python\-etcd\fP\&. -.sp -Like all sdb modules, the etcd module requires a configuration profile to -be configured in either the minion or master configuration file. This profile -requires very little. In the example: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -myetcd: - driver: etcd - etcd.host: 127.0.0.1 - etcd.port: 4001 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The \fBdriver\fP refers to the etcd module, \fBetcd.host\fP refers to the host that -is hosting the etcd database and \fBetcd.port\fP refers to the port on that host. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -password: sdb://myetcd/mypassword -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.sdb.etcd_db.get(key, service=None, profile=None) -Get a value from the etcd service -.UNINDENT -.INDENT 0.0 -.TP -.B salt.sdb.etcd_db.set_(key, value, service=None, profile=None) -Set a key/value pair in the etcd service -.UNINDENT -.SS salt.sdb.keyring_db -.sp -Keyring Database Module -.INDENT 0.0 -.TP -.B maintainer -SaltStack -.TP -.B maturity -New -.TP -.B depends -keyring -.TP -.B platform -all -.UNINDENT -.sp -This module allows access to the keyring package using an \fBsdb://\fP URI. This -package is located at \fBhttps://pypi.python.org/pypi/keyring\fP\&. -.sp -Care must be taken when using keyring. Not all keyend backends are supported on -all operating systems. Also, many backends require an agent to be running in -order to work. For instance, the "Secret Service" backend requires a compatible -agent such as \fBgnome\-keyring\-daemon\fP or \fBkwallet\fP to be running. The -keyczar backend does not seem to enjoy the benefits of an agent, and so using -it will require either that the password is typed in manually (which is -unreasonable for the salt\-minion and salt\-master daemons, especially in -production) or an agent is written for it. -.sp -Like all sdb modules, the keyring module requires a configuration profile to -be configured in either the minion or master configuration file. This profile -requires very little. In the example: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -mykeyring: - driver: keyring - service: system -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The \fBdriver\fP refers to the keyring module, \fBservice\fP refers to the service -that will be used inside of keyring (which may be likened unto a database -table) and \fBmykeyring\fP refers to the name that will appear in the URI: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -password: sdb://mykeyring/mypassword -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The underlying backend configuration must be configured via keyring itself. For -examples and documentation, see keyring: -.sp -\fI\%https://pypi.python.org/pypi/keyring\fP -.sp -New in version 2014.1.4. - -.INDENT 0.0 -.TP -.B salt.sdb.keyring_db.get(key, service=None, profile=None) -Get a value from a keyring service -.UNINDENT -.INDENT 0.0 -.TP -.B salt.sdb.keyring_db.set_(key, value, service=None, profile=None) -Set a key/value pair in a keyring service -.UNINDENT -.SS salt.sdb.memcached -.sp -Memcached sdb Module -.INDENT 0.0 -.TP -.B maintainer -SaltStack -.TP -.B maturity -New -.TP -.B depends -python\-memcached -.TP -.B platform -all -.UNINDENT -.sp -This module allows access to memcached using an \fBsdb://\fP URI. This -package is located at \fBhttps://pypi.python.org/pypi/python\-memcached\fP\&. -.sp -Like all sdb modules, the memcached module requires a configuration profile to -be configured in either the minion or master configuration file. This profile -requires very little. In the example: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -mymemcache: - driver: memcached - host: localhost - port: 11211 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The \fBdriver\fP refers to the memcached module, \fBhost\fP and \fBport\fP the -memcached server to connect to (defaults to \fBlocalhost\fP and \fB11211\fP, -and \fBmymemcached\fP refers to the name that will appear in the URI: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -password: sdb://mymemcached/mykey -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B salt.sdb.memcached.get(key, profile=None) -Get a value from memcached -.UNINDENT -.INDENT 0.0 -.TP -.B salt.sdb.memcached.set_(key, value, profile=None) -Set a key/value pair in memcached -.UNINDENT -.SS salt.sdb.sqlite3 -.sp -SQLite sdb Module -.INDENT 0.0 -.TP -.B maintainer -SaltStack -.TP -.B maturity -New -.TP -.B platform -all -.UNINDENT -.sp -This module allows access to sqlite3 using an \fBsdb://\fP URI -.sp -Like all sdb modules, the sqlite3 module requires a configuration profile to -be configured in either the minion or master configuration file. This profile -requires very little. For example: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -mysqlite: - driver: sqlite3 - database: /tmp/sdb.sqlite - table: sdb - create_table: True -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The \fBdriver\fP refers to the sqlite3 module, \fBdatabase\fP refers to the sqlite3 -database file. \fBtable\fP is the table within the db that will hold keys and -values (defaults to \fBsdb\fP). The database and table will be created if they -do not exist. -.SS Advanced Usage: -.sp -Instead of a table name, it is possible to provide custom SQL statements to -create the table(s) and get and set values. -.INDENT 0.0 -.TP -.B salt.sdb.sqlite3.get(key, profile=None) -Get a value from sqlite3 -.UNINDENT -.INDENT 0.0 -.TP -.B salt.sdb.sqlite3.set_(key, value, profile=None) -Set a key/value pair in sqlite3 -.UNINDENT .SH SALT BEST PRACTICES .sp Salt\(aqs extreme flexibility leads to many questions concerning the structure of @@ -155142,7 +134114,7 @@ changes will not take place. secure and insecure data pertaining to minions. When designing the structure of the \fB/srv/pillar\fP directory, the pillars contained within should once again be focused on clear and concise data which users can easily -review, modify, and understand. +review, modify and understand. .sp The \fB/srv/pillar/\fP directory is primarily controlled by \fBtop.sls\fP\&. It should be noted that the pillar \fBtop.sls\fP is not used as a location to @@ -155285,8 +134257,6 @@ apache: .sp .nf .ft C -{% from "apache/map.jinja" import apache with context %} - include: \- apache @@ -155686,465 +134656,13 @@ to aid in developing States and Salt code. .SS Troubleshooting the Salt Master .sp If your Salt master is having issues such as minions not returning data, slow -execution times, or a variety of other issues, the following links contain -details on troubleshooting the most common issues encountered: -.SS Troubleshooting the Salt Master -.SS Running in the Foreground -.sp -A great deal of information is available via the debug logging system, if you -are having issues with minions connecting or not starting run the master in -the foreground: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -# salt\-master \-l debug -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Anyone wanting to run Salt daemons via a process supervisor such as \fI\%monit\fP, -\fI\%runit\fP, or \fI\%supervisord\fP, should omit the \fB\-d\fP argument to the daemons and -run them in the foreground. -.SS What Ports does the Master Need Open? -.sp -For the master, TCP ports 4505 and 4506 need to be open. If you\(aqve put both -your Salt master and minion in debug mode and don\(aqt see an acknowledgment -that your minion has connected, it could very well be a firewall interfering -with the connection. See our \fBfirewall configuration\fP page for help opening the firewall on various -platforms. -.sp -If you\(aqve opened the correct TCP ports and still aren\(aqt seeing connections, -check that no additional access control system such as \fI\%SELinux\fP or -\fI\%AppArmor\fP is blocking Salt. -.SS Too many open files -.sp -The salt\-master needs at least 2 sockets per host that connects to it, one for -the Publisher and one for response port. Thus, large installations may, upon -scaling up the number of minions accessing a given master, encounter: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -12:45:29,289 [salt.master ][INFO ] Starting Salt worker process 38 -Too many open files -sock != \-1 (tcp_listener.cpp:335) -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The solution to this would be to check the number of files allowed to be -opened by the user running salt\-master (root by default): -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -[root@salt\-master ~]# ulimit \-n -1024 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -If this value is not equal to at least twice the number of minions, then it -will need to be raised. For example, in an environment with 1800 minions, the -\fBnofile\fP limit should be set to no less than 3600. This can be done by -creating the file \fB/etc/security/limits.d/99\-salt.conf\fP, with the following -contents: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -root hard nofile 4096 -root soft nofile 4096 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Replace \fBroot\fP with the user under which the master runs, if different. -.sp -If your master does not have an \fB/etc/security/limits.d\fP directory, the lines -can simply be appended to \fB/etc/security/limits.conf\fP\&. -.sp -As with any change to resource limits, it is best to stay logged into your -current shell and open another shell to run \fBulimit \-n\fP again and verify that -the changes were applied correctly. Additionally, if your master is running -upstart, it may be necessary to specify the \fBnofile\fP limit in -\fB/etc/default/salt\-master\fP if upstart isn\(aqt respecting your resource limits: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -limit nofile 4096 4096 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -\fBNOTE:\fP -.INDENT 0.0 -.INDENT 3.5 -The above is simply an example of how to set these values, and you may -wish to increase them even further if your Salt master is doing more than -just running Salt. -.UNINDENT -.UNINDENT -.SS Salt Master Stops Responding -.sp -There are known bugs with ZeroMQ versions less than 2.1.11 which can cause the -Salt master to not respond properly. If you\(aqre running a ZeroMQ version greater -than or equal to 2.1.9, you can work around the bug by setting the sysctls -\fBnet.core.rmem_max\fP and \fBnet.core.wmem_max\fP to 16777216. Next, set the third -field in \fBnet.ipv4.tcp_rmem\fP and \fBnet.ipv4.tcp_wmem\fP to at least 16777216. -.sp -You can do it manually with something like: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -# echo 16777216 > /proc/sys/net/core/rmem_max -# echo 16777216 > /proc/sys/net/core/wmem_max -# echo "4096 87380 16777216" > /proc/sys/net/ipv4/tcp_rmem -# echo "4096 87380 16777216" > /proc/sys/net/ipv4/tcp_wmem -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Or with the following Salt state: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -net.core.rmem_max: - sysctl: - \- present - \- value: 16777216 - -net.core.wmem_max: - sysctl: - \- present - \- value: 16777216 - -net.ipv4.tcp_rmem: - sysctl: - \- present - \- value: 4096 87380 16777216 - -net.ipv4.tcp_wmem: - sysctl: - \- present - \- value: 4096 87380 16777216 -.ft P -.fi -.UNINDENT -.UNINDENT -.SS Live Python Debug Output -.sp -If the master seems to be unresponsive, a SIGUSR1 can be passed to the -salt\-master threads to display what piece of code is executing. This debug -information can be invaluable in tracking down bugs. -.sp -To pass a SIGUSR1 to the master, first make sure the minion is running in the -foreground. Stop the service if it is running as a daemon, and start it in the -foreground like so: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -# salt\-master \-l debug -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Then pass the signal to the master when it seems to be unresponsive: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -# killall \-SIGUSR1 salt\-master -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -When filing an issue or sending questions to the mailing list for a problem -with an unresponsive daemon, be sure to include this information if possible. -.SS Live Salt\-Master Profiling -.sp -When faced with performance problems one can turn on master process profiling by -sending it SIGUSR2. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -# killall \-SIGUSR2 salt\-master -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -This will activate \fByappi\fP profiler inside salt\-master code, then after some -time one must send SIGUSR2 again to stop profiling and save results to file. If -run in foreground salt\-master will report filename for the results, which are -usually located under \fB/tmp\fP on Unix\-based OSes and \fBc:\etemp\fP on windows. -.sp -Results can then be analyzed with \fI\%kcachegrind\fP or similar tool. -.SS Commands Time Out or Do Not Return Output -.sp -Depending on your OS (this is most common on Ubuntu due to apt\-get) you may -sometimes encounter times where your highstate, or other long running commands -do not return output. -.sp -\fBNOTE:\fP -.INDENT 0.0 -.INDENT 3.5 -A number of timing issues were resolved in the 2014.1 release of Salt. -Upgrading to at least this version is strongly recommended if timeouts -persist. -.UNINDENT -.UNINDENT -.sp -By default the timeout is set to 5 seconds. The timeout value can easily be -increased by modifying the \fBtimeout\fP line within your \fB/etc/salt/master\fP -configuration file. -.SS Passing the \-c Option to Salt Returns a Permissions Error -.sp -Using the \fB\-c\fP option with the Salt command modifies the configuration -directory. When the configuration file is read it will still base data off of -the \fBroot_dir\fP setting. This can result in unintended behavior if you are -expecting files such as \fB/etc/salt/pki\fP to be pulled from the location -specified with \fB\-c\fP\&. Modify the \fBroot_dir\fP setting to address this -behavior. -.SS Salt Master Doesn\(aqt Return Anything While Running jobs -.sp -When a command being run via Salt takes a very long time to return -(package installations, certain scripts, etc.) the master may drop you back -to the shell. In most situations the job is still running but Salt has -exceeded the set timeout before returning. Querying the job queue will -provide the data of the job but is inconvenient. This can be resolved by -either manually using the \fB\-t\fP option to set a longer timeout when running -commands (by default it is 5 seconds) or by modifying the master -configuration file: \fB/etc/salt/master\fP and setting the \fBtimeout\fP value to -change the default timeout for all commands, and then restarting the -salt\-master service. -.SS Salt Master Auth Flooding -.sp -In large installations, care must be taken not to overwhealm the master with -authentication requests. Several options can be set on the master which -mitigate the chances of an authentication flood from causing an interuption in -service. -.sp -\fBNOTE:\fP -.INDENT 0.0 -.INDENT 3.5 -recon_default: -.sp -The average number of seconds to wait between reconnection attempts. -.INDENT 0.0 -.TP -.B recon_max: -The maximum number of seconds to wait between reconnection attempts. -.TP -.B recon_randomize: -A flag to indicate whether the recon_default value should be randomized. -.TP -.B acceptance_wait_time: -The number of seconds to wait for a reply to each authentication request. -.TP -.B random_reauth_delay: -The range of seconds across which the minions should attempt to randomize -authentication attempts. -.TP -.B auth_timeout: -The total time to wait for the authentication process to complete, regardless -of the number of attempts. -.UNINDENT -.UNINDENT -.UNINDENT +execution times, or a variety of other issues the +\fBSalt master troubleshooting page\fP contains details on troubleshooting the most +common issues encountered. .SS Troubleshooting the Salt Minion .sp -In the event that your Salt minion is having issues, a variety of solutions -and suggestions are available. Please refer to the following links for more information: -.SS Troubleshooting the Salt Minion -.SS Running in the Foreground -.sp -A great deal of information is available via the debug logging system, if you -are having issues with minions connecting or not starting run the minion in -the foreground: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -# salt\-minion \-l debug -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Anyone wanting to run Salt daemons via a process supervisor such as \fI\%monit\fP, -\fI\%runit\fP, or \fI\%supervisord\fP, should omit the \fB\-d\fP argument to the daemons and -run them in the foreground. -.SS What Ports does the Minion Need Open? -.sp -No ports need to be opened on the minion, as it makes outbound connections to -the master. If you\(aqve put both your Salt master and minion in debug mode and -don\(aqt see an acknowledgment that your minion has connected, it could very well -be a firewall interfering with the connection. See our \fBfirewall -configuration\fP page for help opening the firewall -on various platforms. -.sp -If you have netcat installed, you can check port connectivity from the minion -with the \fBnc\fP command: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -$ nc \-v \-z salt.master.ip.addr 4505 -Connection to salt.master.ip.addr 4505 port [tcp/unknown] succeeded! -$ nc \-v \-z salt.master.ip.addr 4506 -Connection to salt.master.ip.addr 4506 port [tcp/unknown] succeeded! -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The \fI\%Nmap\fP utility can also be used to check if these ports are open: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -# nmap \-sS \-q \-p 4505\-4506 salt.master.ip.addr - -Starting Nmap 6.40 ( http://nmap.org ) at 2013\-12\-29 19:44 CST -Nmap scan report for salt.master.ip.addr (10.0.0.10) -Host is up (0.0026s latency). -PORT STATE SERVICE -4505/tcp open unknown -4506/tcp open unknown -MAC Address: 00:11:22:AA:BB:CC (Intel) - -Nmap done: 1 IP address (1 host up) scanned in 1.64 seconds -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -If you\(aqve opened the correct TCP ports and still aren\(aqt seeing connections, -check that no additional access control system such as \fI\%SELinux\fP or -\fI\%AppArmor\fP is blocking Salt. -.SS Using salt\-call -.sp -The \fBsalt\-call\fP command was originally developed for aiding in the development -of new Salt modules. Since then, many applications have been developed for -running any Salt module locally on a minion. These range from the original -intent of salt\-call, development assistance, to gathering more verbose output -from calls like \fBstate.highstate\fP\&. -.sp -When initially creating your state tree, it is generally recommended to invoke -\fBstate.highstate\fP from the minion with -\fBsalt\-call\fP\&. This displays far more information about the highstate execution -than calling it remotely. For even more verbosity, increase the loglevel with -the same argument as \fBsalt\-minion\fP: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -# salt\-call \-l debug state.highstate -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The main difference between using \fBsalt\fP and using \fBsalt\-call\fP is that -\fBsalt\-call\fP is run from the minion, and it only runs the selected function on -that minion. By contrast, \fBsalt\fP is run from the master, and requires you to -specify the minions on which to run the command using salt\(aqs \fBtargeting -system\fP\&. -.SS Live Python Debug Output -.sp -If the minion seems to be unresponsive, a SIGUSR1 can be passed to the process -to display what piece of code is executing. This debug information can be -invaluable in tracking down bugs. -.sp -To pass a SIGUSR1 to the minion, first make sure the minion is running in the -foreground. Stop the service if it is running as a daemon, and start it in the -foreground like so: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -# salt\-minion \-l debug -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Then pass the signal to the minion when it seems to be unresponsive: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -# killall \-SIGUSR1 salt\-minion -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -When filing an issue or sending questions to the mailing list for a problem -with an unresponsive daemon, be sure to include this information if possible. -.SS Multiprocessing in Execution Modules -.sp -As is outlined in github issue #6300, Salt cannot use python\(aqs multiprocessing -pipes and queues from execution modules. Multiprocessing from the execution -modules is perfectly viable, it is just necessary to use Salt\(aqs event system -to communicate back with the process. -.sp -The reason for this difficulty is that python attempts to pickle all objects in -memory when communicating, and it cannot pickle function objects. Since the -Salt loader system creates and manages function objects this causes the pickle -operation to fail. -.SS Salt Minion Doesn\(aqt Return Anything While Running Jobs Locally -.sp -When a command being run via Salt takes a very long time to return -(package installations, certain scripts, etc.) the minion may drop you back -to the shell. In most situations the job is still running but Salt has -exceeded the set timeout before returning. Querying the job queue will -provide the data of the job but is inconvenient. This can be resolved by -either manually using the \fB\-t\fP option to set a longer timeout when running -commands (by default it is 5 seconds) or by modifying the minion -configuration file: \fB/etc/salt/minion\fP and setting the \fBtimeout\fP value to -change the default timeout for all commands, and then restarting the -salt\-minion service. -.sp -\fBNOTE:\fP -.INDENT 0.0 -.INDENT 3.5 -Modifying the minion timeout value is not required when running commands -from a Salt Master. It is only required when running commands locally on -the minion. -.UNINDENT -.UNINDENT +In the event that your Salt minion is having issues a variety of solutions +and suggestions are available at the \fBSalt minion troubleshooting page\fP\&. .SS Running in the Foreground .sp A great deal of information is available via the debug logging system, if you @@ -156350,411 +134868,7 @@ advised that its dependencies need to be installed from EPEL and that Salt needs to be run with the \fBpython26\fP executable. .SS Common YAML Gotchas .sp -An extensive list of YAML idiosyncrasies has been compiled: -.SS YAML Idiosyncrasies -.sp -One of Salt\(aqs strengths, the use of existing serialization systems for -representing SLS data, can also backfire. \fI\%YAML\fP is a general purpose system -and there are a number of things that would seem to make sense in an sls -file that cause YAML issues. It is wise to be aware of these issues. While -reports or running into them are generally rare they can still crop up at -unexpected times. -.SS Spaces vs Tabs -.sp -\fI\%YAML uses spaces\fP, period. Do not use tabs in your SLS files! If strange -errors are coming up in rendering SLS files, make sure to check that -no tabs have crept in! In Vim, after enabling search highlighting -with: \fB:set hlsearch\fP, you can check with the following key sequence in -normal mode(you can hit \fIESC\fP twice to be sure): \fB/\fP, \fICtrl\-v\fP, \fITab\fP, then -hit \fIEnter\fP\&. Also, you can convert tabs to 2 spaces by these commands in Vim: -\fB:set tabstop=2 expandtab\fP and then \fB:retab\fP\&. -.SS Indentation -.sp -The suggested syntax for YAML files is to use 2 spaces for indentation, -but YAML will follow whatever indentation system that the individual file -uses. Indentation of two spaces works very well for SLS files given the -fact that the data is uniform and not deeply nested. -.SS Nested Dictionaries -.sp -When \fI\%dicts\fP are nested within other data -structures (particularly lists), the indentation logic sometimes changes. -Examples of where this might happen include \fBcontext\fP and \fBdefault\fP options -from the \fBfile.managed\fP state: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -/etc/http/conf/http.conf: - file: - \- managed - \- source: salt://apache/http.conf - \- user: root - \- group: root - \- mode: 644 - \- template: jinja - \- context: - custom_var: "override" - \- defaults: - custom_var: "default value" - other_var: 123 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Notice that while the indentation is two spaces per level, for the values under -the \fBcontext\fP and \fBdefaults\fP options there is a four\-space indent. If only -two spaces are used to indent, then those keys will be considered part of the -same dictionary that contains the \fBcontext\fP key, and so the data will not be -loaded correctly. If using a double indent is not desirable, then a -deeply\-nested dict can be declared with curly braces: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -/etc/http/conf/http.conf: - file: - \- managed - \- source: salt://apache/http.conf - \- user: root - \- group: root - \- mode: 644 - \- template: jinja - \- context: { - custom_var: "override" } - \- defaults: { - custom_var: "default value", - other_var: 123 } -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Here is a more concrete example of how YAML actually handles these -indentations, using the Python interpreter on the command line: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C ->>> import yaml ->>> yaml.safe_load(\(aq\(aq\(aqmystate: -\&... file.managed: -\&... \- context: -\&... some: var\(aq\(aq\(aq) -{\(aqmystate\(aq: {\(aqfile.managed\(aq: [{\(aqcontext\(aq: {\(aqsome\(aq: \(aqvar\(aq}}]}} ->>> yaml.safe_load(\(aq\(aq\(aqmystate: -\&... file.managed: -\&... \- context: -\&... some: var\(aq\(aq\(aq) -{\(aqmystate\(aq: {\(aqfile.managed\(aq: [{\(aqsome\(aq: \(aqvar\(aq, \(aqcontext\(aq: None}]}} -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Note that in the second example, \fBsome\fP is added as another key in the same -dictionary, whereas in the first example, it\(aqs the start of a new dictionary. -That\(aqs the distinction. \fBcontext\fP is a common example because it is a keyword -arg for many functions, and should contain a dictionary. -.SS True/False, Yes/No, On/Off -.sp -PyYAML will load these values as boolean \fBTrue\fP or \fBFalse\fP\&. Un\-capitalized -versions will also be loaded as booleans (\fBtrue\fP, \fBfalse\fP, \fByes\fP, \fBno\fP, -\fBon\fP, and \fBoff\fP). This can be especially problematic when constructing -Pillar data. Make sure that your Pillars which need to use the string versions -of these values are enclosed in quotes. -.SS Integers are Parsed as Integers -.sp -NOTE: This has been fixed in salt 0.10.0, as of this release passing an -integer that is preceded by a 0 will be correctly parsed -.sp -When passing \fBintegers\fP into an SLS file, they are -passed as integers. This means that if a state accepts a string value -and an integer is passed, that an integer will be sent. The solution here -is to send the integer as a string. -.sp -This is best explained when setting the mode for a file: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -/etc/vimrc: - file: - \- managed - \- source: salt://edit/vimrc - \- user: root - \- group: root - \- mode: 644 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Salt manages this well, since the mode is passed as 644, but if the mode is -zero padded as 0644, then it is read by YAML as an integer and evaluated as -an octal value, 0644 becomes 420. Therefore, if the file mode is -preceded by a 0 then it needs to be passed as a string: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -/etc/vimrc: - file: - \- managed - \- source: salt://edit/vimrc - \- user: root - \- group: root - \- mode: \(aq0644\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.SS YAML does not like "Double Short Decs" -.sp -If I can find a way to make YAML accept "Double Short Decs" then I will, since -I think that double short decs would be awesome. So what is a "Double Short -Dec"? It is when you declare a multiple short decs in one ID. Here is a -standard short dec, it works great: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -vim: - pkg.installed -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The short dec means that there are no arguments to pass, so it is not required -to add any arguments, and it can save space. -.sp -YAML though, gets upset when declaring multiple short decs, for the record... -.sp -THIS DOES NOT WORK: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -vim: - pkg.installed - user.present -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Similarly declaring a short dec in the same ID dec as a standard dec does not -work either... -.sp -ALSO DOES NOT WORK: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -fred: - user.present - ssh_auth.present: - \- name: AAAAB3NzaC... - \- user: fred - \- enc: ssh\-dss - \- require: - \- user: fred -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The correct way is to define them like this: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -vim: - pkg.installed: [] - user.present: [] - -fred: - user.present: [] - ssh_auth.present: - \- name: AAAAB3NzaC... - \- user: fred - \- enc: ssh\-dss - \- require: - \- user: fred -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Alternatively, they can be defined the "old way", or with multiple -"full decs": -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -vim: - pkg: - \- installed - user: - \- present - -fred: - user: - \- present - ssh_auth: - \- present - \- name: AAAAB3NzaC... - \- user: fred - \- enc: ssh\-dss - \- require: - \- user: fred -.ft P -.fi -.UNINDENT -.UNINDENT -.SS YAML support only plain ASCII -.sp -According to YAML specification, only ASCII characters can be used. -.sp -Within double\-quotes, special characters may be represented with C\-style -escape sequences starting with a backslash ( \e ). -.sp -Examples: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -\- micro: "\eu00b5" -\- copyright: "\eu00A9" -\- A: "\ex41" -\- alpha: "\eu0251" -\- Alef: "\eu05d0" -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -List of usable \fI\%Unicode characters\fP will help you to identify correct numbers. -.sp -Python can also be used to discover the Unicode number for a character: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -repr(u"Text with wrong characters i need to figure out") -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -This shell command can find wrong characters in your SLS files: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -find . \-name \(aq*.sls\(aq \-exec grep \-\-color=\(aqauto\(aq \-P \-n \(aq[^\ex00\-\ex7F]\(aq \e{} \e; -.ft P -.fi -.UNINDENT -.UNINDENT -.INDENT 0.0 -.TP -.B Alternatively you can toggle the \fIyaml_utf8\fP setting in your master configuration -file. This is still an experimental setting but it should manage the right -encoding conversion in salt after yaml states compilations. -.UNINDENT -.SS Underscores stripped in Integer Definitions -.sp -If a definition only includes numbers and underscores, it is parsed by YAML as -an integer and all underscores are stripped. To ensure the object becomes a -string, it should be surrounded by quotes. \fI\%More information here\fP\&. -.sp -Here\(aqs an example: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C ->>> import yaml ->>> yaml.safe_load(\(aq2013_05_10\(aq) -20130510 ->>> yaml.safe_load(\(aq"2013_05_10"\(aq) -\(aq2013_05_10\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.SS Automatic \fBdatetime\fP conversion -.sp -If there is a value in a YAML file formatted \fB2014\-01\-20 14:23:23\fP or -similar, YAML will automatically convert this to a Python \fBdatetime\fP object. -These objects are not msgpack serializable, and so may break core salt -functionality. If values such as these are needed in a salt YAML file -(specifically a configuration file), they should be formatted with surrounding -strings to force YAML to serialize them as strings: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C ->>> import yaml ->>> yaml.safe_load(\(aq2014\-01\-20 14:23:23\(aq) -datetime.datetime(2014, 1, 20, 14, 23, 23) ->>> yaml.safe_load(\(aq"2014\-01\-20 14:23:23"\(aq) -\(aq2014\-01\-20 14:23:23\(aq -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Additionally, numbers formatted like \fBXXXX\-XX\-XX\fP will also be converted (or -YAML will attempt to convert them, and error out if it doesn\(aqt think the date -is a real one). Thus, for example, if a minion were to have an ID of -\fB4017\-16\-20\fP the minion would not start because YAML would complain that the -date was out of range. The workaround is the same, surround the offending -string with quotes: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C ->>> import yaml ->>> yaml.safe_load(\(aq4017\-16\-20\(aq) -Traceback (most recent call last): - File "", line 1, in - File "/usr/local/lib/python2.7/site\-packages/yaml/__init__.py", line 93, in safe_load - return load(stream, SafeLoader) - File "/usr/local/lib/python2.7/site\-packages/yaml/__init__.py", line 71, in load - return loader.get_single_data() - File "/usr/local/lib/python2.7/site\-packages/yaml/constructor.py", line 39, in get_single_data - return self.construct_document(node) - File "/usr/local/lib/python2.7/site\-packages/yaml/constructor.py", line 43, in construct_document - data = self.construct_object(node) - File "/usr/local/lib/python2.7/site\-packages/yaml/constructor.py", line 88, in construct_object - data = constructor(self, node) - File "/usr/local/lib/python2.7/site\-packages/yaml/constructor.py", line 312, in construct_yaml_timestamp - return datetime.date(year, month, day) -ValueError: month must be in 1..12 ->>> yaml.safe_load(\(aq"4017\-16\-20"\(aq) -\(aq4017\-16\-20\(aq -.ft P -.fi -.UNINDENT -.UNINDENT +An extensive list of \fBYAML idiosyncrasies\fP has been compiled. .SS Live Python Debug Output .sp If the minion or master seems to be unresponsive, a SIGUSR1 can be passed to @@ -156832,7 +134946,7 @@ the master event bus publisher (master_event_pub.ipc). .SS Overview .sp The salt\-master deamon runs on the designated Salt master and performs -functions such as authenticating minions, sending, and receiving requests +functions such as authenticating minions, sending and receiving requests from connected minions and sending and receiving requests and replies to the \(aqsalt\(aq CLI. .SS Moving Pieces @@ -158081,7 +136195,7 @@ Uncomment and change the \fBuser: root\fP value to your own user. Uncomment and change the \fBroot_dir: /\fP value to point to \fB/path/to/your/virtualenv\fP\&. .IP 3. 3 -If you are running version 0.11.1 or older, uncomment, and change the +If you are running version 0.11.1 or older, uncomment and change the \fBpidfile: /var/run/salt\-master.pid\fP value to point to \fB/path/to/your/virtualenv/salt\-master.pid\fP\&. .IP 4. 3 @@ -158095,7 +136209,7 @@ Edit the minion config file: Repeat the edits you made in the master config for the \fBuser\fP and \fBroot_dir\fP values as well as any port changes. .IP 2. 3 -If you are running version 0.11.1 or older, uncomment, and change the +If you are running version 0.11.1 or older, uncomment and change the \fBpidfile: /var/run/salt\-minion.pid\fP value to point to \fB/path/to/your/virtualenv/salt\-minion.pid\fP\&. .IP 3. 3 @@ -158152,15 +136266,13 @@ Once the minion starts, you may see an error like the following: .sp .nf .ft C -zmq.core.error.ZMQError: ipc path "/path/to/your/virtualenv/ -var/run/salt/minion/minion_event_7824dcbcfd7a8f6755939af70b96249f_pub.ipc" -is longer than 107 characters (sizeof(sockaddr_un.sun_path)). +zmq.core.error.ZMQError: ipc path "/path/to/your/virtualenv/var/run/salt/minion/minion_event_7824dcbcfd7a8f6755939af70b96249f_pub.ipc" is longer than 107 characters (sizeof(sockaddr_un.sun_path)). .ft P .fi .UNINDENT .UNINDENT .sp -This means that the path to the socket the minion is using is too long. This is +This means the the path to the socket the minion is using is too long. This is a system limitation, so the only workaround is to reduce the length of this path. This can be done in a couple different ways: .INDENT 0.0 @@ -158342,90 +136454,6 @@ object. For a list of all built in execution modules, click \fBhere\fP .sp For information on writing execution modules, see \fBthis page\fP\&. -.SS Interactive Debugging -.sp -Sometimes debugging with \fBprint()\fP and extra logs sprinkled everywhere is not -the best strategy. -.sp -IPython is a helpful debug tool that has an interactive python environment -which can be embedded in python programs. -.sp -First the system will require IPython to be installed. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -# Debian -apt\-get install ipython - -# Arch Linux -pacman \-Syu ipython2 - -# RHEL/CentOS (via EPEL) -yum install python\-ipython -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Now, in the troubling python module, add the following line at a location where -the debugger should be started: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -test = \(aqtest123\(aq -import IPython; IPython.embed_kernel() -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -After running a Salt command that hits that line, the following will show up in -the log file: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -[CRITICAL] To connect another client to this kernel, use: -[IPKernelApp] \-\-existing kernel\-31271.json -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -Now on the system that invoked \fBembed_kernel\fP, run the following command from -a shell: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -# NOTE: use ipython2 instead of ipython for Arch Linux -ipython console \-\-existing -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -This provides a console that has access to all the vars and functions, and even -supports tab\-completion. -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -print(test) -test123 -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -To exit IPython and continue running Salt, press \fBCtrl\-d\fP to logout. .SS State Modules .sp State modules are used to define the state interfaces used by Salt States. @@ -159009,7 +137037,7 @@ make download\-translations SPHINXLANG=pt_PT .UNINDENT .UNINDENT .sp -To download \fBpt_PT\fP, Portuguese(Portugal), and \fBnl\fP, Dutch, you can use the +To download \fBpt_PT\fP, Portuguese(Portugal) and \fBnl\fP, Dutch, you can use the helper script directly: .INDENT 0.0 .INDENT 3.5 @@ -159114,8 +137142,10 @@ Run integration tests for an individual module: \fB\&./tests/runtests.py \-n int .IP \(bu 2 Run unit tests for an individual module: \fB\&./tests/runtests.py \-n unit.modules.virt_test\fP .IP \(bu 2 -Run an individual test by using the class and test name (this example is for the \fBtest_default_kvm_profile\fP test in the \fBintegration.module.virt\fP): \fB\&./tests/runtests.py \-n ingtegration.module.virt.VirtTest.test_default_kvm_profile\fP +Run an individual test by using the class and test name (this example is for the \fBtest_default_kvm_profile\fP test in the .UNINDENT +.sp +\fBintegration.module.virt\fP): \fB\&./tests/runtests.py \-n ingtegration.module.virt.VirtTest.test_default_kvm_profile\fP .SS Running Unit Tests Without Integration Test Daemons .sp Since the unit tests do not require a master or minion to execute, it is often useful to be able to @@ -159339,7 +137369,7 @@ minions. This allows the syndic interface to be tested and master/minion communication to be verified. All of the integration tests are executed as live salt commands sent through the started daemons. .sp -Integration tests are particularly good at testing modules, states, and shell +Integration tests are particularly good at testing modules, states and shell commands. .INDENT 0.0 .IP \(bu 2 @@ -159609,7 +137639,7 @@ once the related tests have completed. For example, if a new user is created to test a module, the same user should be removed after the test is completed to maintain system integrity. .sp -To write a destructive test, import, and use the destructiveTest decorator for +To write a destructive test, import and use the destructiveTest decorator for the test method: .INDENT 0.0 .INDENT 3.5 @@ -159758,7 +137788,7 @@ preceded with the \fB@expensiveTest\fP decorator. The expensive test decorator i necessary because it signals to the test suite that the \fB\-\-cloud\-provider\-tests\fP flag is required to run the cloud provider tests. .sp -To write a cloud provider test, import, and use the expensiveTest decorator for +To write a cloud provider test, import and use the expensiveTest decorator for the test function: .INDENT 0.0 .INDENT 3.5 @@ -159863,7 +137893,7 @@ from salttesting.mock import NO_MOCK, NO_MOCK_REASON, MagicMock, patch, call .sp Let\(aqs assume that we\(aqre testing a very basic function in an imaginary Salt execution module. Given a module called \fBfib.py\fP that has a function called -\fBcalculate(num_of_results)\fP, which given a \fBnum_of_results\fP, produces a list of +\(aqcalculate(num_of_results)\(aq, which given a \(aqnum_of_results\(aq, produces a list of sequential Fibonacci numbers of that length. .sp A unit test to test this function might be commonly placed in a file called @@ -159937,12 +137967,7 @@ To review the results of a particular run, take a note of the log location given in the output for each test: .INDENT 0.0 .INDENT 3.5 -.sp -.nf -.ft C -Logging tests on /var/folders/nl/d809xbq577l3qrbj3ymtpbq80000gn/T/salt\-runtests.log -.ft P -.fi +\fBLogging tests on /var/folders/nl/d809xbq577l3qrbj3ymtpbq80000gn/T/salt\-runtests.log\fP .UNINDENT .UNINDENT .SS Evaluating Truth @@ -160759,17 +138784,6 @@ Paragraph. .fi .UNINDENT .UNINDENT -.SS Serial Commas -.sp -According to Wikipedia: In English punctuation, a serial comma or series comma -(also called Oxford comma and Harvard comma) is a comma placed immediately -before the coordinating conjunction (usually and, or, or nor) in a series of -three or more terms. For example, a list of three countries might be punctuated -either as "France, Italy, and Spain" (with the serial comma), or as "France, -Italy and Spain" (without the serial comma)." -.sp -When writing a list that includes three or more items, the serial comma should -always be used. .SS Documenting modules .sp Documentation for Salt\(aqs various module types is inline in the code. During the @@ -161002,7 +139016,7 @@ One of the workhorse state module functions in Salt is the .SS Settings .sp Individual settings in the Salt Master or Salt Minion configuration files are -cross\-referenced using two custom roles, \fBconf_master\fP, and \fBconf_minion\fP\&. +cross\-referenced using two custom roles, \fBconf_master\fP and \fBconf_minion\fP\&. .INDENT 0.0 .INDENT 3.5 .sp @@ -161056,7 +139070,7 @@ Then pull up the documentation in a web browser at \fI\%http://localhost:8000/\f .SS Salt Formulas .sp Formulas are pre\-written Salt States. They are as open\-ended as Salt States -themselves and can be used for tasks such as installing a package, configuring, +themselves and can be used for tasks such as installing a package, configuring and starting a service, setting up users or permissions, and many other common tasks. .sp @@ -161153,9 +139167,8 @@ Add the new directory to \fBfile_roots\fP: .nf .ft C file_roots: - base: - \- /srv/salt - \- /srv/formulas/apache\-formula + \- /srv/salt + \- /srv/formulas/apache\-formula .ft P .fi .UNINDENT @@ -161923,7 +139936,7 @@ syntax for referencing a value is a normal dictionary lookup in Jinja, such as }, \(aqGentoo\(aq: { \(aqserver\(aq: \(aqdev\-db/mysql\(aq, - \(aqclient\(aq: \(aqdev\-db/mysql\(aq, + \(aqmysql\-client\(aq: \(aqdev\-db/mysql\(aq, \(aqservice\(aq: \(aqmysql\(aq, \(aqconfig\(aq: \(aq/etc/mysql/my.cnf\(aq, \(aqpython\(aq: \(aqdev\-python/mysql\-python\(aq, @@ -161952,46 +139965,6 @@ mysql\-server: .fi .UNINDENT .UNINDENT -.SS Collecting common values -.sp -Common values can be collected into a \fIbase\fP dictionary. This -minimizes repetition of identical values in each of the -\fBlookup_dict\fP sub\-dictionaries. Now only the values that are -different from the base must be specified of the alternates: -.sp -\fBmap.jinja\fP: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -{% set mysql = salt[\(aqgrains.filter_by\(aq]({ - \(aqdefault\(aq: { - \(aqserver\(aq: \(aqmysql\-server\(aq, - \(aqclient\(aq: \(aqmysql\-client\(aq, - \(aqservice\(aq: \(aqmysql\(aq, - \(aqconfig\(aq: \(aq/etc/mysql/my.cnf\(aq, - \(aqpython\(aq: \(aqpython\-mysqldb\(aq, - }, - \(aqDebian\(aq: { - }, - \(aqRedHat\(aq: { - \(aqclient\(aq: \(aqmysql\(aq, - \(aqservice\(aq: \(aqmysqld\(aq, - \(aqconfig\(aq: \(aq/etc/my.cnf\(aq, - \(aqpython\(aq: \(aqMySQL\-python\(aq, - }, - \(aqGentoo\(aq: { - \(aqserver\(aq: \(aqdev\-db/mysql\(aq, - \(aqclient\(aq: \(aqdev\-db/mysql\(aq, - \(aqpython\(aq: \(aqdev\-python/mysql\-python\(aq, - }, -}, -merge=salt[\(aqpillar.get\(aq](\(aqmysql:lookup\(aq), base=\(aqdefault\(aq) %} -.ft P -.fi -.UNINDENT -.UNINDENT .SS Overriding values in the lookup table .sp Allow static values within lookup tables to be overridden. This is a simple @@ -162018,55 +139991,6 @@ mysql: .UNINDENT .UNINDENT .sp -\fBNOTE:\fP -.INDENT 0.0 -.INDENT 3.5 -Protecting Expansion of Content with Special Characters -.sp -When templating keep in mind that YAML does have special characters for -quoting, flows, and other special structure and content. When a Jinja -substitution may have special characters that will be incorrectly parsed by -YAML care must be taken. It is a good policy to use the \fByaml_encode\fP or -the \fByaml_dquote\fP Jinja filters: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -{%\- set foo = 7.7 %} -{%\- set bar = none %} -{%\- set baz = true %} -{%\- set zap = \(aqThe word of the day is "salty".\(aq %} -{%\- set zip = \(aq"The quick brown fox . . ."\(aq %} - -foo: {{ foo|yaml_encode }} -bar: {{ bar|yaml_encode }} -baz: {{ baz|yaml_encode }} -zap: {{ zap|yaml_encode }} -zip: {{ zip|yaml_dquote }} -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -The above will be rendered as below: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -foo: 7.7 -bar: null -baz: true -zap: "The word of the day is \e"salty\e"." -zip: "\e"The quick brown fox . . .\e"" -.ft P -.fi -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -.sp The \fBfilter_by\fP function performs a simple dictionary lookup but also allows for fetching data from Pillar and overriding data stored in the lookup table. That same workflow can be easily @@ -162487,7 +140411,7 @@ Install and configure the FOO service. \&.. note:: See the full \(gaSalt Formulas installation and usage instructions - \(ga_. + \(ga_. Available states ================ @@ -162537,8 +140461,6 @@ foo formula .SS Versioning .sp Formula are versioned according to Semantic Versioning, \fI\%http://semver.org/\fP\&. -.sp -\fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 Given a version number MAJOR.MINOR.PATCH, increment the: @@ -162601,7 +140523,7 @@ pypi. Release packages should \fINEVER\fP use a git checkout as the source for distribution. .SS Single Package .sp -Shipping Salt as a single package, where the minion, master, and all tools are +Shipping Salt as a single package, where the minion, master and all tools are together is perfectly acceptable and practiced by distributions such as FreeBSD. .SS Split Package @@ -163369,7 +141291,7 @@ paradigm. This allows for many new capabilities to be added to Salt in the upcoming releases. .sp Please keep in mind that this is a beta release of RAET and we hope for bugs to -be worked out, performance to be better realized and more in the 2015.2.0 +be worked out, performance to be better realized and more in the Lithium release. .sp Simply stated, users running Salt with RAET should expect some hiccups as we @@ -163480,7 +141402,7 @@ The new \fBonchanges\fP and \fBonchanges_in\fP requisites make a state apply onl there are changes in the required state. This is useful to execute post hooks after changes occur on a system. .sp -The other new requisites, \fBonfail\fP, and \fBonfail_in\fP, allow for a state to run +The other new requisites, \fBonfail\fP and \fBonfail_in\fP, allow for a state to run in reaction to the failure of another state. .sp For more information about these new requisites, see the @@ -163623,7 +141545,11 @@ required information for checking an HMAC signature in order to verify a HTTP request. As an example, Amazon or GitHub requests are signed this way. .SS Generating and Accepting Minion Keys .sp -The \fB/key\fP convenience URL +The +.nf +:py:method:\(ga/key \(ga +.fi + convenience URL generates a public and private key for a minion, automatically pre\-accepts the public key on the Salt Master, and returns both keys as a tarball for download. .sp @@ -163646,7 +141572,7 @@ curl \-sS http://salt\-api.example.com:8000/keys \e .UNINDENT .SS Fileserver Backend Enhancements .sp -All of the fileserver backends have been overhauled to be faster, lighter, and +All of the fileserver backends have been overhauled to be faster, lighter and more reliable. The VCS backends (\fBgitfs\fP, \fBhgfs\fP, and \fBsvnfs\fP) have also received a \fBlot\fP of new features. @@ -163672,7 +141598,7 @@ a user\-defined \fBsalt://\fP URL. .SS Environment Whitelisting/Blacklisting .sp By default, gitfs will expose all branches and tags as Salt fileserver -environments. Two new config parameters, \fBgitfs_env_whitelist\fP, and +environments. Two new config parameters, \fBgitfs_env_whitelist\fP and \fBgitfs_env_blacklist\fP, allow more control over which branches and tags are exposed. More detailed information on how these two options work can be found in the \fIGitfs Walkthrough\fP\&. @@ -163728,7 +141654,7 @@ be served from a Salt fileserver environment other than \fBbase\fP\&. .SS Minion Whitelisting/Blacklisting .sp By default, minionfs will expose the pushed files from all minions. Two new -config parameters, \fBminionfs_whitelist\fP, and +config parameters, \fBminionfs_whitelist\fP and \fBminionfs_blacklist\fP, allow minionfs to be restricted to serve files from only the desired minions. .SS Pyobjects Renderer @@ -163870,7 +141796,7 @@ paradigm. This allows for many new capabilities to be added to Salt in the upcoming releases. .sp Please keep in mind that this is a beta release of RAET and we hope for bugs to -be worked out, performance to be better realized and more in the 2015.2.0 +be worked out, performance to be better realized and more in the Lithium release. .sp Simply stated, users running Salt with RAET should expect some hiccups as we @@ -163981,7 +141907,7 @@ The new \fBonchanges\fP and \fBonchanges_in\fP requisites make a state apply onl there are changes in the required state. This is useful to execute post hooks after changes occur on a system. .sp -The other new requisites, \fBonfail\fP, and \fBonfail_in\fP, allow for a state to run +The other new requisites, \fBonfail\fP and \fBonfail_in\fP, allow for a state to run in reaction to the failure of another state. .sp For more information about these new requisites, see the @@ -164124,7 +142050,11 @@ required information for checking an HMAC signature in order to verify a HTTP request. As an example, Amazon or GitHub requests are signed this way. .SS Generating and Accepting Minion Keys .sp -The \fB/key\fP convenience URL +The +.nf +:py:method:\(ga/key \(ga +.fi + convenience URL generates a public and private key for a minion, automatically pre\-accepts the public key on the Salt Master, and returns both keys as a tarball for download. .sp @@ -164147,7 +142077,7 @@ curl \-sS http://salt\-api.example.com:8000/keys \e .UNINDENT .SS Fileserver Backend Enhancements .sp -All of the fileserver backends have been overhauled to be faster, lighter, and +All of the fileserver backends have been overhauled to be faster, lighter and more reliable. The VCS backends (\fBgitfs\fP, \fBhgfs\fP, and \fBsvnfs\fP) have also received a \fBlot\fP of new features. @@ -164173,7 +142103,7 @@ a user\-defined \fBsalt://\fP URL. .SS Environment Whitelisting/Blacklisting .sp By default, gitfs will expose all branches and tags as Salt fileserver -environments. Two new config parameters, \fBgitfs_env_whitelist\fP, and +environments. Two new config parameters, \fBgitfs_env_whitelist\fP and \fBgitfs_env_blacklist\fP, allow more control over which branches and tags are exposed. More detailed information on how these two options work can be found in the \fIGitfs Walkthrough\fP\&. @@ -164229,7 +142159,7 @@ be served from a Salt fileserver environment other than \fBbase\fP\&. .SS Minion Whitelisting/Blacklisting .sp By default, minionfs will expose the pushed files from all minions. Two new -config parameters, \fBminionfs_whitelist\fP, and +config parameters, \fBminionfs_whitelist\fP and \fBminionfs_blacklist\fP, allow minionfs to be restricted to serve files from only the desired minions. .SS Pyobjects Renderer @@ -164399,7 +142329,7 @@ Documentation for Salt and GCE can be found \fBhere\fP\&. .SS Salt Virt .sp Salt Virt is a cloud controller that supports virtual machine deployment, -inspection, migration, and integration with many aspects of Salt. +inspection, migration and integration with many aspects of Salt. .sp Salt Virt has undergone a major overhaul with this release and now supports many more features and includes a number of critical improvements. @@ -165676,7 +143606,7 @@ enough, if not, explain your usage on a ticket. With this change, also \fIsalt.modules.file.contains_glob()\fP and \fIsalt.utils.find\fP now do the searching and/or matching using the buffered chunks approach explained above. .sp -Two new keyword arguments were also added, \fImakedirs\fP, and \fIsource\fP\&. +Two new keyword arguments were also added, \fImakedirs\fP and \fIsource\fP\&. The first, \fImakedirs\fP will create the necessary directories in order to append to the specified file, of course, it only applies if we\(aqre trying to append to a non\-existing file on a non\-existing directory: @@ -165903,7 +143833,7 @@ great way for minions to respond and react to other minions. .SS OpenStack Additions .sp OpenStack integration with Salt has been moving forward at a blistering pace. -The new \fInova\fP, \fIglance\fP, and \fIkeystone\fP modules represent the beginning of +The new \fInova\fP, \fIglance\fP and \fIkeystone\fP modules represent the beginning of ongoing OpenStack integration. .sp The Salt team has had many conversations with core OpenStack developers and @@ -166383,7 +144313,7 @@ sure these sorts of things do not happen, but sometimes hard changes get in. 2013\-03\-23 .UNINDENT .sp -Salt 0.14.0 is here! This release was held up primarily by PyCon, Scale, and +Salt 0.14.0 is here! This release was held up primarily by PyCon, Scale and illness, but has arrived! 0.14.0 comes with many new features and is breaking ground for Salt in the area of cloud management with the introduction of Salt providing basic cloud controller functionality. @@ -166437,7 +144367,7 @@ libvirt_keys: .UNINDENT .SS New get Functions .sp -An easier way to manage data has been introduced. The pillar, grains, and config +An easier way to manage data has been introduced. The pillar, grains and config execution modules have been extended with the new \fBget\fP function. This function works much in the same way as the get method in a python dict, but with an enhancement, nested dict components can be extracted using a \fI:\fP delimiter. @@ -167513,7 +145443,7 @@ Fix for pillar/grains naming regression in python renderer (\fI\%issue 7693\fP) .IP \(bu 2 Fix args/kwargs handling in the scheduler (\fI\%issue 7422\fP) .IP \(bu 2 -Fix logfile handling for \fIfile://\fP, \fItcp://\fP, and \fIudp://\fP (\fI\%issue 7754\fP) +Fix logfile handling for \fIfile://\fP, \fItcp://\fP and \fIudp://\fP (\fI\%issue 7754\fP) .IP \(bu 2 Fix error handling in config file parsing (\fI\%issue 6714\fP) .IP \(bu 2 @@ -167851,7 +145781,7 @@ information gathered from PuppetLabs\(aq Facter application, making Salt module more flexible. In the future I hope to also allow Salt to group servers based on Facter information as well. .sp -All in all Salt is fast, efficient, and clean, can be used from a simple command +All in all Salt is fast, efficient and clean, can be used from a simple command line client or through an API, uses message queue technology to make network execution extremely fast, and encryption is handled in a very fast and efficient manner. Salt is also VERY easy to use and VERY easy to extend. @@ -168016,7 +145946,7 @@ it to a specific module. The returner modules work like minion modules, so any returner can be added to the minions. .sp This means that a custom data returner can be added to communicate the return -data so anything from MySQL, Redis, MongoDB, and more! +data so anything from MySQL, Redis, MongoDB and more! .sp There are 2 simple stock returners in the returners directory: .sp @@ -168302,7 +146232,7 @@ Thanks again to Travis Cline, the master and minion configuration file locations can be defined in environment variables now. .SS New Modules .sp -Quite a few new modules, states, returners, and runners have been made. +Quite a few new modules, states, returners and runners have been made. .SS New Minion Modules .SS apt .sp @@ -168694,7 +146624,7 @@ date > /tmp/datestamp: .SS File State Additions .sp The file state has been given a number of new features, primarily the -directory, recurse, symlink, and absent functions. +directory, recurse, symlink and absent functions. .INDENT 0.0 .TP .B file.directory @@ -168753,7 +146683,7 @@ powerful and has been tested by pushing out the full Linux kernel source. .TP .B file.absent Make sure that the file is not on the system, recursively deletes -directories, files, and symlinks. +directories, files and symlinks. .INDENT 7.0 .INDENT 3.5 .sp @@ -169315,7 +147245,7 @@ and\(ga .SS More to Come .sp We are actively seeking inclusion in more distributions. Primarily getting -Salt into Gentoo, SUSE, OpenBSD, and preparing Solaris support are all turning +Salt into Gentoo, SUSE, OpenBSD and preparing Solaris support are all turning into higher priorities. .SS Refinement .sp @@ -169347,7 +147277,7 @@ This module was contributed thanks to the efforts of Christer Edwards .SS \fBgentoo_service\fP .sp Support has been added for managing services in Gentoo. Now Gentoo services -can be started, stopped, restarted, enabled, disabled, and viewed. +can be started, stopped, restarted, enabled, disabled and viewed. .SS \fBpip\fP .sp The pip module introduces management for pip installed applications. @@ -170418,7 +148348,7 @@ your production infrastructure. .sp .nf .ft C -\-\-\-\-\-BEGIN PGP PUBLIC KEY BLOCK\-\-\-\-\- +\-\-\-\-\-BEGIN PGP PUBLIC KEY BLOCK\-\-\-\- Version: GnuPG/MacGPG2 v2.0.22 (Darwin) mQINBFO15mMBEADa3CfQwk5ED9wAQ8fFDku277CegG3U1hVGdcxqKNvucblwoKCb @@ -170747,36 +148677,21 @@ backup_mode can be configured on a per state basis, or in the minion config method to use, you still need to specify that the file should be backed up!). .SS What is the best way to restart a Salt daemon using Salt? .sp -Updating the salt\-minion package requires a restart of the salt\-minion service. -But restarting the service while in the middle of a state run interrupts the -process of the minion running states and sending results back to the master. -It\(aqs a tricky problem to solve, and we\(aqre working on it, but in the meantime -one way of handling this (on Linux and UNIX\-based operating systems) is to use -\fBat\fP (a job scheduler which predates cron) to schedule a restart of the -service. \fBat\fP is not installed by default on most distros, and requires a -service to be running (usually called \fBatd\fP) in order to schedule jobs. -Here\(aqs an example of how to upgrade the salt\-minion package at the end of a -Salt run, and schedule a service restart for one minute after the package -update completes. +Restarting Salt using Salt without having the restart interrupt the whole +process is a tricky problem to solve. We\(aqre still working on it but in the +meantime a good way is to use the system scheduler with a short interval. The +following example is a state that will always execute at the very end of a +state run. .SS Linux/Unix .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C -salt\-minion: - pkg.installed: - \- name: salt\-minion - \- version: 2014.1.7\-3.el6 - \- order: last - service.running: - \- name: salt\-minion - \- require: - \- pkg: salt\-minion - cmd.wait: +salt\-minion\-reload: + cmd.run: \- name: echo service salt\-minion restart | at now + 1 minute - \- watch: - \- pkg: salt\-minion + \- order: last .ft P .fi .UNINDENT @@ -170819,9 +148734,6 @@ restart_minion: .UNINDENT .UNINDENT .SS Windows -.sp -For Windows machines, restarting the minion at can be accomplished by -adding the following state: .INDENT 0.0 .INDENT 3.5 .sp @@ -170829,20 +148741,13 @@ adding the following state: .ft C schedule\-start: cmd.run: - \- name: \(aqstart powershell "Restart\-Service \-Name salt\-minion"\(aq + \- name: at (Get\-Date).AddMinutes(1).ToString("HH:mm") cmd /c "net start salt\-minion" + \- shell: powershell \- order: last -.ft P -.fi -.UNINDENT -.UNINDENT -.sp -or running immediately from the command line: -.INDENT 0.0 -.INDENT 3.5 -.sp -.nf -.ft C -salt \-G kernel:Windows cmd.run \(aqstart powershell "Restart\-Service \-Name salt\-minion"\(aq + service.dead: + \- name: salt\-minion + \- require: + \- cmd: schedule\-start .ft P .fi .UNINDENT @@ -170884,7 +148789,8 @@ file. \fISee also\fP: \fIordering\fP\&. .TP .B Bootstrap A stand\-alone Salt project which can download and install a Salt master -and/or a Salt minion onto a host. \fISee also\fP: \fI\%salt\-bootstrap\fP\&. +and/or a Salt minion onto a host. \fISee also\fP: \fIsalt\-bootstrap +\fP\&. .TP .B Compound Matcher A combination of many target definitions that can be combined with @@ -171125,6 +149031,6 @@ for a module are available, such as external libraries. .SH AUTHOR Thomas S. Hatch and many others, please see the Authors file .SH COPYRIGHT -2015 SaltStack, Inc. +2014 SaltStack, Inc. .\" Generated by docutils manpage writer. . diff --git a/doc/ref/cli/salt-api.rst b/doc/ref/cli/salt-api.rst index 385b7bc42a..4c5b29035f 100644 --- a/doc/ref/cli/salt-api.rst +++ b/doc/ref/cli/salt-api.rst @@ -21,13 +21,19 @@ Options .. program:: salt-api -.. option:: -h, --help +.. include:: _includes/common-options.rst - Print a usage message briefly summarizing these command-line options. +.. option:: -d, --daemon -.. option:: -C CONFIG, --config=CONFIG + Run the salt-api as a daemon - Specify an alternative location for the salt master configuration file. +.. option:: --pid-file=PIDFILE + + Specify the location of the pidfile. Default: /var/run/salt-api.pid + +.. include:: _includes/logging-options.rst +.. |logfile| replace:: /var/log/salt/api +.. |loglevel| replace:: ``warning`` See also ======== diff --git a/doc/ref/cli/salt-call.rst b/doc/ref/cli/salt-call.rst index 794c06887b..82d4b8a988 100644 --- a/doc/ref/cli/salt-call.rst +++ b/doc/ref/cli/salt-call.rst @@ -22,14 +22,18 @@ Options .. include:: _includes/common-options.rst +.. option:: --hard-crash + + Raise any original exception rather than exiting gracefully Default: False + .. option:: -g, --grains Return the information generated by the Salt grains .. option:: -m MODULE_DIRS, --module-dirs=MODULE_DIRS - Specify an additional directories to pull modules from, multiple - directories can be delimited by commas + Specify an additional directory to pull modules from. Multiple directories + can be provided by passing -m /--module-dirs multiple times. .. option:: -d, --doc, --documentation @@ -53,6 +57,36 @@ Options Run salt-call locally, as if there was no master running. +.. option:: --file-root=FILE_ROOT + + Set this directory as the base file root. + +.. option:: --pillar-root=PILLAR_ROOT + + Set this directory as the base pillar root. + +.. option:: --retcode-passthrough + + Exit with the salt call retcode and not the salt binary retcode + +.. option:: --metadata + + Print out the execution metadata as well as the return. This will print out + the outputter data, the return code, etc. + +.. option:: --id=ID + + Specify the minion id to use. If this option is omitted, the id option from + the minion config will be used. + +.. option:: --skip-grains + + Do not load grains. + +.. option:: --refresh-grains-cache + + Force a refresh of the grains cache + .. include:: _includes/logging-options.rst .. |logfile| replace:: /var/log/salt/minion .. |loglevel| replace:: ``info`` diff --git a/doc/ref/cli/salt-cloud.rst b/doc/ref/cli/salt-cloud.rst index beb8e7ef00..2c452e6759 100644 --- a/doc/ref/cli/salt-cloud.rst +++ b/doc/ref/cli/salt-cloud.rst @@ -30,21 +30,36 @@ Options .. program:: salt-cloud -.. option:: -h, --help +.. include:: _includes/common-options.rst - Print a usage message briefly summarizing these command-line options. +Execution Options +----------------- + +.. option:: -L LOCATION, --location=LOCATION + + Specify which region to connect to. + +.. option:: -a ACTION, --action=ACTION + + Perform an action that may be specific to this cloud provider. This + argument requires one or more instance names to be specified. + +.. option:: -f , --function= + + Perform an function that may be specific to this cloud provider, that does + not apply to an instance. This argument requires a provider to be specified + (i.e.: nova). .. option:: -p PROFILE, --profile=PROFILE - Select a single profile to build the named cloud VMs from. The profile - must be defined in the specified profiles file. + Select a single profile to build the named cloud VMs from. The profile must + be defined in the specified profiles file. .. option:: -m MAP, --map=MAP Specify a map file to use. If used without any other options, this option - will ensure that all of the mapped VMs are created. If VM names are - also passed as arguments, they will be used to filter the map file. - If the named VM already exists then it will be skipped. + will ensure that all of the mapped VMs are created. If the named VM already + exists then it will be skipped. .. option:: -H, --hard @@ -77,6 +92,34 @@ Options Execute a query and print out information about all cloud VMs. Can be used in conjunction with -m to display only information about the specified map. +.. option:: -u, --update-bootstrap + + Update salt-bootstrap to the latest develop version on GitHub. + +.. option:: -y, --assume-yes + + Default yes in answer to all confirmation questions. + +.. option:: -k, --keep-tmp + + Do not remove files from /tmp/ after deploy.sh finishes. + +.. option:: --show-deploy-args + + Include the options used to deploy the minion in the data returned. + +.. option:: --script-args=SCRIPT_ARGS + + Script arguments to be fed to the bootstrap script when deploying the VM. + +Query Options +------------- + +.. option:: -Q, --query + + Execute a query and return some information about the nodes running on + configured cloud providers + .. option:: -F, --full-query Execute a query and print out all available information about all cloud VMs. @@ -101,50 +144,39 @@ Options the provider's associated profiles, such as ``digital_ocean``, or pass in ``all`` to list all the configured profiles. -.. option:: --list-images - Display a list of images available in configured cloud providers. - Pass the cloud provider that available images are desired on, aka - "linode", or pass "all" to list images for all configured cloud providers. +Cloud Providers Listings +------------------------ -.. option:: --list-sizes +.. option:: --list-locations=LIST_LOCATIONS + + Display a list of locations available in configured cloud providers. Pass + the cloud provider that available locations are desired on, aka "linode", + or pass "all" to list locations for all configured cloud providers + +.. option:: --list-images=LIST_IMAGES + + Display a list of images available in configured cloud providers. Pass the + cloud provider that available images are desired on, aka "linode", or pass + "all" to list images for all configured cloud providers + +.. option:: --list-sizes=LIST_SIZES Display a list of sizes available in configured cloud providers. Pass the - cloud provider that available sizes are desired on, aka "aws", or pass + cloud provider that available sizes are desired on, aka "AWS", or pass "all" to list sizes for all configured cloud providers -.. option:: -C CLOUD_CONFIG, --cloud-config=CLOUD_CONFIG +Cloud Credentials +----------------- - Specify an alternative location for the salt cloud configuration file. - Default location is /etc/salt/cloud. +.. option:: --set-password= -.. option:: -M MASTER_CONFIG, --master-config=MASTER_CONFIG + Configure password for a cloud provider and save it to the keyring. + PROVIDER can be specified with or without a driver, for example: + "--set-password bob rackspace" or more specific "--set-password bob + rackspace:openstack" DEPRECATED! - Specify an alternative location for the salt master configuration file. - The salt master configuration file is used to determine how to handle the - minion RSA keys. Default location is /etc/salt/master. - -.. option:: -V VM_CONFIG, --profiles=VM_CONFIG, --vm_config=VM_CONFIG - - Specify an alternative location for the salt cloud profiles file. - Default location is /etc/salt/cloud.profiles. - -.. option:: --raw-out - - Print the output from the salt command in raw python - form, this is suitable for re-reading the output into - an executing python script with eval. - -.. option:: --out=OUTPUT, --output=OUTPUT - - Print the output from the salt-cloud command using the specified outputter. The - builtins are 'raw', 'compact', 'no_return', 'grains', 'overstatestage', 'pprint', - 'json', 'nested', 'yaml', 'highstate', 'quiet', 'key', 'txt', 'newline_values_only', - 'virt_query'. - -.. option:: --no-color - - Disable all colored output. +.. include:: _includes/output-options.rst Examples diff --git a/doc/ref/cli/salt-key.rst b/doc/ref/cli/salt-key.rst index 243a923080..a3780fc9a8 100644 --- a/doc/ref/cli/salt-key.rst +++ b/doc/ref/cli/salt-key.rst @@ -22,6 +22,15 @@ Options .. include:: _includes/common-options.rst +.. option:: -u USER, --user=USER + + Specify user to run salt-key + +.. option:: --hard-crash + + Raise any original exception rather than exiting gracefully. Default is + False. + .. option:: -q, --quiet Suppress output @@ -30,6 +39,12 @@ Options Answer 'Yes' to all questions presented, defaults to False +.. option:: --rotate-aes-key=ROTATE_AES_KEY + + Setting this to False prevents the master from refreshing the key session + when keys are deleted or rejected, this lowers the security of the key + deletion/rejection operation. Default is True. + .. include:: _includes/logging-options.rst :end-before: start-console-output .. include:: _includes/logging-options.rst @@ -119,6 +134,29 @@ Key Generation Options higher, otherwise it will be rounded up to 2048. The default is 2048. +.. option:: --gen-signature + + Create a signature file of the masters public-key named + master_pubkey_signature. The signature can be send to a minion in the + masters auth-reply and enables the minion to verify the masters public-key + cryptographically. This requires a new signing-key- pair which can be + auto-created with the --auto-create parameter. + +.. option:: --priv=PRIV + + The private-key file to create a signature with + +.. option:: --signature-path=SIGNATURE_PATH + + The path where the signature file should be written + +.. option:: --pub=PUB + + The public-key file to create a signature for + +.. option:: --auto-create + + Auto-create a signing key-pair if it does not yet exist See also ======== diff --git a/doc/ref/cli/salt-run.rst b/doc/ref/cli/salt-run.rst index 90b42c1422..d039c825b8 100644 --- a/doc/ref/cli/salt-run.rst +++ b/doc/ref/cli/salt-run.rst @@ -28,6 +28,11 @@ Options .. include:: _includes/timeout-option.rst .. |timeout| replace:: 1 +.. option:: --hard-crash + + Raise any original exception rather than exiting gracefully. Default is + False. + .. option:: -d, --doc, --documentation Display documentation for runners, pass a module or a runner to see diff --git a/pkg/windows/buildenv/salt-call.bat b/pkg/windows/buildenv/salt-call.bat index 2698f37059..003e357b5c 100644 --- a/pkg/windows/buildenv/salt-call.bat +++ b/pkg/windows/buildenv/salt-call.bat @@ -3,7 +3,7 @@ :: Accepts all parameters that Salt-Minion Accepts :: Define Variables -Set Python="%cd%\bin\python.exe" -Set Script="%cd%\bin\Scripts\salt-call" +Set Python="%~dp0\bin\python.exe" +Set Script="%~dp0\bin\Scripts\salt-call" "%Python%" "%Script%" %* diff --git a/pkg/windows/buildenv/salt-cp.bat b/pkg/windows/buildenv/salt-cp.bat index 3037498dd1..e836806b67 100644 --- a/pkg/windows/buildenv/salt-cp.bat +++ b/pkg/windows/buildenv/salt-cp.bat @@ -3,7 +3,7 @@ :: Accepts all parameters that Salt-Minion Accepts :: Define Variables -Set Python="%cd%\bin\python.exe" -Set Script="%cd%\bin\Scripts\salt-cp" +Set Python="%~dp0\bin\python.exe" +Set Script="%~dp0\bin\Scripts\salt-cp" "%Python%" "%Script%" %* diff --git a/pkg/windows/buildenv/salt-minion-debug.bat b/pkg/windows/buildenv/salt-minion-debug.bat index ec08b7d34b..b8146acd9a 100644 --- a/pkg/windows/buildenv/salt-minion-debug.bat +++ b/pkg/windows/buildenv/salt-minion-debug.bat @@ -1,2 +1,11 @@ +@ echo off +:: Script for starting the Salt-Minion +:: Accepts all parameters that Salt-Minion Accepts + +:: Define Variables +Set Python="%~dp0\bin\python.exe" +Set Script="%~dp0\bin\Scripts\salt-minion" + net stop salt-minion -.\bin\python.exe .\bin\Scripts\salt-minion -l debug -c C:\salt\conf \ No newline at end of file + +"%Python%" "%Script%" -l debug diff --git a/pkg/windows/buildenv/salt-minion.bat b/pkg/windows/buildenv/salt-minion.bat index fb1ff28550..ebd4d45aca 100644 --- a/pkg/windows/buildenv/salt-minion.bat +++ b/pkg/windows/buildenv/salt-minion.bat @@ -3,7 +3,7 @@ :: Accepts all parameters that Salt-Minion Accepts :: Define Variables -Set Python="%cd%\bin\python.exe" -Set Script="%cd%\bin\Scripts\salt-minion" +Set Python="%~dp0\bin\python.exe" +Set Script="%~dp0\bin\Scripts\salt-minion" "%Python%" "%Script%" %* diff --git a/pkg/windows/buildenv/salt-unity.bat b/pkg/windows/buildenv/salt-unity.bat index 981cd40c75..d96b69982e 100644 --- a/pkg/windows/buildenv/salt-unity.bat +++ b/pkg/windows/buildenv/salt-unity.bat @@ -3,7 +3,7 @@ :: Accepts all parameters that Salt-Minion Accepts :: Define Variables -Set Python="%cd%\bin\python.exe" -Set Script="%cd%\bin\Scripts\salt-unity" +Set Python="%~dp0\bin\python.exe" +Set Script="%~dp0\bin\Scripts\salt-unity" "%Python%" "%Script%" %* diff --git a/salt/master.py b/salt/master.py index 69d1f862d9..3c20dd8a96 100644 --- a/salt/master.py +++ b/salt/master.py @@ -1620,7 +1620,7 @@ class ClearFuncs(object): elif os.path.isfile(pubfn): # The key has been accepted, check it - if salt.utils.fopen(pubfn, 'r').read() != load['pub']: + if salt.utils.fopen(pubfn, 'r').read().strip() != load['pub'].strip(): log.error( 'Authentication attempt from {id} failed, the public ' 'keys did not match. This may be an attempt to compromise ' diff --git a/salt/modules/win_pkg.py b/salt/modules/win_pkg.py index f7f8c757af..bda55cff53 100644 --- a/salt/modules/win_pkg.py +++ b/salt/modules/win_pkg.py @@ -17,7 +17,6 @@ except ImportError: HAS_DEPENDENCIES = False # Import python libs -import copy import logging try: import msgpack @@ -227,14 +226,6 @@ def list_pkgs(versions_as_list=False, **kwargs): for x in ('removed', 'purge_desired')]): return {} - if 'pkg.list_pkgs' in __context__: - if versions_as_list: - return __context__['pkg.list_pkgs'] - else: - ret = copy.deepcopy(__context__['pkg.list_pkgs']) - __salt__['pkg_resource.stringify'](ret) - return ret - ret = {} name_map = _get_name_map() with salt.utils.winapi.Com(): @@ -248,7 +239,6 @@ def list_pkgs(versions_as_list=False, **kwargs): __salt__['pkg_resource.add_pkg'](ret, key, val) __salt__['pkg_resource.sort_pkglist'](ret) - __context__['pkg.list_pkgs'] = copy.deepcopy(ret) if not versions_as_list: __salt__['pkg_resource.stringify'](ret) return ret @@ -564,7 +554,6 @@ def install(name=None, refresh=False, pkgs=None, saltenv='base', **kwargs): __salt__['cmd.run'](cmd, output_loglevel='trace', python_shell=False) - __context__.pop('pkg.list_pkgs', None) new = list_pkgs() return salt.utils.compare_dicts(old, new) @@ -668,7 +657,6 @@ def remove(name=None, pkgs=None, version=None, extra_uninstall_flags=None, **kwa __salt__['cmd.run'](cmd, output_loglevel='trace', python_shell=False) - __context__.pop('pkg.list_pkgs', None) new = list_pkgs() return salt.utils.compare_dicts(old, new)