Module for working with DSC (Alpha)
depends: |
|
---|
salt.modules.win_dsc.
apply_config
(path, source=None, salt_env=u'base')¶Run an compiled DSC configuration (a folder containing a .mof file). The
folder can be cached from the salt master using the source
option.
Parameters: | path (str) -- Local path to the directory that contains the .mof |
---|
configuration file to apply. Required.
Parameters: | source (str) -- Path to the directory that contains the .mof file on the |
---|
file_roots
. The source directory will be copied to the path directory
and then executed. If the path and source directories differ, the source
directory will be applied. If source is not passed, the config located at
path
will be applied.
Optional.
Parameters: | salt_env (str) -- The salt environment to use when copying your source. |
---|
Default is 'base'
Returns: | True if successful, otherwise False |
---|---|
Return type: | bool |
CLI Example:
To apply a config that already exists on the the system
salt '*' dsc.run_config C:\\DSC\\WebSiteConfiguration
To cache a configuration from the master and apply it:
salt '*' dsc.run_config C:\\DSC\\WebSiteConfiguration salt://dsc/configs/WebSiteConfiguration
salt.modules.win_dsc.
compile_config
(path, source=None, config=None, salt_env=u'base')¶Compile a config from a powershell script (.ps1
)
Parameters: | path (str) -- Path (local) to the script that will create the .mof |
---|
configuration file. If no source is passed, the file must exist locally. Required.
Parameters: | source (str) -- Path to the script on file_roots to cache at the |
---|
location specified by path
. The source file will be cached locally and
then executed. If source is not passed, the config script located at
path
will be compiled.
Optional.
Parameters: | config (str) -- The name of the Configuration within the script to apply. |
---|
If the script contains multiple configurations within the file a config must be specified. If the config is not specified, the name of the file will be used as the config to run. Optional.
Parameters: | salt_env (str) -- The salt environment to use when copying the source. |
---|
Default is 'base'
Returns: | A dictionary containing the results of the compilation |
---|---|
Return type: | dict |
CLI Example:
To compile a config from a script that already exists on the system:
salt '*' dsc.compile_config C:\\DSC\\WebsiteConfig.ps1
To cache a config script to the system from the master and compile it:
salt '*' dsc.compile_config C:\\DSC\\WebsiteConfig.ps1 salt://dsc/configs/WebsiteConfig.ps1
salt.modules.win_dsc.
get_config
()¶Get the current DSC Configuration
Returns: | A dictionary representing the DSC Configuration on the machine |
---|---|
Return type: | dict |
CLI Example:
salt '*' dsc.get_config
salt.modules.win_dsc.
get_config_status
()¶Get the status of the current DSC Configuration
Returns: | A dictionary representing the status of the current DSC |
---|
Configuration on the machine :rtype: dict
CLI Example:
salt '*' dsc.get_config_status
salt.modules.win_dsc.
get_lcm_config
()¶Get the current Local Configuration Manager settings
Returns: | A dictionary representing the Local Configuration Manager settings on the machine |
---|---|
Return type: | dict |
CLI Example:
salt '*' dsc.get_lcm_config
salt.modules.win_dsc.
run_config
(path, source=None, config=None, salt_env=u'base')¶Compile a DSC Configuration in the form of a powershell script (.ps1) and
apply it. The powershell script can be cached from the master using the
source
option. If there is more than one config within the powershell
script, the desired configuration can be applied by passing the name in the
config
option.
This command would be the equivalent of running dsc.compile_config
and
dsc.apply_config
separately.
Parameters: | path (str) -- The local path to the powershell script that contains the |
---|
DSC Configuration. Required.
Parameters: | source (str) -- The path to the script on file_roots to cache at the |
---|
location specified by path
. The source file will be cached locally and
then executed. If source is not passed, the config script located at
path
will be compiled.
Optional.
Parameters: | config (str) -- The name of the Configuration within the script to apply. |
---|
If the script contains multiple configurations within the file a config must be specified. If the config is not specified, the name of the file will be used as the config to run. Optional.
Parameters: | salt_env (str) -- The salt environment to use when copying the source. |
---|
Default is 'base'
Returns: | True if successfully compiled and applied, False if not |
---|---|
Return type: | bool |
CLI Example:
To compile a config from a script that already exists on the system:
salt '*' dsc.compile_apply_config C:\\DSC\\WebsiteConfig.ps1
To cache a config script to the system from the master and compile it:
salt '*' dsc.compile_apply_config C:\\DSC\\WebsiteConfig.ps1 salt://dsc/configs/WebsiteConfig.ps1
salt.modules.win_dsc.
set_lcm_config
(config_mode=None, config_mode_freq=None, refresh_freq=None, reboot_if_needed=None, action_after_reboot=None, refresh_mode=None, certificate_id=None, configuration_id=None, allow_module_overwrite=None, debug_mode=False, status_retention_days=None)¶For detailed descriptions of the parameters see: https://msdn.microsoft.com/en-us/PowerShell/DSC/metaConfig
Parameters: | config_mode (str) -- How the LCM applies the configuration. Valid values |
---|
are: - ApplyOnly - ApplyAndMonitor - ApplyAndAutoCorrect
Parameters: | config_mode_freq (int) -- How often, in minutes, the current |
---|
configuration is checked and applied. Ignored if config_mode is set to ApplyOnly. Default is 15.
Parameters: | refresh_mode (str) -- How the LCM gets configurations. Valid values are: |
---|
Parameters: | refresh_freq (int) -- How often, in minutes, the LCM checks for updated |
---|
configurations. (pull mode only) Default is 30.
Note
Either config_mode_freq or refresh_freq needs to be a multiple
of the other. See documentation on MSDN for more details.
Parameters: | reboot_if_needed (bool) -- Reboot the machine if needed after a |
---|
configuration is applied. Default is False.
Parameters: | action_after_reboot (str) -- Action to take after reboot. Valid values |
---|
are: - ContinueConfiguration - StopConfiguration
Parameters: | certificate_id (guid) -- A GUID that specifies a certificate used to |
---|
access the configuration: (pull mode)
Parameters: | configuration_id (guid) -- A GUID that identifies the config file to get |
---|
from a pull server. (pull mode)
Parameters: | allow_module_overwrite (bool) -- New configs are allowed to overwrite old |
---|
ones on the target node.
Parameters: | debug_mode (str) -- Sets the debug level. Valid values are: |
---|
Parameters: | status_retention_days (int) -- Number of days to keep status of the |
---|
current config.
Returns (bool): True if successful, otherwise False
CLI Example:
salt '*' dsc.set_lcm_config ApplyOnly