1

ファイルマウントを実行するためのビルド中にシステムリソースへのルートアクセスを必要とする、特に関与するJavaアプリがあります。maven2/3プラグインを介してjenkinsから「sudo」を使用してmavenを直接呼び出す方法はありますか? または、プラグインは常に jenkins として実行されますか?

4

4 に答える 4

3

Jenkins をルートとして実行する方法は次のとおりです。これにより、maven プラグイン プロセスもルートとして実行されます。

方法 1) の JENKINS_USER の次の行を変更します。/etc/sysconfig/jenkins

  #JENKINS_USER=jenkins
  JENKINS_USER=root

Debian ベースのシステムでは、ファイルは次の場所にあります。/etc/default/jenkins

方法 2) /etc/init.d/jenkins を直接変更する

  #daemon --user "$JENKINS_USER" --pidfile "$JENKINS_PID_FILE" $JAVA_CMD $PARAMS > /dev/null
  echo "WARNING: RUNNING AS ROOT"
  daemon --user root --pidfile "$JENKINS_PID_FILE" $JAVA_CMD $PARAMS > /dev/null

次に、もちろん、次を実行する必要があります。

service jenkins restart
于 2013-02-28T19:11:40.437 に答える
1

Jenkins maven プラグインを介して maven を実行すると、jenkins のプロセスで実行されます。サーバーをルートとして実行することは悪い考えです。プラグインをシェルコマンドとして実行してみてください:

sudo mvn org.apache.maven.plugins:maven-dependency-plugin:2.4:get -DartifactId=...

これも参照してください: https://superuser.com/questions/67765/sudo-with-password-in-one-command-line

于 2013-02-28T06:06:50.513 に答える
1

jenkins プロセスを root として実行してみてください (ただし、セキュリティ上は理想的ではありません)。同じユーザーとして maven プロセスを生成する必要があります。

于 2013-02-28T01:13:06.777 に答える