如何为 salt-minion 中的特定用户安装 RVM 和 RUBY

krs*_*krs 5 rvm ubuntu-12.04 saltstack

我将 Ubuntu 12.04 用于 salt-master 和 salt-minion。当我尝试使用 salt 在 salt-minion 中安装软件包时,它仅安装在特定系统中。但我需要安装在特定用户中。如何为 salt-minion 中的特定用户安装 RVM 和 RUBY?

qua*_*nta 3

您可以user在 state 中使用 argcmd以特定用户身份运行它,例如:

rvm/init.sls

curl:
  pkg:
    - installed

rvm:
  cmd:
    - run
    - name: curl -L get.rvm.io | bash -s stable
    - user: vagrant
    - unless: test -s "$HOME/.rvm/scripts/rvm"
    - require:
      - pkg: curl

rvm_bashrc:
  cmd:
    - run
    - name: echo "[[ -s $HOME/.rvm/scripts/rvm ]] && source $HOME/.rvm/scripts/rvm" >> $HOME/.bashrc
    - user: vagrant
    - unless: grep ".rvm/scripts/rvm" ~/.bashrc
    - require:
      - cmd: rvm
Run Code Online (Sandbox Code Playgroud)

rvm/ruby/init.sls

include:
  - rvm

ruby:
  cmd:
    - run
    - name: rvm install 2.1.0
    - user: vagrant
    - unless: test -d $HOME/.rvm/rubies/2.1.0
    - require:
      - cmd: rvm_bashrc
Run Code Online (Sandbox Code Playgroud)