无法在 jenkins 中生成脚本文件

Posted

技术标签:

【中文标题】无法在 jenkins 中生成脚本文件【英文标题】:Unable to produce a script file in jenkins 【发布时间】:2016-04-19 13:22:11 【问题描述】:

我正在使用 jenkins 定期构建我的 node.js 应用程序。每当我尝试构建我的应用程序时,我都会在控制台输出上得到它

Started by user anonymous
Building in workspace /Users/Shared/Jenkins/Home/workspace
FATAL: Unable to produce a script file
java.io.IOException: Failed to create a temp file on /Users/Shared/Jenkins/Home/workspace
	at hudson.FilePath.createTextTempFile(FilePath.java:1383)
	at jenkins.plugins.nodejs.NodeJsCommandInterpreter.createScriptFile(NodeJsCommandInterpreter.java:108)
	at jenkins.plugins.nodejs.NodeJsCommandInterpreter.perform(NodeJsCommandInterpreter.java:57)
	at jenkins.plugins.nodejs.NodeJsCommandInterpreter.perform(NodeJsCommandInterpreter.java:42)
	at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
	at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:785)
	at hudson.model.Build$BuildExecution.build(Build.java:205)
	at hudson.model.Build$BuildExecution.doRun(Build.java:162)
	at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:537)
	at hudson.model.Run.execute(Run.java:1741)
	at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
	at hudson.model.ResourceController.execute(ResourceController.java:98)
	at hudson.model.Executor.run(Executor.java:410)
Caused by: java.io.IOException: Failed to create a temporary directory in /Users/Shared/Jenkins/tmp
	at hudson.FilePath$17.invoke(FilePath.java:1369)
	at hudson.FilePath$17.invoke(FilePath.java:1357)
	at hudson.FilePath.act(FilePath.java:991)
	at hudson.FilePath.act(FilePath.java:969)
	at hudson.FilePath.createTextTempFile(FilePath.java:1357)
	... 12 more
Caused by: java.io.IOException: Permission denied
	at java.io.UnixFileSystem.createFileExclusively(Native Method)
	at java.io.File.createTempFile(File.java:2024)
	at hudson.FilePath$17.invoke(FilePath.java:1367)
	... 16 more
Build step 'Execute NodeJS script' marked build as failure
Warning: you have no plugins providing access control for builds, so falling back to legacy behavior of permitting any downstream builds to be triggered
Triggering a new build of job2
Triggering a new build of job2
Finished: FAILURE

这可能是什么原因? 谢谢!

【问题讨论】:

【参考方案1】:

检查脚本试图在其中创建新文件/文件夹的文件夹的权限。 原因可能是您运行构建脚本的用户无权在该目录中创建新文件。

【讨论】:

【参考方案2】:

除了检查权限之外,还要确保您尝试保存日志/执行 jenkins 作业的机器上有可用空间。

【讨论】:

【参考方案3】:

/tmp 文件夹有权限问题。给定/tmp 用户访问权限对我有用。

【讨论】:

以上是关于无法在 jenkins 中生成脚本文件的主要内容,如果未能解决你的问题,请参考以下文章

jenkin运行jmeter自动化脚本(jenkins+jmeter+ant)

Jenkin-Jenkins忘记密码

jenkin控制台输出乱码,jenkins.xml文件设置utf-8都没有用

jenkin的安装

Jenkin-持续集成

linux通过docker容器下载和安装Jenkin