由于 metadata.json 而未找到 Puppet 类

由于 metadata.json 而未找到 Puppet 类

我只是想在这里补充我的经验。

所以我有这个模块,我们test现在用这个目录结构来调用它:

/etc/puppet
   |- modules
         |- test
         |    |- manifests
         |          |- init.pp
         |    |- metadata.json
         |    |- README.md
         |    |- Modulefile
         |    |- LICENSE

的内容init.pp很简单class test(){}

尝试做某事include test总是会导致Puppet::Parser::AST::Resource failed with error ArgumentError: Could not find declared class

事实证明,metadata.json问题出在我这里。事实上,以下是我所拥有的内容

    {
  "name": "test",
  "version": "1.0.0",
  "author": "TEST",
  "license": "Apache License, Version 2.0",
  "summary": "TEST",
  "source": "",
  "project_page": "https://github.com/test/test"
     }

添加dependencies密钥解决了我的问题。

{
  "name": "test",
  "version": "1.0.0",
  "author": "TEST",
  "license": "Apache License, Version 2.0",
  "summary": "TEST",
  "source": "",
  "project_page": "https://github.com/test/test"
  "dependencies": [

  ]
}

,注意到项目页面末尾缺少一个 吗?好吧,即使 metadata.json 不是有效的 json,它仍然可以正常工作。

我的问题是:到底发生什么事了?

答案1

相关内容