简体   繁体   中英

Is there a way, in a list of jobs, to change a job's parameter to required?

I am using the script console of hudson and jenkins.

And I need make a parameter called "NAME" become required at the jobs where that parameter already exists. But I do not know any method that can help me.

def instance = hudson.model.Hudson.instance;
def allJobs = instance.getView("All");

allJobs.items.each {

    if (it.containsParameter('NAME')){ /// this exists?
        println(it.getName());

        it.set??? /// what can I do?
    }
}

I need that way for when someone excute the job the parameter "NAME" do not be empty or null.

you can get the desired result with below code:

def instance = hudson.model.Hudson.instance;
def allJobs = instance.getView("All");

allJobs.items.each {

    prop = it.getProperty(ParametersDefinitionProperty.class)
    if(prop != null) {
        for(param in prop.getParameterDefinitions()) {
            try {
              if(param.name.equals('NAME')){
                println(it.name + ":" + param.name + " " + param.defaultValue)
                if(!param.defaultValue.trim()){
                    println("default value is blank")
                }
              }

            }
            catch(Exception e) {
              println e
            }
        }
    }
}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

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