[Buildbot] #2155: Change git submodule handling in incremental builds

Buildbot trac trac at buildbot.net
Thu Apr 9 21:34:06 UTC 2015


#2155: Change git submodule handling in incremental builds
------------------------+---------------------
Reporter:  Tobi         |       Owner:
    Type:  enhancement  |      Status:  closed
Priority:  major        |   Milestone:  0.9.+
 Version:  master       |  Resolution:  fixed
Keywords:  git, sprint  |
------------------------+---------------------
Changes (by dustin):

 * status:  new => closed
 * resolution:   => fixed


Old description:

> Currently, master-side git source step does only "git submodule update
> --recursive" if submodules=True.
>
> Thus:
>
>  * If upstream adds a new submodule, it won't be visible to the slaves
> before they perform a full/clobber build. As far as I know, there is no
> way to trigger a full/clobber build in an incremental builder remotely:
> someone needs to go on the slave machine and remove the build directory.
>
>  * If the fetch URL of a submodule changes, the slave won't be able to
> update it anymore. This is uncommon, but may happen nevertheless (e.g.,
> if someone who's submodule you have added changes his github username
> ;-)).
>
> So I suggest to add always the "--init" argument to "git submodule
> update", so that new submodules get picked up. This will solve the first
> point.
>
> The second point can be fixed by running "git submodule sync" before "git
> submodule update".

New description:

 Currently, master-side git source step does only "git submodule update
 --recursive" if submodules=True.

 Thus:

  * If upstream adds a new submodule, it won't be visible to the slaves
 before they perform a full/clobber build. As far as I know, there is no
 way to trigger a full/clobber build in an incremental builder remotely:
 someone needs to go on the slave machine and remove the build directory.

  * If the fetch URL of a submodule changes, the slave won't be able to
 update it anymore. This is uncommon, but may happen nevertheless (e.g., if
 someone who's submodule you have added changes his github username ;-)).

 So I suggest to add always the "--init" argument to "git submodule
 update", so that new submodules get picked up. This will solve the first
 point.

 The second point can be fixed by running "git submodule sync" before "git
 submodule update".

--

--
Ticket URL: <http://trac.buildbot.net/ticket/2155#comment:7>
Buildbot <http://buildbot.net/>
Buildbot: build/test automation


More information about the bugs mailing list