如何使用puppet为不同的用户设置自定义bash环境?

din*_*ino 6 puppet vagrant

我刚刚开始使用puppet(和vagrant)为我们的团队设置开发环境,该团队由8个以上的开发人员组成,每个开发人员都有他们特定的bash配置等等.我已经安装了所有的软件.用于快速部署新开发虚拟机的系统,但我不确定以自动方式为每个特定用户设置开发环境的最佳方式(我们最终会有几个开发环境,编写一次会很方便)并完成).

例如,我想设置一个用户joe,从github克隆Joe的配置repo,然后在该github存储库中运行一个脚本来为Joe设置环境.关于Joe以及Jimmy,James,Julie,Jane,Jim,Jake和Jimbo如何做到这一点的任何建议?

如果有任何帮助,开发机器几乎肯定是ubuntu系统.

din*_*ino 3

除了 @Matt\ 的建议之外,我还创建了一个自定义 puppet 模块,该模块根据每个人的 github 首选项实例化配置环境。生成的木偶模块users看起来像这样:

\n\n
users/\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 manifests\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 init.pp      # base level configurations for all users\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 jake.pp      # custom setup for jake\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 james.pp     # custom setup for james\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 jane.pp      # custom setup for jane\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 jim.pp       # custom setup for jim\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 jimbo.pp     # custom setup for joe\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 jimmy.pp     # custom setup for jimmy\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 joe.pp       # custom setup for julie\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 julie.pp     # custom setup for jimbo\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 templates\n
Run Code Online (Sandbox Code Playgroud)\n\n

相关花絮位于每个用户的自定义设置文件中。例如,如下所示jim.pp

\n\n
users/\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 manifests\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 init.pp      # base level configurations for all users\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 jake.pp      # custom setup for jake\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 james.pp     # custom setup for james\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 jane.pp      # custom setup for jane\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 jim.pp       # custom setup for jim\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 jimbo.pp     # custom setup for joe\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 jimmy.pp     # custom setup for jimmy\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 joe.pp       # custom setup for julie\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 julie.pp     # custom setup for jimbo\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 templates\n
Run Code Online (Sandbox Code Playgroud)\n