繁体   English   中英

yaml 格式的 Puppet bolt 计划

[英]Puppet bolt plan in yaml format

我正在尝试以 YAML 格式将 Puppet bolt 计划放在一起。

我让它在 .pp 文件中工作,这是计划

plan profiles::chg123456(
  TargetSpec $nodes,
) {
  apply($nodes) {
    logrotate::rule {'proftpd':
      path          => ['/var/log/proftpd/*.log', '/var/log/xferlog', '/var/log/proftpd.system.log', '/var/log/sftp.log', '/var/log/sftp-xferlog',],
      maxsize       => '100m',
      rotate_every  => 'week',
      compress      => true,
      ifempty       => true,
      missingok     => true,
      sharedscripts => true,
      postrotate    => 'test -f /var/lock/subsys/proftpd && /usr/bin/killall -HUP proftpd || :'
    }
  }
}

它工作并使用所有正确的设置创建了/etc/logrotate.d/proftpd

现在我想转换为 YAML 格式,但不知道该怎么做。

这是我猜的,但bolt plan show一直在说

$ bolt plan show
Parse error in step "chg123456":
 No valid action detected (file: C:/Users/puppet/msys64/home/puppet/.puppetlabs/bolt/modules/profiles/plans/chg123456.yaml)

我的 YAML 计划如下所示

parameters:
  nodes:
    type: TargetSpec

steps:
  - name: chg123456
    target: $nodes
    logrotate::rules:
      proftpd:
        path:
          - '/var/log/proftpd/*.log'
          - '/var/log/xferlog'
          - '/var/log/proftpd.system.log'
          - '/var/log/sftp.log'
          - '/var/log/sftp-xferlog'
        maxsize: '100m'
        compress: true
        ifempty: true
        missingok: true
        sharedscripts: true
        postrotate: 'test -f /var/lock/subsys/proftpd && /usr/bin/killall -HUP proftpd || :'

return: $chg123456

我究竟做错了什么?

谢谢

您需要使用resources步骤,并在 yaml( 文档)中列出要使用的resources

parameters:
  nodes:
    type: TargetSpec

steps:
  - name: chg123456
    target: $nodes
    resources:
      - logrotate::rules: proftpd
        parameters:
          path:
            - '/var/log/proftpd/*.log'
            - '/var/log/xferlog'
            - '/var/log/proftpd.system.log'
            - '/var/log/sftp.log'
            - '/var/log/sftp-xferlog'
          maxsize: '100m'
          compress: true
          ifempty: true
          missingok: true
          sharedscripts: true
          postrotate: 'test -f /var/lock/subsys/proftpd && /usr/bin/killall -HUP proftpd || :'

return: $chg123456

针对一个评论, bolt plan convert仅用于将 yaml 计划转换为 Puppet 计划,而不是相反。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM