* Remove :members: from fileserver docs pages
These functions can never be invoked directly from the CLI, so it is
pointless to include them in the documentation.
* Rename section
* Add docs page clarifying how to get files from different environments
* Add reminder that file_roots can be specified for masterless salt
* Link to the new environments page from the states tutorial
* Add information on pulling reactor configs from non-base environments
* Add examples of querystring syntax to cp module
* Add top file config params to minion config file documentation
* Improve documentation on top file merging behavior
* Add recommendation on changing top_file_merging_strategy
* Improve the log message warning of multiple top files
Removes the "Full list of builtin ..." from each module reference list, leaving just the module type for scanability.
Refs #12470
Refs #10206
Refs #10480
Refs #23522
Refs #33023
* Fix master hanging after a request from minion with removed key. (#33333)
* ZMQ monitor for MWorker connections.
* Reauth minion if the key was removed on the master side.
* Allow concurrency mode in state runs if using sudo (#33325)
Closes#30130
* Disambiguate non-exact matches when checking if sysv service is enabled (#33324)
Fixes#33323
* remove redundant, incorrect sudo_runas config documentation (#33318)
* remove sudo_runas documentation
`sudo_runas` was renamed to `sudo_user` and the documentation was not
updated accordingly.
* conf/minion: update sudo_user description
The description from sudo_runas was better.
* import ps from psutil_compat in beacons (#33334)
* beacons.network_info: import gate psutil
* beacons.ps: import gate psutil
* Add docs for mine_functions config var (#33326)
* Add docs for mine_functions config var
* Note that mine_enabled essentially just doesn't add the mine
update function to the scheduler.
* Bp 28467 calm mine (#33327)
* make minion mine update behavior more configurable
* Add docs for mine_functions config var
* Remove config dup from mine config options
Refs #28467
* 2015.8 does not have _DFLT_MULTIPROCESSING_MODE
* This won't be in until 2015.8.10.
* Fix network.managed for windows (#33312)
* Fix some link errors in the test writing tutorial (#33347)
* Describes parameters in register_instances function (#33339)
* Fix UnboundLocalError in git.latest (#33340)
Resolves#32260.
* Expanded documentation for boto_elb state and module (#33341)
* Describes what happens when the CNAME parameter is given.
* Describes what the recognized attributes are for for ELBs.
* Properly detect newer Linux Mint distros (#33359)
* Properly detect newer Linux Mint distros
LMDE 2 and Linux Mint 17.3 changed the DISTRIB_ID in /etc/lsb-release to
``LinuxMint``, breaking OS detection for these distros.
This commit fixes that by adding an entry to the OS_NAME_MAP in the core
grains.
* Remove LinuxMint os_family from aptpkg.py
It is no longer necessary as the distro is now detected properly, which
will lead to an os_family of Debian.
* Update job_cache and keep_jobs docs to be more specific to their behavior (#33328)
* Update job_cache and keep_jobs docs to be more specific to their behavior
Also fixed a bug discovered when investigating job_cache/keep_jobs functionality
where the jid directory and files were removed by the cache cleaner, but not the
original jid clash detection directory created in /var/cache/salt/master/jobs/.
Fixes#29286
* Add testcase for the changes in the local_cache.clean_old_jobs func
* Mark tests as destructive
* Put destructive test decorator in correct location
* Remove mentions of windows not supporting pkgs param (#33361)
Fixes#33313
* Updates docs version to 2015.8.9
Adds note regarding the os grain on Mint Linux
Adds an FAQ regarding grains that change due to upstream changes
* revved 2015.8 branch to .9 in version selector
* Add initscripts, SystemD service units and environment files for Debian (#32857)
* Add note to docs about api settings for Hipchat API v2 (#33365)
Fixes#27779
* Add win_pkg to list of modules that support "version" in pkg.installed (#33362)
Fixes#32913
* Add note about name parameter in git_pillar docs (#33369)
Fixes#27737
* Better YAML syntax error handling (#33375)
Closes#26574
* Improve doc clarity for disable_modules documentation (#33379)
* Improve doc clarity for disable_modules documentation
* Additional clarification on blacklisted name
* maintain the fallabck because I am totally sick of this crap
* blast, put the try/except int he right place
* restore whitespace
* Fix traceback in logging for config validation (#33386)
* 2015.8.10 release notes
* Sync pillarstack to latest upstream version (#33391)
* Don't lay down all available opts (#33385)
* Don't lay down all available opts
* We need at least one opt in there
* Condense defaults
* Put the default hash type back
* Update job_cache and keep_jobs docs to be more specific to their behavior
Also fixed a bug discovered when investigating job_cache/keep_jobs functionality
where the jid directory and files were removed by the cache cleaner, but not the
original jid clash detection directory created in /var/cache/salt/master/jobs/.
Fixes#29286
* Add testcase for the changes in the local_cache.clean_old_jobs func
* Mark tests as destructive
* Put destructive test decorator in correct location
* make minion mine update behavior more configurable
* Add docs for mine_functions config var
* Remove config dup from mine config options
Refs #28467
* 2015.8 does not have _DFLT_MULTIPROCESSING_MODE
* This won't be in until 2015.8.10.
* remove sudo_runas documentation
`sudo_runas` was renamed to `sudo_user` and the documentation was not
updated accordingly.
* conf/minion: update sudo_user description
The description from sudo_runas was better.
Docs were added for:
- master_tries
- mine_enabled
- mine_return_job
- syndic_failover
- auth_tries: this is an old setting, but docs were not found
in the minion.rst docs. This change should be added to older branches.
* Add Support for CSF
* Add Support for APF
* add new apf module to docs
* add blank line to match salt lint rules
* adding deny/remove host functions
* using python instead of bash while finding out if APF is running
* add error handling if iptc is missing
* remove trailing space
* PSGet module for managing powershellgallery.com packages
* Linting fixes
* Converted docstrings to sphinx format
* Update LF
* Added servicenow execution module
* Fixed up the linting
* Fix docstrings
* arbitrary change to reset the build
* Setup basic unit test runner
* Setup basic loader mock and wrapper for declaring dependent packages
* Updated unit test runner and setup my first test example
* Update the servicenow module after a bad merge commit
* Code comments for the base unit test runners
* Fix linting issues
* remove empty line endings
* Added Cisco NSO Proxy for PR review
* Added RST for autodoc of new module
* Fix from comments in PR review @rallytime
* Added execution module for NSO proxy
* Revert "Merge branch 'unittest' into cisco_nso"
This reverts commit b93c0aa6913fb90d35d8cbe94533160c91dcef1a, reversing
changes made to cd50386031d61cdb630f7ef169062be8b3de6912.
* Added state for check config present
* Added autodoc for new modules
* fix lint issues
* Do a diff on the values
* Fix linting issues
* Remove FileClient class references from docs - it doesn't exist.
Replace FileClient class references with mentions of the fileclient.py
module and replace code examples with salt.fileclient.get_file_client
examples.
Fixes#32646
* Don't reference minion import when not used
* json encode arguments passed to an execution module function call
this fixes problems where you could pass a string to a module function,
which thanks to the yaml decoder which is used when parsing command line
arguments could change its type entirely. for example:
__salt__['test.echo')('{foo: bar}')
the test.echo function just returns the argument it's given. however,
because it's being called through a salt-call process like this:
salt-call --local test.echo {foo: bar}
salt thinks it's yaml and therefore yaml decodes it. the return value
from the test.echo call above is therefore a dict, not a string.
* Prevent crash if pygit2 package is requesting re-compilation of the e… (#32652)
* Prevent crash if pygit2 package is requesting re-compilation of the entire library on production systems (no *devel packages)
* Fix PEP8: move imports to the top of the file
* Move logger up
* Add log error message in case if exception is not an ImportError
* align OS grains from older SLES with current one (#32649)
* Fixing critical bug to remove only the specified Host instead of the entire Host cluster (#32640)
* yumpkg: Ignore epoch in version comparison for explict versions without an epoch (#32563)
* yumpkg: Ignore epoch in version comparison for explict versions without an epoch
Also properly handle comparisions for packages with multiple versions.
Resolves#32229
* Don't attempt downgrade for kernel and its subpackages
Multiple versions are supported since their paths do not conflict.
* Lower log level for pillar cache (#32655)
This shouldn't show up on salt-call runs
* Don't access deprecated Exception.message attribute. (#32556)
* Don't access deprecated Exception.message attribute.
To avoid a deprecation warning message in logs.
There is a new function salt.exceptions.get_error_message(e) instead.
* Fixed module docs test.
* Fix for issue 32523 (#32672)
* Fix routes for redhat < 6
* Handle a couple of arguments better (Azure) (#32683)
* backporting a fix from develop where the use of splay would result in seconds=0 in the schedule.list when there was no seconds specified in the origina schedule
* Handle when beacon not configured and we try to enable/disable them (#32692)
* Handle the situation when the beacon is not configured and we try to disable it
* a couple more missing returns in the enable & disable
* Check dependencies type before appling str operations (#32693)
* Update external auth documentation to list supported matcher. (#32733)
Thanks to #31598, all matchers are supported for eauth configuration.
But we still have no way to use compound matchers in eauth configuration.
Update the documentation to explicitly express this limitation.
* modules.win_dacl: consistent case of dacl constants (#32720)
* Document pillar cache options (#32643)
* Add note about Pillar data cache requirement for Pillar targeting method
* Add `saltutil.refresh_pillar` function to the scheduled Minion jobs
* Minor fixes in docs
* Add note about relations between `pillar_cache` option and Pillar Targeting
to Master config comments with small reformatting
* Document Pillar Cache Options for Salt Master
* Document Minions Targeting with Mine
* Remove `saltutil.refresh_pillar` scheduled persistent job
* Properly handle minion failback failure. (#32749)
* Properly handle minion failback failure.
Initiate minion restart if all masters down on __master_disconnect like
minion does on the initial master connect on start.
* Fixed unit test
* Improve documentation on pygit2 versions (#32779)
This adds an explanation of the python-cffi dep added in pygit2 0.21.0,
and recommends 0.20.3 for LTS distros. It also links to the salt-pack
issue which tracks the progress of adding pygit2 to our Debian and
Ubuntu repositories.
* Pylint fix
* Add note about Pillar data cache requirement for Pillar targeting method
* Add `saltutil.refresh_pillar` function to the scheduled Minion jobs
* Minor fixes in docs
* Add note about relations between `pillar_cache` option and Pillar Targeting
to Master config comments with small reformatting
* Document Pillar Cache Options for Salt Master
* Document Minions Targeting with Mine
* Remove `saltutil.refresh_pillar` scheduled persistent job
Also added the loop_interval docs to minion.rst and corrected
the default documented (this value is 1 second for the minion
schedule maintenance process, not 60 seconds - the master is 60).
* Ensure rh_service not used on CloudLinux 7
Add CloudLinux to RHEL-derived distros excluded from rh_service use in osrelease >= 7
* Fix binary search and replace (#32542)
* Don't return None from eval_master (#32555)
Raise an exception instead. Because eval master if returns should return
a tuple.
* redact passwords and hashes from user.present updates
Fixes#32381
* Better log message on minion restart if master couldn't be reached. (#32576)
* Revert PR #32480 and apply #32314 with fixes / documentation (#32558)
* Revert "Fix loop in maint.flo"
This reverts commit 5196cd6a6e5db3c7b1a47b1740881bbd3e87ea3d.
* Revert "Clear VCS fsbackend and git_pillar locks on master start"
This reverts commit 7e3caa9bae1ac4de62db9924374e35a8b826937e.
* Revert "Add functions to remove VCS fsbackend update locks and git_pillar update/checkout locks"
This reverts commit 4c2db32419022501eae2a695ec488693e043d189.
* prevent eternal gitfs lock due to process crash
* Use salt.utils.fopen() instead of open()
* Make pid locking work for more than just gitfs
Also, make logging more descriptive, to aid in troubleshooting.
* Add git_pillar_global_lock config option default value
* Document proper usage of {gitfs,git_pillar}_global_lock
* Fix comments value in salt.states.pkgrepo example (#32604)
'comments' option adds '#' automatically. Example contains `#http://mirror.centos.org/centos/$releasever/os/$basearch/` string which becomes prefixed with '##' in generated file.
* alphabetize directories for dynamic modules (#32599)
Also add engines and proxy minions to the list.
* Expand on the open-source vs open-core FAQ
* Language clarification.
* Fix some mistakes in the salt-ssh thin shell script (#32583)
* [[ is bash, not compatible with /bin/sh
* check if python command exists before calling it
* Deprecate 'user' and 'group' in state cmd (#32613)
* Remove unused 'group' argument
* Fix unit testing of cmd.mod_run_check without group arg
* Deprecate 'user/group' in cmd.run
* Deprecate 'user'/'group' in cmd.script
* Deprecate 'user' in cmd.wait
* Deprecate 'user'/'group' in cmd.wait_script
* Fix mod_run_check without 'group'
* Push deprecation back one release
* Fix mac_service and mac_system modules (#32587)
* Fix mac_service module
* Add integration tests for new functions
* Start will not enable the service beforehand
* Remove unused variables
* Revert "Fix loop in maint.flo"
This reverts commit 5196cd6a6e5db3c7b1a47b1740881bbd3e87ea3d.
* Revert "Clear VCS fsbackend and git_pillar locks on master start"
This reverts commit 7e3caa9bae1ac4de62db9924374e35a8b826937e.
* Revert "Add functions to remove VCS fsbackend update locks and git_pillar update/checkout locks"
This reverts commit 4c2db32419022501eae2a695ec488693e043d189.
* prevent eternal gitfs lock due to process crash
* Use salt.utils.fopen() instead of open()
* Make pid locking work for more than just gitfs
Also, make logging more descriptive, to aid in troubleshooting.
* Add git_pillar_global_lock config option default value
* Document proper usage of {gitfs,git_pillar}_global_lock
* fix sorting by latest version when called with an attribute
* remove reference to master_alive_check
* Fixes saltstack/salt#28262
* Resolve memory leak in authentication
* outputter virt_list does not exist anymore
* Update proxmox documentation
* Fix documentation on boto_asg and boto_elb modules and states
* modules.win_timezone: don't list all zones in debug log
* Correcty index glusterfs bricks
Fixes issue #32311
* Cleaner deprecation process with decorators
* Add deprecation decorator scaffold
* Capture type error and unhandled exceptions while function calls
* Aware of the current and future version of deprecation
* Implement initially is_deprecated decorator
* Add an alias for the capitalization
* Fix capitalization easier way
* Remove an extra line
* Add successor name to the deprecation decorator.
* Granulate logging and error messages.
* Implement function swapper
* Raise later the caught exception
* Clarify exception message
* Save function original name
* Remove an extra line
* Hide an alternative hidden function name in the error message, preserving the error itself
* Rename variable as private
* Add a method to detect if a function is using its previous version
* Message to the log and/or raise an exception accordingly to the status of used function
* Log an error along with the exception
* Add internal method documentation
* Add documentation and usage process for decorator "is_deprecated"
* Add documentation and process usage for the decorator "with_deprecated"
* Hide private method name
* Fix PEP8, re-word the error message
* Deprecate basic uptime function
* Add initial decorator unit test
* Rename old/new functions, mock versions
* Move frequent data to the test setup
* Add logging on EOL exception
* Rename and document high to low version test on is_deprecated
* Implement a test on low to high version of is_deprecated decorator
* Add a correction to the test description
* Remove a dead code
* Implement a test for high to low version on is_deprecated, using with_successor param
* Correct typso adn mistaeks
* Implement high to low version with successor param on is_deprecated
* Setup a virtual name for the module
* Implement test for with_deprecated should raise an exception if same deprecated function not found
* Implement test for with_deprecated an old function is picked up if configured
* Correct test description purpose
* Implement test with_deprecated when no deprecation is requested
* Add logging test to the configured deprecation request
* Add logging testing when deprecated version wasn't requested
* Implement test EOL for with_deprecated decorator
* Correct test explanation
* Rename the test
* Implement with_deprecated no EOL, deprecated other function name
* Implement with_deprecated, deprecated other function name, EOL reached
* Add test description for the with_deprecated + with_name + EOL
* Fix confusing test names
* Add logging test to the is_deprecated decorator when function as not found.
* Add more test point to each test, remove empty lines
* Bugfix: at certain conditions a wrong alias name is reported to the log
* Fix a typo in a comment
* Add test for the logging
* Disable a pylint: None will _never_ be raised
* Fix test for the deprecated "status.uptime" version
* Bugfix: Do not yank raised exceptions
* Remove unnecessary decorator
* Add test for the new uptime
* Add test for the new uptime fails when /proc/uptime does not exists
* Rename old test case
* Skip test for the UTC time, unless freeze time is used.
* Fix pylint
* Fix documentation
* Bugfix: proxy-pass the docstring of the decorated function
* Lint fix
* Fixessaltstack/salt#28262 for 2015.5 branch
* Update master config docs
* Improve git_pillar documentation/logging
* Add note about different behavior of top file in git_pillar
* Make log entry for a missing pillar SLS file more accurate for git_pillar
* FreeBSD supports packages in format java/openjdk7 so the prior commit broke that functionality. Check freebsd/pkg#1409 for more info.
* FreeBSD supports packages in format java/openjdk7 so the prior commit broke that functionality. Check freebsd/pkg#1409 for more info.
* Update glusterfs_test to be inline with #32312
* Fix salt-cloud paralell provisioning
Closes#31632
* Ignore Raspbian in service.py __virtual__ (#32421)
* Ignore Raspbian in service.py __virtual__
This prevents more than one execution module from trying to load as the
service virtual module.
Refs: #32413
* pack __salt__ before loading provider overrides
We can (and should) pack here since we're just packing a reference to the
object. __salt__ needs to be available when we're loading our provider
overrides
* Fix broken __salt__ dict in provider override
Using ret.items() here sets ``__salt__`` to its items (tuple containing
function name and reference), breaking usage of ``__salt__`` inside
overridden functions.
* Merge #32293 with test fixes (#32418)
* Fix issue #11497
* Remove check for working directory presence in tests
* Fix Domainname introspection
Default value needs to be extracted from the container itself,
because dockerd set Domainname value when network_mode=host.
* Add pgjsonb_queue to queue doc index
* Pylint fixes
* Pass parser options into batch mode
Resolves#31738
* Changed the target file in file.symlink test (#32443)
* Argument name in docs should match actual arg name (#32445)
Fixes#31851
* tests.integration: bypass MacOS TMPDIR, gettempdir (#32447)
Updates 0edd532, 8f558a5.
When logging in as root over `ssh root@host`, `$TMPDIR` and
`tempfile.gettempdir()` are both set to a variation of:
```
/private/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/
```
When logging in as root over `sudo -i`, `$TMPDIR` is unset and
`tempfile.gettempdir()` is set to `/tmp`.
My guess is that the second case is an unintended or uncorrected omision
by Apple as they have introduced the longer, randomized temp path in a
recent version of MacOS.
* Issue #28706: Fix state user.present behavior. (#32448)
- As mentionned in issue #28706, state user.present no longer remove
user from groups if the keyword 'groups' with empty value '[]' is not
explicitly set, salt will assume current groups are still wanted.
* tests.integration: fix 4230c8a
* Move the tables of virtual modules to individual documentation pages
* Add new doc pages to toctree
* Add external ref to windows package manager docs
* Improve docstrings
* Add documentation on virtual module provider overrides to the module docs
* Clarify the scope of the provider param in states.
* Add link to provider override docs to all package providers
* Add link to provider override docs to all service providers
* Add link to provider override docs to all user providers
* dd link to provider override docs to all shadow providers
* Add link to provider override docs to all group providers
* Backport 31164 and 31364 (#32474)
* Don't send REQ while another one is waiting for response.
The message has to be removed from the queue the only *after* it's
already processed to don't confuse send() functionality that expects
empty queue means: there's no active sendings.
* Fixed zeromq ReqMessageClient destroy
* Add link to provider override docs to opkg.py
This is a companion to https://github.com/saltstack/salt/pull/32458, but
this module was not added until the 2016.3 branch, so the documentation
is being updated there for this module.
* Add documentation for some master/minion configs (#32454)
Refs #32400
Adds docs for:
- cli_summary
- event_return_queue
- event_return_whitelist
- event_return_blacklist
- file_recv_max_size
- fileserver_followsymlinks
- fileserver_ignoresymlinks
- fileserver_limit_traversal
* Automatically detect correct MySQL password column for 5.7 and fix setting passwords (#32440)
* Automatically detect MySQL password column
* Fix changing password in MySQL 5.7
* Fix lint test
* Fix unit tests (?)
They will still fail if "authentication_string" is legitimately the right column name, but I don't know what to do about that.
* Additional unit test fix
* Only unsub if we have a jid
Closes#32479
- Updated standard types in VALID_OPTS dict where necessary
- Updated default values to match VALID_OPTS in DEFAULT_*_OPTS dicts
- Updated master/minion configuration reference docs to match changes
- Removed enumerate_proxy_minions value as it's not referenced anywhere in code
Added a shortcut to link to pull requests
Added doc entries for all new modules
removed the unnecessary :undoc-members: option from recent doc module entries
Conflicts:
- salt/cli/daemons.py
- salt/config/__init__.py
- salt/exceptions.py
- salt/pillar/foreman.py
- salt/returners/local_cache.py
- salt/states/saltmod.py
- salt/utils/__init__.py
- salt/utils/cloud.py
The merge conflicts in salt/cli/daemons.py are still present in this commit.
@s0undt3ch is going to resolve them after this commit.