当资源被声明为抽象资源类型时,puppet清单给出错误

时间:2015-09-03 13:08:15

标签: puppet puppet-enterprise

我在puppet中读到资源也可以使用manifest中的Resource []语法声明。我在下面写了清单但它给出了错误

obj

由于

2 个答案:

答案 0 :(得分:0)

您引用的文档适用于Puppet 4.2。你可以找到Puppet 3.8参考here

3.8中不支持您使用的声明类型。无论哪种方式,您都应该使用标准create_table :attachments do |t| t.attachment :file t.string :name t.string :surname t.belongs_to :user t.timestamps null: false end 资源声明,因为它与更多版本的puppet兼容。

答案 1 :(得分:0)

我检查了Puppet 3.8 Documentation的资源,但没有看到抽象资源,但这并不意味着该功能不存在。话虽如此,我还在Data Resource Type页面上找到了以下信息和示例。在3.8中,资源类型可能需要引用字符串,如下例所示:

# A resource declaration using a resource data type:
File { "/etc/ntp.conf":
  mode  => "0644",
  owner => "root",
  group => "root",
}

# Equivalent to the above:
Resource["file"] { "/etc/ntp.conf":
  mode  => "0644",
  owner => "root",
  group => "root",
}

# A resource default:
File {
  mode  => "0644",
  owner => "root",
  group => "root",
}

因此,您可以尝试以下代码,看看它是否解决了问题:

file { '/var/NO/tmp' : ensure => directory,
}
Resource["user"] {"NO":

    ensure => present ,
    password => 'admin@123',
}

group { no :
    ensure => present ,
}

我最好的建议是在查看Puppet文档时要特别小心。确保在计划更改生产环境时始终查看正在运行的版本,而不仅仅是尝试了解即将推出的功能等。

我希望这有帮助!