小编典典

JSON不得超过1000000字节

jenkins

我们有一个Jenkins-Chef设置程序,其中包含一个针对客户的网站的质量检查构建项目。该构建从Bitbucket获取代码,并且脚本将食谱从Chef
Client上载到Chef Server。

这些构建运行了很长时间。两天前,自动构建和手动构建开始失败,并显示以下错误(来自Jenkins控制台输出):

更新环境质量检查

上载example-deployment [0.1.314]

错误:请求实体太大

响应:JSON不得超过1000000字节。

据我了解,JSON文件应该与nodejs相关,这是开发人员在此Web服务器上使用的。

我们遍历了Jenkins,Chef-Server和QA服务器的所有配置文件。我们找不到更改导致此错误的1MB限制的方法。

我们尝试更改client_max_body_size,但无效。我们检查了JSON文件的大小,没有一个文件达到此限制。知道在哪里可以找到解决方案吗?可以更改此限制吗?我们能做些什么(在基础设施方面),还是应该在开发人员方面解决?


阅读 310

收藏
2020-07-25

共1个答案

小编典典

因此,首先,将1M值或多或少进行硬编码,而厨师服务器并不打算存储大对象。

发生的情况是在上传食谱之前,创建了包含其信息的json文件,因为此文件将存储在数据库中并对其进行索引,其大小不应超过太大,以避免性能问题。

这个想法是仅将绝对必要的内容上传到厨师服务器,剥离CVS目录,任何IDE构建/项目文件等。

实现此目标的最佳解决方案是使用chefignore文件。必须在cookbook_path下创建它。

内容是在上传食谱时忽略的通配符匹配,因此示例如下:

*/.svn/* # To strip subversion directories
*/.git/* # To strip git directories
*~ # to ignore vim backup files
2020-07-25