Chef infra 如何解冻食谱
我通过berks upload偶然发现了在chef中冻结食谱的能力。能够阻止更改和上传到烹饪书听起来很棒。但是 你如何解冻一本食谱?我找不到任何文档或任何帖子询问这个问题。这听起来可能有悖常理,你为什么要这么做。。。?你发布了你的食谱,你不应该改变历史 但是,如果你在生产上遇到了紧急情况,而这一版本的食谱打破了一切呢。第一个答案可能是,继续前进,解决问题——但这可能需要一段时间。第二个答案可能是,将固定在上一个版本上的版本更改,但如果您有50本烹饪书固定在该版本上,该怎么办?也不实用Chef infra 如何解冻食谱,chef-infra,berkshelf,Chef Infra,Berkshelf,我通过berks upload偶然发现了在chef中冻结食谱的能力。能够阻止更改和上传到烹饪书听起来很棒。但是 你如何解冻一本食谱?我找不到任何文档或任何帖子询问这个问题。这听起来可能有悖常理,你为什么要这么做。。。?你发布了你的食谱,你不应该改变历史 但是,如果你在生产上遇到了紧急情况,而这一版本的食谱打破了一切呢。第一个答案可能是,继续前进,解决问题——但这可能需要一段时间。第二个答案可能是,将固定在上一个版本上的版本更改,但如果您有50本烹饪书固定在该版本上,该怎么办?也不实用 能解冻东西
能解冻东西似乎很有用。是的,您可以使用-f选项强制更新。但是,在未来无限期地强制更新每一个变化听起来很刺耳,也不合适。尤其是当有人意外地冻结了一本烹饪书(比如我的情况) 您可以强制上载冻结标志设置为false的新版本。我们并没有具体地揭露这一点,也没有让它变得容易,因为它有点违背了这一点。更好的解决方案是使用SemVer钉扎而不是单一版本,或者使用更新的Policyfile系统。您可以使用
berks upload--force,特别是在意外冻结cookbook版本时。我不明白你不使用武力的意思
$ berks help upload
Usage:
berks upload [COOKBOOKS]
Options:
-b, [--berksfile=PATH] # Path to a Berksfile to operate off of.
-e, [--except=one two three] # Exclude cookbooks that are in these groups.
-o, [--only=one two three] # Only cookbooks that are in these groups.
[--no-freeze], [--no-no-freeze] # Do not freeze uploaded cookbook(s).
[--force] # Upload all cookbooks even if a frozen one exists on the Chef Server.
[--ssl-verify], [--no-ssl-verify] # Disable/Enable SSL verification when uploading cookbooks.
-s, [--skip-syntax-check], [--no-skip-syntax-check] # Skip Ruby syntax check when uploading cookbooks.
[--halt-on-frozen], [--no-halt-on-frozen] # Exit with a non zero exit code if the Chef Server already has the version of the cookbook(s).
-c, [--config=PATH] # Path to Berkshelf configuration to use.
-F, [--format=FORMAT] # Output format to use.
# Default: human
-q, [--quiet], [--no-quiet] # Silence all informational output.
-d, [--debug], [--no-debug] # Output debug information
只需删除该食谱的版本并重新加载即可。请尝试以下内容:
knife cookbook delete <cookbook name>
knife cookbook upload <cookbook name>
刀食谱删除
刀食谱上传