在廚師工作站的一部分,我用命令 -廚師:無密碼sudo來廚師客戶端作爲一個Ant腳本
knife ssh 'name:myserver.org.com' -x myUserName -P myClearTextPassword "sudo chef-client"
這工作得很好,提示我輸入sudo密碼並執行菜譜在目的主廚節點上。到現在爲止還挺好。
現在,我試圖做到這一點,作爲在Windows系統上運行的ANT腳本中的Jenkins作業中的構建操作的一部分。 Ant腳本如下 -
<project name="MyProject" default="init" basedir=".">
<target name="init">
<property name="mypassword" value="myClearTextPassword" />
<echo message="Executing the knife script"/>
<exec executable="cmd" failonerror="true" inputstring="${mypassword}">
<arg line="/c knife ssh name:myserver.org.com -x myUserName -P myClearTextPassword sudo chef-client" />
</exec>
</target>
Ant腳本,當在輸入sudo密碼運行等待 -
C:\chef-repo>ant
Buildfile: C:\chef-repo\build.xml
init:
[echo] Executing the knife script
[exec] cwllx0001.hq.target.com knife sudo password:
我的目標是執行這個Ant腳本,使得它DOES不是等待sudo密碼。任何我們可以實現的方式?
授予在/ etc/sudoer文件的用戶NOPASSWORD許可,並限制其加入這一行
/etc/sudoers
只需要它所需要的資源 – bjhaid