2016-11-20 157 views
1

我試圖使用鹽來設置我的開發環境,以便它可以等同於我登臺環境。我需要做的一件事就是將一些環境變量添加到當前用戶的.bashrc文件中。SaltStack:獲取登錄的用戶名

我現在有這在我的.sls文件:

/home/fred/.bashrc: 
    file.append: 
    - text: 
     - export GOROOT=/usr/local/go 
     - export GOPATH=/home/fred/dev/go 
     - export PATH=$GOPATH/bin:$GOROOT/bin:$PATH 

然後我用的鹽調用根下本地運行狀態(因爲有我需要的根其他的東西)。但這並不理想,如果你的名字不是fred。我怎樣才能重寫這個文件,以便它即使在根目錄下運行salt-call時也能爲當前用戶工作?

好像我可以得到機器的名稱,所以如果機器名稱是類似username-dev的東西,我能否以某種方式解析並用新用戶名替換fred的所有實例?有沒有更好的辦法?

回答

2

此方法將使您能夠每次提交不同的用戶名。我認爲你沒有一個特定的用戶列表

/home/{{ pillar.newuser }}/.bashrc: 
    file.append: 
    - text: 
     - export GOROOT=/usr/local/go 
     - export GOPATH=/home/fred/dev/go 
     - export PATH=$GOPATH/bin:$GOROOT/bin:$PATH 

命令行:

salt-call state.sls golang_env pillar='{"newuser": "fred"}' 

但是,如果你有一個特定的用戶列表,那麼你可以按照this method如在文檔中提到