When a minion starts up it sends a notification on the event bus with a tag that looks like this: salt/minion/<minion_id>/start. For historical reasons the minion also sends a similar event with an event tag like this: minion_start. This duplication can cause a lot of clutter on the event bus when there are many minions. Set enable_legacy_startup_events: False in the minion config to ensure only the salt/minion/<minion_id>/start events are sent.
The new enable_legacy_startup_events minion config option
defaults to True, but will be set to default to False beginning with
the Neon release of Salt.
The Salt Syndic currently sends an old style syndic_start event as well. The
syndic respects enable_legacy_startup_events as well.
The napalm_network module had the following changes:
Support for the template_path has been removed in the load_template
function. This is because support for NAPALM native templates has been
dropped.
The trafficserver module had the following changes:
Support for the match_var function was removed. Please use the
match_metric function instead.
Support for the read_var function was removed. Please use the
read_config function instead.
Support for the set_var function was removed. Please use the
set_config function instead.
The win_update module has been removed. It has been replaced by win_wua
module.
The win_wua module had the following changes:
Support for the download_update function has been removed. Please use the
download function instead.
Support for the download_updates function has been removed. Please use the
download function instead.
Support for the install_update function has been removed. Please use the
install function instead.
Support for the install_updates function has been removed. Please use the
install function instead.
Support for the list_update function has been removed. Please use the
get function instead.
Support for the list_updates function has been removed. Please use the
list function instead.
The vault pillar had the following changes:
Support for the profile argument was removed. Any options passed up until
and following the first path= are discarded.
The cache roster had the following changes:
Support for roster_order as a list or tuple has been removed. As of the
Fluorine release, roster_order must be a dictionary.
The roster_order option now includes IPv6 in addition to IPv4 for the
private, public, global or local settings. The syntax for these
settings has changed to ipv4-* or ipv6-*, respectively.
The docker state has been removed. The following functions should be used
instead.
The docker.running function was removed. Please update applicable SLS files
to use the docker_container.running function instead.
The docker.stopped function was removed. Please update applicable SLS files
to use the docker_container.stopped function instead.
The docker.absent function was removed. Please update applicable SLS files
to use the docker_container.absent function instead.
The docker.absent function was removed. Please update applicable SLS files
to use the docker_container.absent function instead.
The docker.network_present function was removed. Please update applicable
SLS files to use the docker_network.present function instead.
The docker.network_absent function was removed. Please update applicable
SLS files to use the docker_network.absent function instead.
The docker.image_present function was removed. Please update applicable SLS
files to use the docker_image.present function instead.
The docker.image_absent function was removed. Please update applicable SLS
files to use the docker_image.absent function instead.
The docker.volume_present function was removed. Please update applicable SLS
files to use the docker_volume.present function instead.
The docker.volume_absent function was removed. Please update applicable SLS
files to use the docker_volume.absent function instead.
The docker_network state had the following changes:
Support for the driver option has been removed from the absent function.
This option had no functionality in docker_network.absent.
The git state had the following changes:
Support for the ref option in the detached state has been removed.
Please use the rev option instead.
The k8s state has been removed. The following functions should be used
instead:
The k8s.label_absent function was removed. Please update applicable SLS
files to use the kubernetes.node_label_absent function instead.
The k8s.label_present function was removed. Please updated applicable SLS
files to use the kubernetes.node_label_present function instead.
The k8s.label_folder_absent function was removed. Please update applicable
SLS files to use the kubernetes.node_label_folder_absent function instead.
The netconfig state had the following changes:
Support for the template_path option in the managed state has been
removed. This is because support for NAPALM native templates has been dropped.
The trafficserver state had the following changes:
Support for the set_var function was removed. Please use the config
function instead.
The win_update state has been removed. Please use the win_wua state instead.
SaltSSH now works across different major Python versions. Python 2.7 ~ Python 3.x are now supported transparently. Requirement is, however, that the SaltMaster should have installed Salt, including all related dependencies for Python 2 and Python 3. Everything needs to be importable from the respective Python environment.
SaltSSH can bundle up an arbitrary version of Salt. If there would be an old box for example, running an outdated and unsupported Python 2.6, it is still possible from a SaltMaster with Python 3.5 or newer to access it. This feature requires an additional configuration in /etc/salt/master as follows:
ssh_ext_alternatives:
2016.3: # Namespace, can be actually anything.
py-version: [2, 6] # Constraint to specific interpreter version
path: /opt/2016.3/salt # Main Salt installation
dependencies: # List of dependencies and their installation paths
jinja2: /opt/jinja2
yaml: /opt/yaml
tornado: /opt/tornado
msgpack: /opt/msgpack
certifi: /opt/certifi
singledispatch: /opt/singledispatch.py
singledispatch_helpers: /opt/singledispatch_helpers.py
markupsafe: /opt/markupsafe
backports_abc: /opt/backports_abc.py
It is also possible to use several alternative versions of Salt. You can for instance generate a minimal tarball using runners and include that. But this is only possible, when such specific Salt version is also available on the Master machine, although does not need to be directly installed together with the older Python interpreter.