如何以 jenkins 使用者身分安裝rvm?

如何以 jenkins 使用者身分安裝rvm?

我正在關注這些步驟在 Ubuntu EC2 執行個體上設定 Jenkins 伺服器。

一切都很好,直到我到達這一步:

在此輸入影像描述

正如您所看到的(在輸出的末尾)我被要求輸入 jenkins 用戶的密碼。據我了解,jenkins 用戶不是互動式用戶,因此沒有正常的密碼。我錯了嗎?

ubuntu@ip-xxx-xxx-xxx-xxx:~$ sudo su jenkins
jenkins@ip-xxx-xxx-xxx-xxx:/home/ubuntu$ curl -L https://get.rvm.io | bash -s stable --ruby
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   184  100   184    0     0    257      0 --:--:-- --:--:-- --:--:--   345
100 20572  100 20572    0     0  21776      0 --:--:-- --:--:-- --:--:-- 21776
Downloading https://github.com/wayneeseguin/rvm/archive/stable.tar.gz

Upgrading the RVM installation in /var/lib/jenkins/.rvm/
    RVM PATH line found in /var/lib/jenkins/.bashrc /var/lib/jenkins/.zshrc.
    RVM sourcing line found in /var/lib/jenkins/.bash_profile /var/lib/jenkins/.zlogin.
Upgrade of RVM in /var/lib/jenkins/.rvm/ is complete.

# Jenkins-ci,
#
#   Thank you for using RVM!
#   We sincerely hope that RVM helps to make your life easier and more enjoyable!!!
#
# ~Wayne, Michal & team.

In case of problems: http://rvm.io/help and https://twitter.com/rvm_io

Upgrade Notes:

  * No new notes to display.


rvm 1.24.7 (stable) by Wayne E. Seguin <[email protected]>, Michal Papis <[email protected]> [https://rvm.io/]

Searching for binary rubies, this might take some time.
Found remote file https://rvm.io/binaries/ubuntu/12.04/x86_64/ruby-2.0.0-p353.tar.bz2
Checking requirements for ubuntu.
Installing requirements for ubuntu.
jenkins password required for 'apt-get --quiet --yes update':

答案1

看起來 rvm 安裝程式正在嘗試執行 apt-get 來安裝缺少的依賴項,我們可以透過預先安裝它們來修復該問題。嘗試以 root 身分執行:

sudo apt-get install curl bison build-essential zlib1g-dev libssl-dev libreadline5-dev libxml2-dev git-core

現在嘗試以 Jenkins 用戶身份再次執行安裝命令。

答案2

這裡要求的密碼是為了sudo允許安裝腳本執行apt-get。您應該使用具有 root 權限的使用者自行執行它,或者臨時將 jerkins 使用者新增至 sudoers 並允許其執行apt-get或為其提供臨時密碼。這是我看到的三種方式。

答案3

另一個解決方案是手動下載 ruby​​ 並將其貼上到 Jenkins home .rvm 資料夾的存檔資料夾中。 Rvm 在嘗試下載 ruby​​ 之前會先查看那裡。據我所知,你只能 su 到 Jenkins 用戶,你可能不應該嘗試繞過這個問題。

相關內容