有没有办法通过命令行安装Jenkins插件?
我在谷歌上搜索了一下,找到了一个相应的命令:
java -jar /var/lib/jenkins/jenkins.war -s http://127.0.0.1:8080/ install-plugin ${Plugin_Name}
但是它没有起作用。
有没有办法通过命令行安装Jenkins插件?
我在谷歌上搜索了一下,找到了一个相应的命令:
java -jar /var/lib/jenkins/jenkins.war -s http://127.0.0.1:8080/ install-plugin ${Plugin_Name}
但是它没有起作用。
然后,您可以使用此JAR运行命令:
java -jar jenkins-cli.jar -s http://127.0.0.1:8080/ install-plugin <name>
/var/jenkins_home/war/WEB-INF/jenkins-cli.jar
中。 - David MolesERROR: anonymous is missing the Overall/Read permission
,那么您需要提供 -auth
命令开关,格式如下:java -jar jenkins-cli.jar -s http://localhost:8080 -auth <username>:<password> install-plugin <plugin-1> <plugin-2> ...
,请确保 -auth <username>:<password>
部分在 install-plugin
参数之前。换句话说,参数的顺序很重要。当然,您使用的 Jenkins 用户必须具有足够的权限。 - racl101import 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获取插件管理器:
version=1.0.1
curl \
-L \
-X GET "https://github.com/jenkinsci/plugin-installation-manager-tool/releases/download/plugin-management-parent-pom-$version/jenkins-plugin-manager-$version.jar" \
-o jenkins-plugin-manager-$version.jar
下载插件:
java -jar jenkins-plugin-manager-$version.jar \
--plugin-download-directory pluginsFolder \
--plugin-file plugins.yml \
--war jenkins.war
pluginsFolder
文件夹中。您需要jenkins-cli.jar文件。可以从${JENKINSURL}/jnlpJars/jenkins-cli.jar下载。
wget http://localhost:8080/jnlpJars/jenkins-cli.jar
java -jar jenkins-cli.jar -auth ${USER}:${PASSWORD} -s ${JENKINSURL} install-plugin ${PLUGIN_NAME}
错误: 匿名用户缺少Overall/Read权限
我的指令:
jenkins-plugin-cli --plugins "snyk-security-scanner:2.12.1 file-operations:1.11 branch-api:2.5.6 pipeline-build-step:2.13 workflow-support:3.8 aws-credentials:1.28 subversion:2.13.1 github-branch-source:2.7.1 publish-over-ftp:1.15 cloudbees-folder:6.740.ve4f4ffa_dea_54"
还有我在 Dockerfile 中使用的那个
FROM jenkins/jenkins:lts
USER root
# Install custom plugins
RUN jenkins-plugin-cli --plugins "snyk-security-scanner:2.12.1 file-operations:1.11 branch-api:2.5.6 pipeline-build-step:2.13 workflow-support:3.8 aws-credentials:1.28 subversion:2.13.1 github-branch-source:2.7.1 publish-over-ftp:1.15 cloudbees-folder:6.740.ve4f4ffa_dea_54"
# Set environment variables
# ENV <ENV_VARIABLE_1> <VALUE>
# ENV <ENV_VARIABLE_2> <VALUE>
USER jenkins
version: '3'
services:
jenkins:
image: jenkins/jenkins:latest
restart: always
ports:
- "8080:8080"
- "50000:50000"
environment:
JAVA_OPTS: "-Djenkins.install.runSetupWizard=false"
volumes:
- ${PWD}/plugins.txt:/usr/share/jenkins/ref/plugins.txt
command: >
bash -c "jenkins-plugin-cli -f /usr/share/jenkins/ref/plugins.txt
&& ./usr/local/bin/jenkins.sh"
插件.txt的内容:
ant:latest
antisamy-markup-formatter:latest
build-timeout:latest
cloudbees-folder:latest
configuration-as-code:latest
credentials-binding:latest
email-ext:latest
git:latest
github-branch-source:latest
gradle:latest
ldap:latest
mailer:latest
matrix-auth:latest
pam-auth:latest
pipeline-github-lib:latest
pipeline-stage-view:latest
ssh-slaves:latest
timestamper:latest
workflow-aggregator:latest
ws-cleanup:latest
job-dsl:latest
blueocean:latest
authorize-project:latest