当前位置: 首页 > 面试题库 >

node.js服务器未在詹金斯中给出成功状态

曹茂材
2023-03-14
问题内容

我想使用jenkins运行一个nodejs项目。一切都进行得很好,除非我在詹金斯工作中看不到任何成功状态。

我在jenkins中使用npm install&npm
start命令启动了服务器。它启动了服务器,但是没有成功构建,因此,我无法启动其他作业,这取决于节点服务器的构建成功;当新的提交到达时,jenkins会检测到它,但是该作业不会重新启动而是保留由于原始作业正在运行,因此处于待处理状态。

我是詹金斯的新手。有人可以为此建议什么吗?


问题答案:

听起来您的js脚本的执行正在挂起您的构建,请尝试使用&后将其发送到后台:

npm install
npm start &

还要注意,npm start从Jenkins作业运行将产生一个新进程,而Jenkins将杀死在构建期间产生的作业,如果您希望将此进程保留为守护进程,则将是一个问题。

为了避免这种情况,您需要在命令之前提供一个标志:

BUILD_ID=dontKillMe npm start &

您尚未详细说明作业流程中的所有步骤,但我想您会在构建第一个作业之后尝试执行一些后构建操作,因此发现您的流程未运行会导致后续作业失败。

此外,请尝试永久使用。这将确保脚本一直运行直到停止为止,并可以像这样启动应用程序:

BUILD_ID=dontKillMe forever start yourApp.js


 类似资料:
  • 问题内容: 我在Jenkins工作,我在其中构建Web应用程序并通过命令启动它: 但是当我在Jenkins中进行此构建时,由于服务器仍在提示符下运行,因此无法 完成构建: 那么,如何在Jenkins中运行grunt服务器,以使服务器仍然运行但构建成功完成? 问题答案: 该命令通常通过节点打开本地服务器,您可以在该服务器上进行测试。如果您使用yeoman或其他,则希望Jenkins运行该命令。 问题

  • 有没有可能让詹金斯使用真正的浏览器而不是无头浏览器?我正在运行一些用TestNG编写的测试(使用Selenium webdriver)。当我运行testng时。在Eclipse中,浏览器启动并运行测试。但当我使用Jenkins并用maven运行测试时,它不会启动任何浏览器。

  • 问题内容: 我设置了一个主服务器(linux)和一个Windows从属服务器,并且想在主服务器和从属服务器上构建一个作业。“限制在哪里可以运行该项目”选项允许我们将作业绑定到特定的从站,但是是否可以将一个作业绑定到主站和从站?如何配置“构建步骤”,因为在Windows上运行它需要使用Windows批处理命令进行构建,而Linux需要使用shell命令。例如,即使作业尝试在主服务器和从服务器上运行,

  • 问题内容: 如何轻松地将Jenkins与qUnit集成?我将使用真正的浏览器(如firefox和chrome)运行测试。我的服务器在RedHat 6.1 Linux上运行。我想我都需要插件/库,但我仍然不知道如何使其工作。我第一次与Jenkins合作(在服务器端)。 //编辑: 如果有人也可以共享想法如何构建覆盖率报告,那将是很棒的。 提前致谢 :)。 问题答案: 说詹金斯和QUnit只是难题的一

  • 我想做一些非常简单的事情,在一个文件夹中,我有一个jar文件和一个包含脚本的名为脚本的文件夹。但我可以让詹金斯拉链来做这件事。 zip目录:“awsdeploy”,排除:“”,glob:“”,“scripts/”,zipFile:“SQSToElasticProcessor.zip” 必须显式命名“zip”的参数。@ 第 31 行,第 16 列。

  • 问题:我正在设置詹金斯声纳github集成,用于通过声纳自动提取请求静态代码检查。 我的配置: > 使用github安装声纳 詹金斯 在jenkins post build action中,我有以下属性 我已经添加了所有除了sonar.github.pull请求属性。我不知道如何动态获取这个属性值。似乎以上四个属性必须正常工作。 编辑:我找到了添加属性-Dsonar的方法。github。pullR