Puppet : 如何执行单个 class?
Puppet : How to execute a single class?
我在主 -> 代理模型中使用 Puppet。我的清单存储在 master 上,作为快速测试,我在代理上执行 puppet agent -t
以触发 Puppet 运行。
随着时间的推移,我的清单变得非常大,我正在寻找只执行单个 class say mycompany.someclass.class
的能力
我尝试了一些基于 google 搜索的变体,但 none 奏效了
puppet agent --tags mycompany.someclass.class
puppet agent --tags "mycompany.someclass.class"
puppet agent --tags Mycompany.Someclass.Class
puppet agent -t --tags "Mycompany.Someclass.Class"
puppet agent -t --tags Mycompany.Someclass.Class
puppet agent --tags Mycompany.Someclass.Class
puppet apply --tags mycompany.someclass.class
puppet apply --tags Mycompany.Someclass.Class
您可以使用 --tags
参数执行资源子集,就像您在问题中提到的那样。但是,您首先必须在要为该标签执行的资源中设置关联标签。如果你只想执行一个 class,那么你可以为那个 class 设置一个标签,并将该标签指定为 --tags
的参数以只执行那个 class.
https://docs.puppet.com/puppet/4.10/lang_tags.html
在这种情况下,标记函数对您来说会比元参数有用得多。
https://docs.puppet.com/puppet/4.10/lang_tags.html#the-tag-function
# You can use the tag function inside a class definition or defined type to assign tags to the surrounding container and all of the resources it contains
class myClass {
tag 'mytag'
...
}
然后您只能执行 myClass
:
# execute agent with tags
puppet agent -t --tags mytag
https://docs.puppet.com/puppet/4.10/lang_tags.html#restricting-catalog-runs
如果您不想标记所有资源,您也可以 运行 使用 class 名称作为标记的代理。
外行注意事项:这不是一张逃脱卡.
我在主 -> 代理模型中使用 Puppet。我的清单存储在 master 上,作为快速测试,我在代理上执行 puppet agent -t
以触发 Puppet 运行。
随着时间的推移,我的清单变得非常大,我正在寻找只执行单个 class say mycompany.someclass.class
我尝试了一些基于 google 搜索的变体,但 none 奏效了
puppet agent --tags mycompany.someclass.class puppet agent --tags "mycompany.someclass.class" puppet agent --tags Mycompany.Someclass.Class puppet agent -t --tags "Mycompany.Someclass.Class" puppet agent -t --tags Mycompany.Someclass.Class puppet agent --tags Mycompany.Someclass.Class puppet apply --tags mycompany.someclass.class puppet apply --tags Mycompany.Someclass.Class
您可以使用 --tags
参数执行资源子集,就像您在问题中提到的那样。但是,您首先必须在要为该标签执行的资源中设置关联标签。如果你只想执行一个 class,那么你可以为那个 class 设置一个标签,并将该标签指定为 --tags
的参数以只执行那个 class.
https://docs.puppet.com/puppet/4.10/lang_tags.html
在这种情况下,标记函数对您来说会比元参数有用得多。
https://docs.puppet.com/puppet/4.10/lang_tags.html#the-tag-function
# You can use the tag function inside a class definition or defined type to assign tags to the surrounding container and all of the resources it contains
class myClass {
tag 'mytag'
...
}
然后您只能执行 myClass
:
# execute agent with tags
puppet agent -t --tags mytag
https://docs.puppet.com/puppet/4.10/lang_tags.html#restricting-catalog-runs
如果您不想标记所有资源,您也可以 运行 使用 class 名称作为标记的代理。
外行注意事项:这不是一张逃脱卡.