简体   繁体   English

通过Groovy脚本设置Artifactory Jenkins插件

[英]Setting up Artifactory Jenkins plugin via Groovy scripts

I am trying to add Artifactory configuration to Jenkins via a Groovy script upon initialization, however I get the following error 我试图在初始化时通过Groovy脚本将Artifactory配置添加到Jenkins,但是出现以下错误

groovy.lang.GroovyRuntimeException: Could not find matching constructor for: org.jfrog.hudson.ArtifactoryServer(java.lang.String, java.lang.String, org.jfrog.hudson.util.Credentials, org.jfrog.hudson.util.Credentials, java.lang.Integer, java.lang.Boolean)

The code I am running is below 我正在运行的代码如下

Jenkins version: 2.46.3 Artifactory Plugin Version: 2.11.0 Jenkins版本:2.46.3 Artifactory插件版本:2.11.0

import jenkins.model.*
import org.jfrog.*
import org.jfrog.hudson.*
import org.jfrog.hudson.util.Credentials;

def inst = Jenkins.getInstance()

def desc = inst.getDescriptor("org.jfrog.hudson.ArtifactoryBuilder")

def deployerCredentials = new Credentials("admin", "password")
def resolverCredentials = new Credentials("", "")

def sinst = [new ArtifactoryServer(
  "server-id",
  "http://localhost:8081/artifactory",
  deployerCredentials,
  resolverCredentials,
  300,
  false )
]

desc.setArtifactoryServers(sinst)

Additionally I have found a way of doing this using the credentials plugin 此外,我还找到了一种使用凭据插件的方法

import java.lang.System
import hudson.model.*
import jenkins.model.*
import org.jfrog.*
import org.jfrog.hudson.*
import org.jfrog.hudson.util.Credentials;

def inst = Jenkins.getInstance()
def artifactoryDesc = inst.getDescriptor("org.jfrog.hudson.ArtifactoryBuilder")

CredentialsConfig deployerCredentials = new CredentialsConfig(new Credentials("credentialID", "credentialID"), "credentialID", false)

println "--> Configuring Artifactory... "
def ArtInst = [new ArtifactoryServer(
  "artifactiory",
  "https://servername:8443/artifactory",
  deployerCredentials,
  null,
  300,
  false,
  3 )
]

artifactoryDesc.setArtifactoryServers(ArtInst)
artifactoryDesc.setUseCredentialsPlugin(true)
artifactoryDesc.save()
println "--> Configuring Artifactory... done"

I was searching for a solution for the same problem, and figured this out: 我正在寻找相同问题的解决方案,并弄清楚了:

import jenkins.model.*
import org.jfrog.*
import org.jfrog.hudson.*
import org.jfrog.hudson.util.Credentials;

def inst = Jenkins.getInstance()

def desc = inst.getDescriptor("org.jfrog.hudson.ArtifactoryBuilder")

def deployerCredentials = new CredentialsConfig("admin", "password", "")
def resolverCredentials = new CredentialsConfig("", "", "")

def sinst = [new ArtifactoryServer(
  "main",
  "http://localhost:8081/artifactory",
  deployerCredentials,
  resolverCredentials,
  300,
  false,
  3 )
]

desc.setArtifactoryServers(sinst)

desc.save()

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM