通过jenkins管道运行其他工作

时间:2018-07-04 19:01:48

标签: jenkins jenkins-pipeline

由于安全限制,我无法安装Multijob项目插件,并且需要编排按此顺序运行的多个作业:

  1. 一份工作
  2. 两个并行作业
  3. 一份工作
  4. 一份工作

它们是从属设备,应按照确切的顺序运行。 我尝试做这样的事情

def multiJob(??? jobs, ??? parameters) {
  def branches = [:]    
  for (int i = 0; i < jobs.length; i++) {
     def index = i
     branches["branch${i}"] = {
       build job: "$jobs[index]", parameters: $paramaters[index] 
     }
  }
  parallel branches
}
//...
pipeline {
  //..
  stages{
    stage ('first job') {
      multijob(['firstJob'], [paramsJob1])
    }
    stage ('second job') {
      multijob(['parallel1', 'paralel2'], [paramsParallel1, paramsParallel2])
    }
   //...
  }
}

问题是我对groovy和jenkins管道不熟悉,所以我不知道 方法 multiJob 的变量 jobs parameters 应该是什么类型,以及如何在管道步骤中正确调用 multiJob >

有人可以帮我吗?

1 个答案:

答案 0 :(得分:1)

您可以执行以下操作:

<?php
$con = mysqli_connect('localhost','root','') or die (mysql_error());

mysqli_select_db($con, 'test');

    if(isset($_POST['submit']))
    {
        $file = $_FILES['file']['tmp_name'];
        $handle = fopen($file,"r");
        while(($fileop = fgetcsv($handle,2000,",")) !==false)
        {

            $KeyAccount = $fileop[0];
            $BatchNumber= $fileop[1];
            $Product = $fileop[2];
            $Quantity = $fileop[3];
            $PO = $fileop[4];
            $DateRequested = $fileop[5];
            $DateDelivered = $fileop[6];
            $Status = $fileop[7];
            $Serial = $fileop[8];
            $Voucher = $fileop[9];
            $DateExpiry = $fileop[10];
            $sql = mysqli_query($con, "INSERT INTO orders (KeyAccount,BatchNumber,Product,Quantity,PO,DateRequested,DateDelivered,Status,Serial,Voucher,DateExpiry) VALUES ('$KeyAccount','$BatchNumber','$Product','$Quantity','$PO','$DateRequested','$DateDelivered','$Status','$Serial','$Voucher','$DateExpiry')");
        }
        if($sql)
        {
            echo '<script language="javascript">';
            echo 'alert("Successfully Inserted.")';
            echo '</script>';
        }
        else{

            echo "error";
        }
    }

?>

对于更好/更深入的理解,您可以在这里https://jenkins.io/blog/2017/09/25/declarative-1/

希望它会有所帮助:)

相关问题