classes:
  - service.jenkins.support
  - service.jenkins.client
parameters:
  _param:
    jenkins_client_user: none
    jenkins_client_password: none
    jenkins_master_host: ${_param:control_vip_address}
    jenkins_master_port: 8081
  jenkins:
    client:
      master:
        host: ${_param:jenkins_master_host}
        port: ${_param:jenkins_master_port}
        user: ${_param:jenkins_client_user}
        password: ${_param:jenkins_client_password}
      plugin:
        ansicolor: {}
        build-blocker-plugin: {}
        build-monitor-plugin: {}
        build-user-vars-plugin: {}
        categorized-view: {}
        description-setter: {}
        discard-old-build: {}
        docker-workflow: {}
        extended-choice-parameter: {}
        gerrit-trigger: {}
        git: {}
        heavy-job: {}
        matrix-auth: {}
        monitoring: {}
        pipeline-utility-steps: {}
        rebuild: {}
        simple-theme-plugin: {}
        slack: {}
        test-stability: {}
        timestamper: {}
        workflow-cps: {}
        workflow-remote-loader: {}
        workflow-scm-step:
          restart: true
      lib:
        pipeline-library:
          enabled: true
          url: ${_param:jenkins_gerrit_url}/mcp-ci/pipeline-library
          credential_id: gerrit
      approved_scripts:
        - field java.lang.String value
        - field java.util.ArrayList size
        - method com.cloudbees.jenkins.plugins.sshcredentials.SSHUserPrivateKey getPrivateKey
        - method com.cloudbees.plugins.credentials.common.IdCredentials getId
        - method com.cloudbees.plugins.credentials.common.PasswordCredentials getPassword
        - method com.cloudbees.plugins.credentials.common.UsernameCredentials getUsername
        - method groovy.json.JsonBuilder toPrettyString
        - method groovy.json.JsonSlurperClassic parseText java.lang.String
        - method groovy.lang.GString getBytes
        - method groovy.lang.GroovyObject getProperty java.lang.String
        - method hudson.model.Run getEnvironment
        - method java.io.File getAbsolutePath
        - method java.io.File getName
        - method java.io.File getParent
        - method java.io.Writer write java.lang.String
        - method java.lang.AutoCloseable close
        - method java.lang.Class isInstance java.lang.Object
        - method java.lang.Iterable iterator
        - method java.net.HttpURLConnection getResponseCode
        - method java.net.HttpURLConnection setRequestMethod java.lang.String
        - method java.net.URI getHost
        - method java.net.URI getPort
        - method java.net.URL openConnection
        - method java.net.URLConnection getHeaderField java.lang.String
        - method java.net.URLConnection getInputStream
        - method java.net.URLConnection getOutputStream
        - method java.net.URLConnection setDoOutput boolean
        - method java.net.URLConnection setRequestProperty java.lang.String java.lang.String
        - method java.util.LinkedHashMap$LinkedHashIterator hasNext
        - method java.util.Map size
        - method java.util.regex.MatchResult group int
        - method java.util.regex.Matcher matches
        - method java.util.regex.Pattern matcher java.lang.CharSequence
        - method org.jenkinsci.plugins.workflow.job.WorkflowRun doStop
        - method org.jenkinsci.plugins.workflow.support.steps.build.RunWrapper build
        - new groovy.json.JsonBuilder java.lang.Object
        - new groovy.json.JsonSlurperClassic
        - new java.io.File java.lang.String
        - new java.io.OutputStreamWriter java.io.OutputStream
        - new java.lang.Exception java.lang.String
        - new java.lang.InterruptedException
        - new java.net.URI java.lang.String
        - new java.util.Date
        - staticField groovy.io.FileType FILES
        - staticMethod com.cloudbees.plugins.credentials.CredentialsProvider lookupCredentials java.lang.Class hudson.model.ItemGroup
        - staticMethod java.lang.System getenv java.lang.String
        - staticMethod jenkins.model.Jenkins getInstance
        - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods collect java.util.Map groovy.lang.Closure
        - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods eachFile java.io.File groovy.io.FileType groovy.lang.Closure
        - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods get java.util.Map java.lang.Object java.lang.Object
        - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods getAt java.lang.Iterable int
        - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods getAt java.lang.String int
        - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods getBytes java.io.File
        - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods getText java.io.InputStream
        - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods hasProperty java.lang.Object java.lang.String
        - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods iterator java.lang.Object
        - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods iterator java.lang.Object[]
        - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods plus java.util.List java.lang.Iterable
        - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods plus java.util.List java.lang.Object
        - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods plus java.util.List java.util.Collection
        - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods putAt java.lang.Object java.lang.String java.lang.Object
        - staticMethod org.codehaus.groovy.runtime.EncodingGroovyMethods encodeBase64 byte[]
        - staticMethod org.codehaus.groovy.runtime.ScriptBytecodeAdapter bitwiseNegate java.lang.Object
        - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods println java.lang.Object java.lang.Object
        - method hudson.PluginWrapper getShortName
        - method hudson.PluginManager getPlugins
        - method jenkins.model.Jenkins getPluginManager
        - method hudson.model.ItemGroup getItem java.lang.String
        - method hudson.model.Job getLastBuild
        - method hudson.model.Run getResult
        - method hudson.model.Job getBuilds
        - staticMethod java.lang.String format java.lang.String java.lang.Object[]
        - staticMethod java.util.regex.Pattern quote java.lang.String
        - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods findAll java.util.List groovy.lang.Closure
        - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods find java.util.Collection groovy.lang.Closure
        - method java.util.Collection remove java.lang.Object
        - staticMethod java.lang.System exit int
        - method hudson.model.ItemGroup getItems
        - method hudson.model.Item getName
        - method java.util.Map remove java.lang.Object
        - staticMethod java.lang.System getProperty java.lang.String
        - staticMethod java.lang.Integer valueOf java.lang.String
        - method java.util.List subList int int

