gpt4 book ai didi

vagrant - 如何加快我的 puppet 模块开发-测试周期?

转载 作者:行者123 更新时间:2023-12-02 09:12:45 26 4
gpt4 key购买 nike

我正在寻找一些关于如何在编写新的 puppet 模块时提高工作效率的最佳实践。我的工作流程现在看起来像这样:

  1. Vagrant 起来
  2. 进行更改/修复
  3. Vagrant 供给
  4. 查找错误/错误,转到 2

在我克服了所有的错误之后:

  1. Vagrant 毁灭
  2. Vagrant 起来
  3. 确保一切正常
  4. 提交我的更改

这太慢了...我怎样才能使这个工作流程更快?
我否认为 puppet 编写测试。我还有哪些其他选择?

最佳答案

  • 使用 vagrant-cachier 在主机上缓存您的 apt/yum 存储库插件
  • 使用个人资料 –evaltrace 来查找您在哪些地方浪费了完整的时间 provisioning
  • 使用软件包基础发行版:
    • 例如:rvm install ruby​​-2.0.0 与使用 fpm 创建的预编译 ruby​​ 包
    • 避免“获取互联网并编译”方法
    • 这可能会让您的配置更多 reproducible而且速度更快。
  • 不要编写模块代码
    • 尝试重用 forge/github/... 中的一些内容
    • 请注意,这可能违背我之前的建议
  • 如果可以选择,升级您的 puppet/ruby 版本
  • 迭代并防止完全配置
    • Vagrant 起来
    • Vagrant 供给
    • 修改 list /模块
    • Vagrant 供给
    • 修改 list /模块
    • Vagrant 供给
    • Vagrant 毁灭
    • Vagrant 起来
    • 启动server-spec
  • 最小化键入的命令
    • 修改文件时启动命令
    • 您也许可以设置guard保存时启动 lint/test/spec/provision
    • 您还可以使用 vagrant-notify 将通知从访客发送到主机
  • 在 vagrant 中测试无需实际配置
  • 测试您的配置而不是手动检查
    • 停止vagrant ssh - 检查服务是否正在运行或配置是否具有给定值
    • 启动server-spec
    • 看看Beaker
  • 将测试委托(delegate)到您首选的 ci 服务器(jenkins、travis-ci...)
  • 如果您对 puppet 感到有点沮丧...看看 ansible
    • 易于设置(无需安装/编译 ruby​​)
    • 您可以选择要使用标签运行的部分内容
    • 您可以通过同步文件夹共享 playbook,并在本地 vagrant 框中运行 ansible(无需启动 librairian-puppet)

更新:与 @garethr 讨论后,看看他最后的presentation关于守卫。

关于vagrant - 如何加快我的 puppet 模块开发-测试周期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21617545/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com