我正在学习Puppet,我对整个范例的最大挫折是我用来构建功能性Puppet代码的try/run/fix开发过程。我的背景是在Java中,我很自然地用于调试我的代码来查找错误,而不是运行程序来查看它在哪里炸弹使开发更快,但我似乎无法找到一种方法来使用Puppet和Eclipse 。我知道为Puppet编写调试器需要一定的创造力,但我认为这是社区可以从中受益的东西。为什么我不能调试我的木偶代码?
我已经编写了调试器,并且知道Eclipse SDK,但不幸的是,它并没有干净地映射到Puppet体系结构,这有点尴尬,因为它的运行时栈和执行流不会以自然顺序发生,运行时需要目标机器应用更改。
我很好奇,如果社区做了任何开发工作,试图创建某种类型的代码可以跨步的调试器。为了写这篇文章,我认为使用新的Puppet调试配置类型来扩展Eclipse是有意义的,在该类型中指定目标沙箱主机来测试代码以及要调试的工作区中的puppet项目(利用现有的Gepetto工具)。然后,当您启动新的Puppet调试会话时,Eclipse可以连接到远程主机,执行puppet apply以及一些额外的调试参数,并以某种方式从运行时提供关于当前正在执行哪行代码的反馈。
这仍然可能是尴尬的,但会允许木偶开发人员快速看到像噢噢..我不能创建此目录,因为父路径不存在,请等待...为什么这是如果陈述不会去这里就像我计划的那样,哦,我在这里看到Puppet在单引号或双引号中不是很清楚,或者现在我明白为什么这个失败是因为这个类没有被第一个执行等等。等等。
相反,我们得到的只是一个很大的丑陋输出在代理控制台上,是的,可以给我们洞察错误,但不会干净地将异常映射到我们的代码中,在我看来,它显示了Puppet潜在的痛苦和弱点,你至少能给我一个堆栈跟踪和行号,所以我知道在哪里看?不,谢谢。
不要误解我的意思,我喜欢Puppet如何让我在整个工作周期间看起来非常高效,当时我正在运行的Puppet适用于新机器,这是我的经理尚未想出来的,但我认为木偶真的很有用,这种缺乏调试支持是需要解决的。
有没有其他人感受到这种痛苦? - 邓肯克雷布斯
谢谢,听起来像它值得检查! – 2017-05-03 04:08:45