天天看點

Puppet parser指令參數介紹(八)

puppet parser指令主要用于對*.pp檔案文法檢測,檢查檔案文法是否正确需要加validate動作參數.

文法正确,沒有任何傳回.

1

2

3

4

5

6

7

8

9

10

11

12

13

<code>[root@puppet ~]</code><code># cat 2.pp </code>

<code>user { </code><code>'root'</code><code>:</code>

<code>  </code><code>ensure           =&gt; </code><code>'present'</code><code>,</code>

<code>  </code><code>comment          =&gt; </code><code>'root'</code><code>,</code>

<code>  </code><code>gid              =&gt; </code><code>'0'</code><code>,</code>

<code>  </code><code>home             =&gt; </code><code>'/root'</code><code>,</code>

<code>  </code><code>password         =&gt; </code><code>'$6$yIyAnjPI1kiwQpe7$N0Lq9PrISqc5FRvWYbyS7tRSDE2lGLhdbQU/adpVAGbBpRsUSQ6GR22REoV9IJa9pPTHrKEOeShC2TZF3CUx3.'</code><code>,</code>

<code>  </code><code>password_max_age =&gt; </code><code>'99999'</code><code>,</code>

<code>  </code><code>password_min_age =&gt; </code><code>'0'</code><code>,</code>

<code>  </code><code>shell            =&gt; </code><code>'/bin/bash'</code><code>,</code>

<code>  </code><code>uid              =&gt; </code><code>'0'</code><code>,</code>

<code>}</code>

<code>[root@puppet ~]</code><code># puppet parser validate 2.pp</code>

把上段的puppet代碼修改為錯誤的puppet代碼測試:(root後面的冒号去掉)

14

<code>user { </code><code>'root'</code>

<code>[root@puppet ~]</code><code># puppet parser validate 2.pp </code>

<code>Error: Could not parse </code><code>for</code> <code>environment production: Syntax error at </code><code>'ensure'</code><code>; expected </code><code>'}'</code> <code>at </code><code>/root/2</code><code>.pp:2</code>

批量檢測多個*.pp檔案:(puppet resource快速生成3個*.pp檔案.)

15

16

17

18

19

20

21

22

23

24

25

26

27

<code>[root@puppet ~]</code><code># cat 3.pp </code>

<code>package { </code><code>'httpd'</code><code>:</code>

<code>  </code><code>ensure =&gt; </code><code>'absent'</code><code>,</code>

<code>[root@puppet ~]</code><code># cat 4.pp </code>

<code>package { </code><code>'nginx'</code><code>:</code>

<code>[root@puppet ~]</code><code># find ./* -type f -name "*.pp" |xargs -n1 -t puppet parser validate</code>

<code>puppet parser validate .</code><code>/2</code><code>.pp </code>

<code>puppet parser validate .</code><code>/3</code><code>.pp </code>

<code>puppet parser validate .</code><code>/4</code><code>.pp </code>

<code>puppet parser validate .</code><code>/example-meng/tests/init</code><code>.pp </code>

<code>puppet parser validate .</code><code>/example-meng/manifests/init</code><code>.pp</code>

本文轉自青衫解衣 51CTO部落格,原文連結:http://blog.51cto.com/215687833/1964847

繼續閱讀