From 39c7d3ecdb6e383c5d68ef1dbe9ec32f8f378289 Mon Sep 17 00:00:00 2001 From: "Claus Schneider (Praqma)" Date: Tue, 21 Aug 2018 10:52:40 +0200 Subject: [PATCH] gh-128 Fix polling issue. NOT-BUILT is also saved for the record --- .../PretestedIntegrationPostCheckout.java | 74 ++++++++--------- .../scm/git/AccumulatedCommitStrategy.java | 2 +- .../scm/git/GitBridge.java | 6 +- .../PretestedIntegrationAsGitPluginExt.java | 75 +++++++++++------- src/test/resources/EndUserTesting/Jenkinsfile | 19 +++-- ...Declarative => JenkinsfileDeclCheckoutSCM} | 10 +-- .../EndUserTesting/JenkinsfileDeclPreSCM | 28 +++++++ .../JenkinsfileScriptedCheckoutSCM | 43 ++++++++++ ...fileScripted => JenkinsfileScriptedPreSCM} | 7 +- .../createRepoForIntegrationSituations.sh | Bin 5449 -> 6618 bytes .../jobs/test-FsExtAcc/config.xml | 20 ++--- .../config.xml | 2 +- .../jobs/test-PipeDeclCheckoutSCM/config.xml | 40 ++++++++++ .../config.xml | 8 +- .../jobs/test-PipeDeclScript/config.xml | 22 +++-- .../test-PipeScriptedCheckoutSCM/config.xml | 39 +++++++++ .../config.xml | 6 +- 17 files changed, 291 insertions(+), 110 deletions(-) rename src/test/resources/EndUserTesting/{JenkinsfileDeclarative => JenkinsfileDeclCheckoutSCM} (84%) create mode 100644 src/test/resources/EndUserTesting/JenkinsfileDeclPreSCM create mode 100644 src/test/resources/EndUserTesting/JenkinsfileScriptedCheckoutSCM rename src/test/resources/EndUserTesting/{JenkinsfileScripted => JenkinsfileScriptedPreSCM} (87%) rename src/test/resources/EndUserTesting/jobs/{test-MultiBranchPipe => test-MultiBranchPipePreSCM}/config.xml (97%) create mode 100644 src/test/resources/EndUserTesting/jobs/test-PipeDeclCheckoutSCM/config.xml rename src/test/resources/EndUserTesting/jobs/{test-PipeDeclSCM => test-PipeDeclPreSCM}/config.xml (90%) create mode 100644 src/test/resources/EndUserTesting/jobs/test-PipeScriptedCheckoutSCM/config.xml rename src/test/resources/EndUserTesting/jobs/{test-PipeScriptedSCM => test-PipeScriptedPreSCM}/config.xml (90%) diff --git a/src/main/java/org/jenkinsci/plugins/pretestedintegration/PretestedIntegrationPostCheckout.java b/src/main/java/org/jenkinsci/plugins/pretestedintegration/PretestedIntegrationPostCheckout.java index 3297b845..90517921 100644 --- a/src/main/java/org/jenkinsci/plugins/pretestedintegration/PretestedIntegrationPostCheckout.java +++ b/src/main/java/org/jenkinsci/plugins/pretestedintegration/PretestedIntegrationPostCheckout.java @@ -126,50 +126,44 @@ public boolean endBuild() throws InterruptedException, IOException { @Override public void perform(Run run, FilePath ws, Launcher launcher, TaskListener listener) throws InterruptedException { Result result = run.getResult(); + String triggeredBranch = "n/a"; + String integrationBranch = "n/a"; + String integrationRepo = null; + if( ! run.getActions(PretestTriggerCommitAction.class).isEmpty()) { + triggeredBranch = run.getAction(PretestTriggerCommitAction.class).triggerBranch.getName(); + integrationBranch = run.getAction(PretestTriggerCommitAction.class).integrationBranch; + integrationRepo = run.getAction(PretestTriggerCommitAction.class).integrationRepo; + String ucCredentialsId = run.getAction(PretestTriggerCommitAction.class).ucCredentialsId; + try { + // The choice of 'jgit' or 'git'. It must be set though.. + GitClient client = Git.with(listener, run.getEnvironment(listener)).in(ws).using("git").getClient(); - /** - * This was added because we want to fail if the plugin performed more than 1 merge during run. - * This can only happen with the Pipeline job types. - * The action is only added when Pretested Integration merges. - * We do not support this scenario with more than 1 merge. - */ - /** - if(run.getActions(PretestTriggerCommitAction.class).size() > 1) { - throw new InterruptedException("[PREINT] Error: More than 1 integration configured with the Pretested Integration Plugin. Did you use the Pretested Integration Plugin git scm extension on more than one repository? It is not supported."); - } -*/ - String triggeredBranch = run.getActions(PretestTriggerCommitAction.class).get( - run.getActions(PretestTriggerCommitAction.class).size()-1).triggerBranch.getName(); - String integrationBranch = run.getActions(PretestTriggerCommitAction.class).get( - run.getActions(PretestTriggerCommitAction.class).size()-1).integrationBranch; - String integrationRepo = run.getActions(PretestTriggerCommitAction.class).get( - run.getActions(PretestTriggerCommitAction.class).size()-1).integrationRepo; - String ucCredentialsId = run.getActions(PretestTriggerCommitAction.class).get( - run.getActions(PretestTriggerCommitAction.class).size()-1).ucCredentialsId; - - try { - // The choice of 'jgit' or 'git'. It must be set though.. - GitClient client = Git.with(listener, run.getEnvironment(listener)).in(ws).using("git").getClient(); - - if (ucCredentialsId != null) { - StandardUsernameCredentials credentials = CredentialsProvider.findCredentialById(ucCredentialsId, StandardUsernameCredentials.class, run, Collections.EMPTY_LIST); - - if (credentials != null) { - listener.getLogger().println("[PREINT] Found credentials"); - client.setCredentials(credentials); + if (ucCredentialsId != null) { + StandardUsernameCredentials credentials = CredentialsProvider.findCredentialById(ucCredentialsId, StandardUsernameCredentials.class, run, Collections.EMPTY_LIST); + + if (credentials != null) { + listener.getLogger().println("[PREINT] Found credentials"); + client.setCredentials(credentials); + } } - } - if (result == null || result.isBetterOrEqualTo(GitBridge.getRequiredResult())) { - GitBridge.pushToIntegrationBranchGit(run, listener, client, integrationRepo, integrationBranch); - GitBridge.deleteBranch(run, listener, client, triggeredBranch, integrationRepo); - } else { - LOGGER.log(Level.WARNING, "Build result not satisfied - skipped post-build step."); - listener.getLogger().println(LOG_PREFIX + "Build result not satisfied - skipped post-build step."); + if (result == null || result.isBetterOrEqualTo(GitBridge.getRequiredResult())) { + // Make sure we accidently do not try to delete the integration branch - nor push when not needed. Consider moving this to the two functions + if (triggeredBranch.replaceFirst(integrationRepo + "/" , "").equals(integrationBranch)) { + LOGGER.log(Level.WARNING, LOG_PREFIX + "The development/triggered branch: " + triggeredBranch.replaceFirst(integrationRepo + "/" , "") + " equals the integration branch: " + integrationBranch + " SKIP the push to integration branch and deletion of the development branch"); + listener.getLogger().println(LOG_PREFIX + "The development/triggered branch: " + triggeredBranch.replaceFirst(integrationRepo + "/" , "") + " equals the integration branch: " + integrationBranch + " SKIP the push to integration branch and deletion of the development branch"); + } else { + GitBridge.pushToIntegrationBranchGit(run, listener, client, integrationRepo, integrationBranch); + GitBridge.deleteBranch(run, listener, client, triggeredBranch, integrationRepo); + } + } else { + LOGGER.log(Level.WARNING, "Build result not satisfied - skipped post-build step."); + listener.getLogger().println(LOG_PREFIX + "Build result not satisfied - skipped post-build step."); + } + } catch (IOException ex) { + LOGGER.log(Level.SEVERE, "Cannot launch the Git Client.." + ex); + listener.getLogger().println(LOG_PREFIX + "Cannot launch the Git Client.." + ex); } - } catch (IOException ex) { - LOGGER.log(Level.SEVERE, "Cannot launch the Git Client.." + ex); - listener.getLogger().println(LOG_PREFIX + "Cannot launch the Git Client.." + ex); } GitBridge.updateBuildDescription(run, listener, integrationBranch, triggeredBranch.replace(integrationRepo + "/", "")); diff --git a/src/main/java/org/jenkinsci/plugins/pretestedintegration/scm/git/AccumulatedCommitStrategy.java b/src/main/java/org/jenkinsci/plugins/pretestedintegration/scm/git/AccumulatedCommitStrategy.java index ebaade7b..2829c520 100644 --- a/src/main/java/org/jenkinsci/plugins/pretestedintegration/scm/git/AccumulatedCommitStrategy.java +++ b/src/main/java/org/jenkinsci/plugins/pretestedintegration/scm/git/AccumulatedCommitStrategy.java @@ -115,7 +115,7 @@ private void doTheIntegration(Run build, TaskListener listener, GitBridge gitbri listener.getLogger().println(logMessage); try { client.merge() - .setMessage("Merge of " + triggerBranch.getName() + " into "+ expandedIntegrationBranch + " (temporary)") + .setMessage("Merge of " + triggerBranch.getName() + " into "+ expandedIntegrationBranch + " (temporary message)") .setCommit(false) .setGitPluginFastForwardMode(MergeCommand.GitPluginFastForwardMode.NO_FF) .setRevisionToMerge(commitId).execute(); diff --git a/src/main/java/org/jenkinsci/plugins/pretestedintegration/scm/git/GitBridge.java b/src/main/java/org/jenkinsci/plugins/pretestedintegration/scm/git/GitBridge.java index 5968daab..ef2cb01b 100644 --- a/src/main/java/org/jenkinsci/plugins/pretestedintegration/scm/git/GitBridge.java +++ b/src/main/java/org/jenkinsci/plugins/pretestedintegration/scm/git/GitBridge.java @@ -139,18 +139,18 @@ public static void updateBuildDescription(Run run, TaskListener listener, if (triggeredBranch != null) { String postfixText = ""; Result result = run.getResult(); + if (result == null || result.isBetterOrEqualTo(getRequiredResult())) { postfixText = " -> " + integrationBranch; } String finalDescription; if (!StringUtils.isBlank(run.getDescription())) { - finalDescription = String.format("%s%n%s", - run.getDescription(), - triggeredBranch + postfixText); + finalDescription = String.format("%s%n%s",run.getDescription(),triggeredBranch + postfixText); } else { finalDescription = String.format("%s", triggeredBranch + postfixText); } try { + listener.getLogger().println(LOG_PREFIX + "Updating build description"); run.setDescription(finalDescription); } catch (Exception ex) { LOGGER.log(Level.FINE, "Failed to update description", ex); /* Dont care */ diff --git a/src/main/java/org/jenkinsci/plugins/pretestedintegration/scm/git/PretestedIntegrationAsGitPluginExt.java b/src/main/java/org/jenkinsci/plugins/pretestedintegration/scm/git/PretestedIntegrationAsGitPluginExt.java index d16ac9f0..d5080f90 100644 --- a/src/main/java/org/jenkinsci/plugins/pretestedintegration/scm/git/PretestedIntegrationAsGitPluginExt.java +++ b/src/main/java/org/jenkinsci/plugins/pretestedintegration/scm/git/PretestedIntegrationAsGitPluginExt.java @@ -98,13 +98,10 @@ public Revision decorateRevisionToBuild( EnvVars environment = run.getEnvironment(listener); - // TODO: Should this be last branch in stead of? - Branch triggeredBranchDraft = triggeredRevision.getBranches().iterator().next(); - Branch triggeredBranch = new Branch(triggeredBranchDraft.getName().replaceFirst("refs/remotes/", ""), triggeredBranchDraft.getSHA1()); String expandedIntegrationBranch = gitBridge.getExpandedIntegrationBranch(environment); String expandedRepo = gitBridge.getExpandedRepository(environment); String ucCredentialsId = ""; - + for (UserRemoteConfig uc : scm.getUserRemoteConfigs()) { String credentialsRepoName = StringUtils.isBlank(uc.getName()) ? "origin" : uc.getName(); if (credentialsRepoName != null && credentialsRepoName.equals(expandedRepo)) { @@ -115,42 +112,64 @@ public Revision decorateRevisionToBuild( } } - try { - gitBridge.evalBranchConfigurations(triggeredBranch, expandedIntegrationBranch, expandedRepo); - listener.getLogger().println(String.format(LOG_PREFIX + "Checking out integration branch %s:", expandedIntegrationBranch)); - git.checkout().branch(expandedIntegrationBranch).ref(expandedRepo + "/" + expandedIntegrationBranch).deleteBranchIfExist(true).execute(); - ((GitIntegrationStrategy) gitBridge.integrationStrategy).integrateAsGitPluginExt(scm, run, git, listener, marked, triggeredBranch, gitBridge); - - - } catch (NothingToDoException e) { + Branch triggeredBranch = null; + if ( triggeredRevision.getBranches().isEmpty() ) { run.setResult(Result.NOT_BUILT); - String logMessage = LOG_PREFIX + String.format("%s - setUp() - NothingToDoException - %s", LOG_PREFIX, e.getMessage()); + String logMessage = String.format("%s - No branch on revision hence we cannot built - leaving workspace: %s but dont build", LOG_PREFIX, expandedIntegrationBranch); listener.getLogger().println(logMessage); - LOGGER.log(Level.SEVERE, logMessage, e); - git.checkout().branch(expandedIntegrationBranch).ref(expandedRepo + "/" + expandedIntegrationBranch).deleteBranchIfExist(true).execute(); - } catch (IntegrationFailedException | EstablishingWorkspaceFailedException | UnsupportedConfigurationException e) { - run.setResult(Result.FAILURE); - String logMessage = String.format("%s - setUp() - %s - %s", LOG_PREFIX, e.getClass().getSimpleName(), e.getMessage()); - listener.getLogger().println(logMessage); - LOGGER.log(Level.SEVERE, logMessage, e); - git.checkout().branch(expandedIntegrationBranch).ref(expandedRepo + "/" + expandedIntegrationBranch).deleteBranchIfExist(true).execute(); - } catch (IOException | InterruptedException e) { + } else { + // TODO: Should this be last branch in stead of? + Branch triggeredBranchDraft = triggeredRevision.getBranches().iterator().next(); + triggeredBranch = new Branch(triggeredBranchDraft.getName().replaceFirst("refs/remotes/", ""), triggeredBranchDraft.getSHA1()); + } + + if( ! run.getActions(PretestTriggerCommitAction.class).isEmpty() ) { run.setResult(Result.FAILURE); - String logMessage = String.format("%s - Unexpected error. %n%s", LOG_PREFIX, e.getMessage()); - LOGGER.log(Level.SEVERE, logMessage, e); + String logMessage = String.format("%s ERROR Likely misconfigered. Currently it is not supported to integrate twice in a build. It is likely because of Pipeline preSCM step or multiSCM. Please see https://github.com/Praqma/pretested-integration-plugin/issues/133 for details about Pipeline preSCM support. If it is neither scenarios, please report it", LOG_PREFIX ); listener.getLogger().println(logMessage); - e.printStackTrace(listener.getLogger()); - git.checkout().branch(expandedIntegrationBranch).ref(expandedRepo + "/" + expandedIntegrationBranch).deleteBranchIfExist(true).execute(); + } + + if (run.getResult() == null || run.getResult() == Result.SUCCESS ) { + + try { + gitBridge.evalBranchConfigurations(triggeredBranch, expandedIntegrationBranch, expandedRepo); + listener.getLogger().println(String.format(LOG_PREFIX + "Checking out integration branch %s:", expandedIntegrationBranch)); + git.checkout().branch(expandedIntegrationBranch).ref(expandedRepo + "/" + expandedIntegrationBranch).deleteBranchIfExist(true).execute(); + ((GitIntegrationStrategy) gitBridge.integrationStrategy).integrateAsGitPluginExt(scm, run, git, listener, marked, triggeredBranch, gitBridge); + } catch (NothingToDoException e) { + run.setResult(Result.NOT_BUILT); + String logMessage = String.format("%s - setUp() - NothingToDoException - %s", LOG_PREFIX, e.getMessage()); + listener.getLogger().println(logMessage); + LOGGER.log(Level.SEVERE, logMessage, e); + // Leave the workspace as we were triggered, so postbuild step can report the correct branch + scm.getBuildData(run).saveBuild(new Build(marked, triggeredRevision, run.getNumber(), run.getResult())); + git.checkout().ref(triggeredBranch.getName()).execute(); + } catch (IntegrationFailedException | EstablishingWorkspaceFailedException | UnsupportedConfigurationException e) { + run.setResult(Result.FAILURE); + String logMessage = String.format("%s - setUp() - %s - %s", LOG_PREFIX, e.getClass().getSimpleName(), e.getMessage()); + listener.getLogger().println(logMessage); + LOGGER.log(Level.SEVERE, logMessage, e); + git.checkout().branch(expandedIntegrationBranch).ref(expandedRepo + "/" + expandedIntegrationBranch).deleteBranchIfExist(true).execute(); + } catch (IOException | InterruptedException e) { + run.setResult(Result.FAILURE); + String logMessage = String.format("%s - Unexpected error. %n%s", LOG_PREFIX, e.getMessage()); + LOGGER.log(Level.SEVERE, logMessage, e); + listener.getLogger().println(logMessage); + e.printStackTrace(listener.getLogger()); + git.checkout().branch(expandedIntegrationBranch).ref(expandedRepo + "/" + expandedIntegrationBranch).deleteBranchIfExist(true).execute(); + } } run.addAction(new PretestTriggerCommitAction(triggeredBranch, expandedIntegrationBranch, expandedRepo, ucCredentialsId)); - if (run.getResult() == null || run.getResult() == Result.SUCCESS) { + if (run.getResult() == null || run.getResult() == Result.SUCCESS || run.getResult() == Result.NOT_BUILT) { Revision mergeRevision = new GitUtils(listener, git).getRevisionForSHA1(git.revParse(HEAD)); return mergeRevision; } else { - // We could not integrate, but we must return a revision for recording it so it does not retrigger + // reset the workspace to the triggered revision git.checkout().ref(triggeredBranch.getName()).execute(); + // We could not integrate, but we must return a revision for recording it so it does not retrigger scm.getBuildData(run).saveBuild(new Build(marked, triggeredRevision, run.getNumber(), Result.FAILURE)); + // throwing the AbortException will result in a status=FAILURE throw new AbortException(String.format("%s Unable to integrate revision: %s", LOG_PREFIX, triggeredRevision.getSha1String())); } } diff --git a/src/test/resources/EndUserTesting/Jenkinsfile b/src/test/resources/EndUserTesting/Jenkinsfile index befff4a4..239fa1ff 100644 --- a/src/test/resources/EndUserTesting/Jenkinsfile +++ b/src/test/resources/EndUserTesting/Jenkinsfile @@ -1,10 +1,17 @@ + +def pattern = 'MultiBranchPipePreSCM' + +def triggerBranchPattern = '*/ready' + pattern + '/*' +def integrationBranch = 'master' + pattern + + node { stage ('Checkout'){ - checkout scm + checkout scm /** - checkout([ - $class: 'GitSCM', - branches: [[name: '*/readyMultiBranchPipe/*']], + checkout([ + $class: 'GitSCM', + branches: [[name: triggerBranchPattern ]], userRemoteConfigs: [[ name: 'origin', url: 'git@github.com:bicschneider/test-git-phlow-plugin.git' @@ -12,11 +19,11 @@ node { extensions: [ pretestedIntegration( gitIntegrationStrategy: accumulated(), - integrationBranch: 'masterMultiBranchPipe', + integrationBranch: integrationBranch, repoName: 'origin') , [ $class: 'ChangelogToBranch', - options: [compareRemote: 'origin', compareTarget: 'masterMultiBranchPipe'] + options: [compareRemote: 'origin', compareTarget: integrationBranch] ], [$class: 'PruneStaleBranch'] ] diff --git a/src/test/resources/EndUserTesting/JenkinsfileDeclarative b/src/test/resources/EndUserTesting/JenkinsfileDeclCheckoutSCM similarity index 84% rename from src/test/resources/EndUserTesting/JenkinsfileDeclarative rename to src/test/resources/EndUserTesting/JenkinsfileDeclCheckoutSCM index 465647ba..02199462 100644 --- a/src/test/resources/EndUserTesting/JenkinsfileDeclarative +++ b/src/test/resources/EndUserTesting/JenkinsfileDeclCheckoutSCM @@ -1,5 +1,8 @@ -def triggerBranchPattern = '*/readyPipeDeclSCM/*' -def integrationBranch = 'masterPipeDeclSCM' + +def pattern = 'PipeDeclCheckoutSCM' + +def triggerBranchPattern = '*/ready' + pattern + '/*' +def integrationBranch = 'master' + pattern pipeline{ agent none stages { @@ -8,8 +11,6 @@ pipeline{ label 'master' } steps { - checkout scm // just reference SCM in the job executing the Pipeline script. -/** checkout([ $class: 'GitSCM', branches: [[name: triggerBranchPattern ]], @@ -29,7 +30,6 @@ pipeline{ [$class: 'PruneStaleBranch'] ] ]) -*/ // sh ''' // if [ -e ./build_failed.md ]; then // exit 1 diff --git a/src/test/resources/EndUserTesting/JenkinsfileDeclPreSCM b/src/test/resources/EndUserTesting/JenkinsfileDeclPreSCM new file mode 100644 index 00000000..618bf546 --- /dev/null +++ b/src/test/resources/EndUserTesting/JenkinsfileDeclPreSCM @@ -0,0 +1,28 @@ + +def pattern = 'PipeDeclPreSCM' + +def triggerBranchPattern = '*/ready' + pattern + '/*' +def integrationBranch = 'master' + pattern +pipeline{ + agent none + stages { + stage ('Checkout') { + agent { + label 'master' + } + steps { + checkout scm // just reference SCM in the job executing the Pipeline script. +// sh ''' +// if [ -e ./build_failed.md ]; then +// exit 1 +// fi +// ''' + } + post { + always { + pretestedIntegrationPublisher() + } + } + } + } +} diff --git a/src/test/resources/EndUserTesting/JenkinsfileScriptedCheckoutSCM b/src/test/resources/EndUserTesting/JenkinsfileScriptedCheckoutSCM new file mode 100644 index 00000000..96c69d94 --- /dev/null +++ b/src/test/resources/EndUserTesting/JenkinsfileScriptedCheckoutSCM @@ -0,0 +1,43 @@ + +def pattern = 'PipeScriptedCheckoutSCM' + +def triggerBranchPattern = '*/ready' + pattern + '/*' +def integrationBranch = 'master' + pattern +node { + stage ('Checkout'){ + + try { + checkout([ + $class: 'GitSCM', + branches: [[name: triggerBranchPattern ]], + userRemoteConfigs: [[ + name: 'origin', + url: 'git@github.com:bicschneider/test-git-phlow-plugin.git' + ]], + extensions: [ + pretestedIntegration( + gitIntegrationStrategy: accumulated(), + integrationBranch: integrationBranch, + repoName: 'origin') + , + [ $class: 'ChangelogToBranch', + options: [compareRemote: 'origin', compareTarget: integrationBranch] + ], + [$class: 'PruneStaleBranch'] + ] + ]) + } catch(Exception e) { + echo "Leave further processing to publisher" + } +// try { +// sh ''' +// if [ -e ./build_failed.md ]; then +// exit 1 +// fi +// ''' +// } catch(Exception e) { +// currentBuild.result = 'UNSTABLE' +// } + pretestedIntegrationPublisher() + } +} diff --git a/src/test/resources/EndUserTesting/JenkinsfileScripted b/src/test/resources/EndUserTesting/JenkinsfileScriptedPreSCM similarity index 87% rename from src/test/resources/EndUserTesting/JenkinsfileScripted rename to src/test/resources/EndUserTesting/JenkinsfileScriptedPreSCM index b7943701..3eac9a42 100644 --- a/src/test/resources/EndUserTesting/JenkinsfileScripted +++ b/src/test/resources/EndUserTesting/JenkinsfileScriptedPreSCM @@ -1,5 +1,8 @@ -def triggerBranchPattern = '*/readyPipeScriptedSCM/*' -def integrationBranch = 'masterPipeScriptedSCM' + +def pattern = 'PipeScriptedSCM' + +def triggerBranchPattern = '*/ready' + pattern + '/*' +def integrationBranch = 'master' + pattern node { stage ('Checkout'){ checkout scm // just reference SCM in the job executing the Pipeline script. diff --git a/src/test/resources/EndUserTesting/createRepoForIntegrationSituations.sh b/src/test/resources/EndUserTesting/createRepoForIntegrationSituations.sh index 608b926ace5c0e5835a114930c7440ed374eeed8..0a7471c068b3e475c1332f70d51f8685a21f910a 100644 GIT binary patch literal 6618 zcmdT}ZExC05Wdey{D(P%`f?{@ps&h_>Y6sy^>nmR$w?<&Pl>S?yv1I-_PR+$`0qEf zYr|qp0;C_>ND*eev-7&oJiD}hcJeHB##}f|e1Wl>1} zbOM)gI&(h7UDh|jfrB(I&sR$ygUsLbL!TWCro+){HlBpnCoLOkJJ}!K;~!*D8yv#nvLVs6<*MZ z+)T2xqXj_Ezjb!R(kas+*J|}Dlt`r~VBRdwF$>2~zF}SvgVlmRPF}t~`C!3|7w`ce zhbNr~i^5Cb0;}V~>2#b6%!hCz2JP;J^CuHCF0u&^8FY4=_nLX(tHOfOtKmLkrzzV* zV&tVfk<33pSt+_wNO7amK__*pqKL{k0*h+Q(xX`4V7sePqyCaS3ySn%5k@>s9!8&WomNHJ zz^c(d{35iV1&#ynVhLHEByo!IhJXo=feaXE005qWz!_L55;r}=g4#vJDNk6nSZJ(F zj*(Zg8unSUNUXV>9@;UErES`l9fgK@DEYD4*CfAGxEb&wySQ$%G0BA|c`R^0BV?b& zZ?WDUJe)ThfPZ`f{{rTxx45!kFaQfb{`-w$FZ2YQgH<^wtCVC|m?7NL6aLXl64wJ0 zu0PjMqJ#*VPA`-lSj2&w`p}-^3WcIBb~j6?=a8Rfk~d!opO z))!8jmemU=kW}9ZAKSF}Dqe&Rl_BhpB}ynM%;$Pcl6)NUEO;sWm&TCqJXs# zr|Y{GAp$F^vXK|?8~CvfG&Uk)C-u!p(G|rMDr+oO0xMqAZ1_lLnhgxg;DRSb^Sy>? ziZ;JJ{qh*D5y{Bc9zMC3GqB%)bp#gNpC>67659R6{R?b*X0+?VoU$;+b*``B0q7V! z?NR}*=V>>|{(h1VAJQH?B+|ES7L5wkK(DrgS-$mi&62L4p;v1G6`<-T5*gc+VeqFA zPrwqf;;C8UdJOm0fu+AzZp&?;ivzP;fi1AKtrlg_2ognk*R63#K3Z@ZqMLxofV}`W zoQx9;g7#V=pQTE_+q1pE6;oy#-0ZyIa{kPoOo~Vuwv#Ixer`b-jfPrnfg=iJEkj+Q zL32vAS3&_FEro#}EhLxFHbjfWxpK8j*Eps*SK;o4EWxFM-?cY4+gM>1KZ?mq(m=)j zT?e?Hru{Hxe}92qXCKDtjAB}DftukO7D5sg?x9Y8)#ke(euoSI`*n$jt^JxdQU)?j zV=UOOw~(wIp$mybX-7#+4(o0nqFWuKgaSnSwmL)G#0o<0$;>j3!@Gx1`?axJ8P2;o zVWR${!r*vTHo~nQ7AdvV)rmUZ@9s~f98CN7FAO|=5MwVw{@7Lo)SkFVt9|rBQ`y_y zP-5p=Ou3^3s}!0pHcZB`rM;EqUesC3^l-n*r=XhtJ+UJ?|KSnlT<^%N$kc(2xU`h? z=tj^&60Qy$Jz__Fb%~>Nj+Z)@=`Qi2L%pBA7${M$QrJgt>1LzK_0HeDKRZAE`|V$6 zy3++JcD5}tH=b|rpQ7k5#&krcJ5?QUgx4Vs6C zqgu;P3$$TTBEKR?Qq|q9nrWw)WmKM*NwZm=wz@U8m11?#W=^a|koNp$gl@pFyY292 zHO%|lMx~BRzW{@In<2b)a)ko#EvqTgUSc(*@F00p^-WNA=jxy~vCD0Tz5v!2{?v-EeXwAHtY^pO~g@65uD^O@thOZoywH!jP7uDJ6}<>y@9>-~VUKZNUHl delta 733 zcmca*d{S#eIunn+S885%W?pexW=`tl3ru>G&oOCmyQC)PBo-x>WR|5)wr7r+JfBsP zQ^Bp+wW7o^Ie9WCi&BJwZ&@CMs}PV`kQ$s^lvz-cniA~ni^>O!gM~n5!lc1$h?H+> zPD!RyQDRIQwqi!Ro`rnUkNKn3IuTTr!!9Lv!*nLBq+XID*BJON(+8bR!f3{DVUj z5K0O;MVNTGCNC5;o6OFxFgb)PZL$fs$>gPiMw5?l_f6g}F2|@aS&?6Oav-n50X7ePY8Vs?`s z3zki`meiV@Ds&C5ELxmrbE|MMBUoaopx$I7(W}UklLN)hz{~&{8!g^HS%;rvav_hx pfalse - + masterFsExtAcc origin - + + false + @@ -39,9 +41,9 @@ false - - - + + + SUCCESS 0 @@ -67,13 +69,7 @@ fi - - BUILD FAILED - false - true - true - - + \ No newline at end of file diff --git a/src/test/resources/EndUserTesting/jobs/test-MultiBranchPipe/config.xml b/src/test/resources/EndUserTesting/jobs/test-MultiBranchPipePreSCM/config.xml similarity index 97% rename from src/test/resources/EndUserTesting/jobs/test-MultiBranchPipe/config.xml rename to src/test/resources/EndUserTesting/jobs/test-MultiBranchPipePreSCM/config.xml index 75d69d9c..350c3d6e 100644 --- a/src/test/resources/EndUserTesting/jobs/test-MultiBranchPipe/config.xml +++ b/src/test/resources/EndUserTesting/jobs/test-MultiBranchPipePreSCM/config.xml @@ -38,7 +38,7 @@ - origin/readyMultiBranchPipe/* + */readyMultiBranchPipePreSCM/* diff --git a/src/test/resources/EndUserTesting/jobs/test-PipeDeclCheckoutSCM/config.xml b/src/test/resources/EndUserTesting/jobs/test-PipeDeclCheckoutSCM/config.xml new file mode 100644 index 00000000..fc497ea0 --- /dev/null +++ b/src/test/resources/EndUserTesting/jobs/test-PipeDeclCheckoutSCM/config.xml @@ -0,0 +1,40 @@ + + + + + false + + + + + * * * * * + false + + + + + + + 2 + + + git@github.com:bicschneider/test-git-phlow-plugin.git + d1fbf0b2-2804-4bf9-b9b8-70ce3e94f952 + + + + + */readyPipeDeclCheckoutSCM/* + + + false + + + + + + JenkinsfileDeclCheckoutSCM + false + + false + \ No newline at end of file diff --git a/src/test/resources/EndUserTesting/jobs/test-PipeDeclSCM/config.xml b/src/test/resources/EndUserTesting/jobs/test-PipeDeclPreSCM/config.xml similarity index 90% rename from src/test/resources/EndUserTesting/jobs/test-PipeDeclSCM/config.xml rename to src/test/resources/EndUserTesting/jobs/test-PipeDeclPreSCM/config.xml index bd51c3a5..d1ad03e5 100644 --- a/src/test/resources/EndUserTesting/jobs/test-PipeDeclSCM/config.xml +++ b/src/test/resources/EndUserTesting/jobs/test-PipeDeclPreSCM/config.xml @@ -24,27 +24,27 @@ - */readyPipeDeclSCM/* + */readyPipeDeclPreSCM/* false - masterPipeDeclSCM + masterPipeDeclPreSCM origin origin - masterPipeDeclSCM + masterPipeDeclPreSCM - JenkinsfileDeclarative + JenkinsfileDeclPreSCM false false diff --git a/src/test/resources/EndUserTesting/jobs/test-PipeDeclScript/config.xml b/src/test/resources/EndUserTesting/jobs/test-PipeDeclScript/config.xml index 1a9da5d4..d9169422 100644 --- a/src/test/resources/EndUserTesting/jobs/test-PipeDeclScript/config.xml +++ b/src/test/resources/EndUserTesting/jobs/test-PipeDeclScript/config.xml @@ -14,7 +14,12 @@ -