官术网_书友最值得收藏!

Syntax

DSC provides a DSL to help you create MOF files. We call the file that holds the DSL syntax the DSC configuration file. Even though it is a PowerShell script file (a text file with a .ps1 extension), it can't do anything on its own. You can try to execute a configuration file all you want; it won't do anything to the system by itself. A DSC configuration file holds the information for the desired state, not the execution code to bring the node to a desired state. We talked about this separation of configuration information and execution logic earlier, and we are going to keep seeing this repeatedly throughout our use of DSC.

The DSC DSL allows both imperative and declarative commands. What this means is that configuration files can both describe what has to be done (declarative) as well as have a PowerShell code that is executed inline (imperative).

Declarative code will typically be DSC functions and resource declarations and will make up the majority of code inside your DSC configuration file. Remember, the purpose of DSC is to express the expected state of the system, which you do by declaring it in these files in the human-readable language.

Imperative code will typically make decisions based on the metadata provided inside the configuration file, for example, choosing whether to apply a configuration to a target node inside the $AllNodes variable or deciding which files or modules to apply based on some algorithm. You will find that putting a lot of imperative code inside your configuration files will cause maintenance and troubleshooting problems in the future. Generally, a lot of imperative code indicates that you are performing actions or deciding on logic that should be in a DSC resource, which is the best place to put imperative code. We will cover what indicators for this are and other important aspects of DSC resources in Chapter 4, DSC Resources.

主站蜘蛛池模板: 安庆市| 康马县| 阜平县| 财经| 高尔夫| 五台县| 怀仁县| 焉耆| 醴陵市| 大姚县| 凤山县| 遂宁市| 喜德县| 百色市| 漳平市| 左贡县| 十堰市| 灵石县| 梅州市| 峡江县| 盘锦市| 曲松县| 绥滨县| 宝坻区| 兴文县| 观塘区| 黄山市| 望城县| 石景山区| 大英县| 湘阴县| 昭通市| 彰化市| 延寿县| 新田县| 色达县| 湟中县| 佳木斯市| 沅江市| 通许县| 惠州市|