【问题标题】:Jenkins build step fails on 'npm install <whatever>'Jenkins 构建步骤在“npm install <whatever>”上失败
【发布时间】:2012-07-18 20:29:59
【问题描述】:

Jenkins 新手:我正在 Jenkins 中设置我们的构建。设置构建步骤以运行 nodejs 脚本(使用 Sencha Touch 2 将构建的应用程序带入原生 iOS 应用程序的脚本)。 nodejs 脚本需要扳手库。

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

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

所以我要么需要能够授予 Jenkins 用户管理员权限,要么需要提前为用户 npm-install 软件包。有谁知道如何做这些选项中的任何一个。

【问题讨论】:

    标签: macos node.js jenkins npm


    【解决方案1】:

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

    守护程序用户是特殊的。这是非常安全的。 daemon 用户的 home 目录是 root 拥有的,daemon 在那里没有写权限,所以它不能在那里安装任何东西。

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

    【讨论】:

    • 自定义按钮在哪里?安装程序在其向导中没有选项。
    【解决方案2】:

    在构建配置中添加执行命令并导出路径:

    export PATH=/sbin:/usr/sbin:/bin:/usr/local/bin
    npm install
    

    了解更多information see this link

    【讨论】:

      猜你喜欢
      • 2019-07-08
      • 2015-02-24
      • 1970-01-01
      • 2018-01-23
      • 2021-05-08
      • 1970-01-01
      • 2019-11-25
      • 1970-01-01
      • 2021-08-10
      相关资源
      最近更新 更多