Jenkins 从groovy脚本创建freestyle项目

Jenkins 从groovy脚本创建freestyle项目,jenkins,groovy,Jenkins,Groovy,可以直接从groovy脚本创建新的freestyle项目并将其添加到Jenkins上的dashboard视图中吗 例如,我想浏览一个项目的所有依赖项列表。如果项目列表中缺少依赖项,我想获取它,请创建freestyle项目,然后运行构建。我认为这可能是您需要的: @NonCPS def createFreestyleProject(String projectName){ def parent = Jenkins.getInstance() //In

可以直接从groovy脚本创建新的freestyle项目并将其添加到Jenkins上的dashboard视图中吗


例如,我想浏览一个项目的所有依赖项列表。如果项目列表中缺少依赖项,我想获取它,请创建freestyle项目,然后运行构建。

我认为这可能是您需要的:

    @NonCPS
    def createFreestyleProject(String projectName){
        def parent = Jenkins.getInstance()
        //Instantiate a new project
        def project = new FreeStyleProject(parent, projectName);

        //Set a description for the project
        project.setDescription("Just a placeholder for a description")

        //Create a parameter for the project
        def parameterDefinitions = new ArrayList<ParameterDefinition>();
        def name = "ParameterOne"
        def defaultValue = "1"
        def description = "Just a placeholder for a parameter description"
        parameterDefinitions.add(new StringParameterDefinition(name, defaultValue, description))

        //Create a job property for the project
        def jobProperty = new ParametersDefinitionProperty(parameterDefinitions)

        //Adding and saving the job property to the project
        project.addProperty(jobProperty)
        project.save()
        parent.reload()
    }

我想这可能是你需要的:

    @NonCPS
    def createFreestyleProject(String projectName){
        def parent = Jenkins.getInstance()
        //Instantiate a new project
        def project = new FreeStyleProject(parent, projectName);

        //Set a description for the project
        project.setDescription("Just a placeholder for a description")

        //Create a parameter for the project
        def parameterDefinitions = new ArrayList<ParameterDefinition>();
        def name = "ParameterOne"
        def defaultValue = "1"
        def description = "Just a placeholder for a parameter description"
        parameterDefinitions.add(new StringParameterDefinition(name, defaultValue, description))

        //Create a job property for the project
        def jobProperty = new ParametersDefinitionProperty(parameterDefinitions)

        //Adding and saving the job property to the project
        project.addProperty(jobProperty)
        project.save()
        parent.reload()
    }