コマンドラインからjenkinsプラグインをインストールするオプションはありますか?jenkinsプラグインをコマンドラインからインストールするには?
私は少しのGoogle検索の後に、このためのコマンドが見つかりました:
java -jar /var/lib/jenkins/jenkins.war -s http://127.0.0.1:8080/ install-plugin ${Plugin_Name}
しかし、それは働いていません。
コマンドラインからjenkinsプラグインをインストールするオプションはありますか?jenkinsプラグインをコマンドラインからインストールするには?
私は少しのGoogle検索の後に、このためのコマンドが見つかりました:
java -jar /var/lib/jenkins/jenkins.war -s http://127.0.0.1:8080/ install-plugin ${Plugin_Name}
しかし、それは働いていません。
はジェンキンスcommand line interface documentationにつき、あなたはクライアント JARファイル(ないあなたが使用しているサーバー WARファイル)あなたはジェンキンスから直接入手することができ、例えばを使用する必要がありますhttp://localhost:8080/cli
上のリンクを介して、次にあなたがこのJARを使用してコマンドを実行できます。
java -jar jenkins-cli.jar -s http://127.0.0.1:8080/ install-plugin <name>
これは、その依存関係のいずれかと一緒に、あなたがしたいプラグインをインストールダウンロードします。
プラグインをインストールするための簡単なコマンドが見つからない場合は、 このリンクをご覧ください:How to install a plugin in Jenkins manually?
しかし、まずプラグイン(* .hpiファイル)をダウンロードして手動で実行する必要があります。
import jenkins.model.*
import java.util.logging.Logger
def logger = Logger.getLogger("")
def installed = false
def initialized = false
def pluginParameter="gitlab-plugin hipchat swarm"
def plugins =pluginParameter.split()
logger.info("" + plugins)
def instance =Jenkins.getInstance()
def pm = instance.getPluginManager()
def uc =instance.getUpdateCenter()
uc.updateAllSites()
plugins.each { logger.info("Checking " + it) if
(!pm.getPlugin(it)) {
logger.info("Looking UpdateCenter for " + it)
if (!initialized) {
uc.updateAllSites()
initialized = true
}
def plugin = uc.getPlugin(it)
if (plugin) {
logger.info("Installing " + it)
plugin.deploy()
installed = true
} } }
if (installed)
{
logger.info("Plugins installed, initializing a restart!")
instance.save()
instance.doSafeRestart()
}
'uc.updateAllSites()'を何度も呼び出すのはなぜですか?それは意図的ですか? – giorgian
あなたはジェンキンス-cli.jarが最も可能性の高い展開されていますwarファイルからジェンキンスを実行し、ここでキャッシュされている場合は、次の/var/cache/jenkins/war/WEB-INF/jenkins-cli.jar – JamesP