Advertisement
Guest User

Untitled

a guest
Jan 17th, 2020
136
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Perl 2.29 KB | None | 0 0
  1. use diagnostics;
  2. use ElectricCommander;
  3. my $ec = new ElectricCommander();
  4.  
  5. my $componentNames = $ec->getProperty("/myCall/componentNames")->findnodes("//value")->string_value();
  6. print "componentNames : " . $componentNames. "\n";
  7.  
  8. my $workDir = $ec->getProperty("/myParent/workDir")->findnodes("//value")->string_value();
  9. my $region = $ec->getProperty("/myParent/region")->findnodes("//value")->string_value();
  10. my $product = $ec->getProperty("/myParent/product")->findnodes("//value")->string_value();
  11. my $buildType = $ec->getProperty("/myParent/buildType")->findnodes("//value")->string_value();
  12. my $sourceProject =  '$[/myProject/projectName]';
  13.  
  14. my $server = "";
  15. if ((index(lc($product), "ford") != -1) || (index(lc($product), "gen3") != -1)) {
  16.   $server = "gen3";
  17. } elsif (index(lc($product), "factual") != -1 || index(lc($product), "infog") != -1) {
  18.   $server = "factual";
  19. } else {
  20.   $server = "denali";
  21. }
  22.  
  23.  
  24. my $resourceName = $ec->getProperty("/projects[$sourceProject]/envs/$server/$region/$buildType/resourcePool")->findvalue("//value")->string_value();
  25. print "resourceName : $resourceName\n";
  26.  
  27. my $jobID = '$[jobId]';
  28.  
  29. #Create a new procedure
  30. my $procedureName = "VarStep_Checkout_SelectedComponent_${jobID}_${region}_${product}";
  31. $ec->createProcedure("$sourceProject", "$procedureName", { resourceName => "$resourceName" });
  32.  
  33. # Store off the procedure name
  34. $ec->setProperty("/myParent/runCheckoutSelectedComponents", "$procedureName");
  35.  
  36. # Read component name from array
  37. my @componentsArray = split(/,/,$componentNames);
  38.  
  39. foreach my $componentName (@componentsArray)
  40. {
  41.   print "componentName is:".$componentName."\n";
  42.   $response = $ec->createStep("$sourceProject", "$procedureName", "Checkout_".$componentName,{
  43.     subprocedure => "CheckoutCode",
  44.     subproject => "$[/server/svnPluginVersion]",
  45.     parallel => "0",
  46.     actualParameter => [
  47.        {actualParameterName => "dest", value => $workDir. "/" . $componentName},
  48.        {actualParameterName => "CheckoutType", value => "D"},
  49.        {actualParameterName => "config", value => "Telenav"},
  50.        {actualParameterName => "SubversionRevision", value => "$[/myParent/svnRevision]"},
  51.        {actualParameterName => "SubversionUrl", value => "$[/myProject/svnRootUrl]/$[/myParent/svnBranch]/SearchQualityPlatform"}
  52.     ]});    
  53. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement