On Tue, Jul 24, 2018 at 12:32 AM Enrico Olivelli <eolive...@gmail.com>
wrote:

> Il giorno mar 24 lug 2018 alle ore 09:25 Sijie Guo <guosi...@gmail.com> ha
> scritto:
>
> > I am not sure need this configuration.
> >
> > based on my understanding, if we are using `${sha1}`, jenkins will use
> > Github's tentative merge of the compare and base branches (e.g.
> > refs/pull/<pull-request-id>/merge) if the PR can be automatically merged
> or
> > the head of the pull request (e.g. refs/pull/<pull-request-id>/head) if
> > they can not be automatically merged.
> >
> > since we only merge a PR that all conflicts are resolved, that means the
> > final precommit check status are on the tentative merge  of the compare
> and
> > base branches.
> >
> > Unless I misunderstood this plugin:
> > https://github.com/jenkinsci/ghprb-plugin
>
>
>
> Maybe you are right, I am not using that plugin on the Jenkins of my
> company.
> In Bookkeeper actually we are using  ${ghprbActualCommit} and not ${sha1}.
>

Oh I see. I think I changed it to ${ghprbActualCommit} to support PRs that
run against branches.


>
> I got this idea because you (Sijie) were asking Jia to rebase a PR to
> current master in order to suppress a flaky test.
>

Good point. That's probably due to ${ghprbActualCommit}. ${sha1} probably
would address the problem.

It would be good to test if ${sha1} works a) does what you want b) can work
with branches.


> Using that "Additional behavior" of Jenkins GIT support I never had such
> problem, just re-kicking the job applies current master and picks up all
> the improvements.
>

Agreed. fast-forward merge should be helpful. I think it is no harm to
enable that.


> It is also safer to have the job run with the branch merged to current
> master, because the effect is the same as what the committer would have
> done by running tests/QA checks while using the merge script (And I never
> do it during the script because it takes too much time).
>

I think tests/QA checks can be removed from merge script since we are
blocking merges if CI doesn't pass.


>
>
> Enrico
>
>
>
> >
> >
> > On Mon, Jul 23, 2018 at 11:41 PM Enrico Olivelli <eolive...@gmail.com>
> > wrote:
> >
> > > Hi,
> > > I am surprised that in our pre-commit jobs on Jenkins we are not
> merging
> > > the Pull Request Branch with current master before running all
> > > tests/checks.
> > >
> > > Ideally we have to simulate the final status of the repository after
> > > merging the branch to "master"
> > >
> > >
> > > This can be simply achieved but adding an "Additional behaviour" on GIT
> > > configuration:
> > >
> > > Additional Behaviours - Merge Before build:
> > > Name of repository: origin
> > > Branch to merge to: master
> > > Merge strategy: default
> > > Fast forward mode: --ff
> > >
> > > This is the configuration which I am using for all my projects and it
> > works
> > > like a charm
> > >
> > > Am I missing something ?
> > > If you agree I will submit a patch to change all the jobs and add this
> > > magic trick
> > >
> > > Enrico
> > >
> >
>

Reply via email to