我正在为我们正在构建的一组系统创建公司内部SDK。 我们有多个阶段,如“开发”,“质量保证”和“生产”,我们承载真正的服务。
我希望SDK能够镜像这些阶段。为此,我想使用vagrant,puppet和某种属性文件,其中包含与阶段匹配的服务版本。
是否可以拥有这样的外部文件?它定义的只是版本的几个变量。 其他所有内容(节点,网络,应用程序,WAR文件,数据库等)都应在通用的vagrant / puppet文件中定义。
感谢您的帮助!
答案 0 :(得分:1)
看一下hiera,它是木偶参数的分层数据结构,它可以为不同的环境设置不同的参数值(dev,test& prod)。
从puppet3 hiera开始内置到puppet中(确保你的vagrant box上的puppet客户端> 3,运行:puppet -V)