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

Jenkins构建步骤在'npm安装中失败 '

贺恩
2023-03-14
问题内容

詹金斯的新手:我正在詹金斯建立我们的团队。设置构建步骤以运行nodejs脚本(使用Sencha Touch
2将脚本将构建的应用程序带入本地iOS应用程序的脚本)。nodejs脚本需要一个扳手库。

Jenkins用户似乎在不同的上下文中运行。它看不到我的节点安装或npm安装。作为构建步骤的一部分,我必须将路径导出到node和npm。现在,我已经完成了,构建可以看到node和npm命令。

但是,在构建步骤中调用的命令之一是“ npm install扳手”,它给我一个权限错误,并告诉我以管理员身份运行。这样我就可以工作了。

因此,我要么需要能够赋予Jenkins用户管理员权限,要么我需要为用户提前npm安装软件包。有谁知道该怎么做?


问题答案:

我猜您正在Mac上运行Jenkins,并且您可能已经使用Jenkins
Mac安装程序安装了它。我将进一步猜测您使用默认设置安装了它,这意味着Jenkins被设置为作为启动守护程序运行,并在名为 daemon 的帐户下运行。

守护程序用户是特殊的。这是非常安全的。守护程序用户的主目录由root拥有,并且守护程序在那里没有写许可权,因此无法在其中安装任何内容。

您可以通过重新运行Jenkins安装程序来解决问题,但这一次单击 Customize 按钮。选中显示的框Start at boot as "jenkins"。取消选中显示的框Start at boot as "daemon"



 类似资料:
  • 我把这个回购放在这里,很简单。现在,我指向项目的来使用我的fork。在我之后,除了文件夹丢失之外,一切看起来都很好。我知道需要运行来生成这些文件,并且可以手动执行,但是Wix版本在安装包时运行构建步骤。与原来唯一不同的是,我修改了一些iOS代码。官方的npm软件包(即可以通过名称安装的软件包)在安装后是否获得了一些额外的爱?我错过了什么? 没有太多的代码要展示,但是我将展示package.json

  • 在Jenkins管道中,我使用构建步骤触发其他几个作业,并向其传递一些参数。除了管道之外,我在可视化我触发的不同工作时遇到了问题。我已经设置了Jenkins Delivery Pipeline插件,但是它的文档非常模糊,我只能可视化管道中的步骤,尽管用阶段和任务名称标记作业。 例子: 我在Jenkins中有两个作业作为管道/工作流作业,具有以下管道脚本: 工作坊: 作业栏: 我如何使它也显示在工作

  • 问题内容: 我使用sdk-manager-plugin下载我的Android依赖项。不幸的是,由于“首次下载”问题(#47 #10),我的Jenkins CI构建经常失败。 我听说人们通过两次构建代码来解决此问题,因此,如果第一次失败,则第二次通过。 我们尝试使用条件步骤在Jenkins中进行设置(以下屏幕截图),但是如果第一步失败,它仍然会导致整个CI作业失败。 有人可以推荐设置此设置的最佳方法

  • 我需要在没有sudo的情况下执行npm install命令,但在我的Jenkins作业中,当我尝试执行该命令时,出现了这个错误,这是错误控制台消息: npm WARN grunt-bump@0.8.0需要grunt@>=1.0.1的对等项,但未安装。npm WARN SITE_MMM@0.0.1无存储库字段。npm WARN SITE_MMM@0.0.1无许可证字段。npm错误!Linux 3.1

  • 问题内容: 我想用詹金斯建立一个Maven项目。但是,只有在SVN储存库中的某个文件已更改(并且包含特殊密钥)的情况下,才必须构建项目。 所以我的计划是创建一个包含两个构建步骤的工作: 第一步是执行检查该“条件”的shell或python脚本。 第二步是实际的Maven构建 仅当步骤1中的条件检查返回“ true”时,才必须调用第二步。 有可能这样做吗?好吧,我想如果不满足条件,我可以在第一个脚本

  • 问题内容: 我正在尝试使用Google Cloud Container Builder使用GCP构建触发器来自动构建容器 我的代码在Go中,并且在项目根目录中有一个文件夹,其中包含我所有的Go依赖项(我使用)。但是,此文件夹未签入到源代码管理中。 我有一个文件,首先将Go源代码构建为可执行文件,然后使用此可执行文件构建Docker映像。Container Builder确保这些构建步骤可以访问我的