tianjingle / xml-jenkins-pipeline

根据jenkins创建pipline项目可以传递xml文件来创建,故采用java的方式创建jenkins2.x的pipline流水线配置的主要配置的xml文本,通过该工具,第三方平台可以通过api来创建流水线。

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

what is xml-jenkins-pipeline?

jenkins2.0之后,提供了jenkinsfile的可编程的构建流程。我们只需要在我们的项目中放入jenkinsfile文件即可。jenkins构建项目的时候会自动去读取这里的jenkinsFile,但是jenkins众多模式中如何去采用这种模式呐?通过config.xml。 这里就是提供一种config生成器,专门用来生成jenkins pipeline模式的config。这对第三方系统控制CI有比较大的作用,可以使得jenkins等工具变成整个系统网的一个组件。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<flow-definition plugin="workflow-job@2.36">
    <actions>
        <org.jenkinsci.plugins.pipeline.modeldefinition.actions.DeclarativeJobAction plugin="pipeline-model-definition@1.5.0"/>
        <org.jenkinsci.plugins.pipeline.modeldefinition.actions.DeclarativeJobPropertyTrackerAction plugin="pipeline-model-definition@1.5.0">
            <jobProperties></jobProperties>
            <triggers>
                <string>org.jenkinsci.plugins.gwt.GenericTrigger</string>
            </triggers>
            <parameters></parameters>
            <options></options>
        </org.jenkinsci.plugins.pipeline.modeldefinition.actions.DeclarativeJobPropertyTrackerAction>
    </actions>
    <description></description>
    <keepDependencies>false</keepDependencies>
    <properties>
        <org.jenkinsci.plugins.gogs.GogsProjectProperty plugin="gogs-webhook@1.0.15">
            <gogsSecret>scrent</gogsSecret>
            <gogsUsePayload>false</gogsUsePayload>
            <gogsBranchFilter></gogsBranchFilter>
        </org.jenkinsci.plugins.gogs.GogsProjectProperty>
        <org.jenkinsci.plugins.workflow.job.properties.PipelineTriggersJobProperty>
            <triggers>
                <org.jenkinsci.plugins.gogs.GogsTrigger plugin="gogs-webhook@1.0.15">
                    <spec></spec>
                </org.jenkinsci.plugins.gogs.GogsTrigger>
                <org.jenkinsci.plugins.gwt.GenericTrigger plugin="generic-webhook-trigger@1.66">
                    <spec></spec>
                    <regexpFilterText></regexpFilterText>
                    <regexpFilterExpression></regexpFilterExpression>
                    <causeString>Generic Cause</causeString>
                    <printPostContent>false</printPostContent>
                    <printContributedVariables>false</printContributedVariables>
                    <token>123</token>
                    <silentResponse>false</silentResponse>
                </org.jenkinsci.plugins.gwt.GenericTrigger>
            </triggers>
        </org.jenkinsci.plugins.workflow.job.properties.PipelineTriggersJobProperty>
    </properties>
    <definition class="org.jenkinsci.plugins.workflow.cps.CpsScmFlowDefinition" plugin="workflow-cps@2.78">
        <scm class="hudson.plugins.git.GitSCM" plugin="git@4.0.0">
            <configVersion>2</configVersion>
            <userRemoteConfigs>
                <hudson.plugins.git.UserRemoteConfig>
                    <url>123123</url>
                </hudson.plugins.git.UserRemoteConfig>
            </userRemoteConfigs>
            <branches>
                <hudson.plugins.git.BranchSpec>
                    <name>*/master</name>
                </hudson.plugins.git.BranchSpec>
            </branches>
            <doGenerateSubmoduleConfigurations>false</doGenerateSubmoduleConfigurations>
            <extensions></extensions>
        </scm>
        <ScriptPath>Jenkinsfile</ScriptPath>
        <lightweight>true</lightweight>
    </definition>
    <triggers></triggers>
    <disabled>false</disabled>
</flow-definition>

About

根据jenkins创建pipline项目可以传递xml文件来创建,故采用java的方式创建jenkins2.x的pipline流水线配置的主要配置的xml文本,通过该工具,第三方平台可以通过api来创建流水线。


Languages

Language:Java 100.0%