Bug 6791 - Integrate the fetcher with a gitexternalsrc class for large team development
Summary: Integrate the fetcher with a gitexternalsrc class for large team development
Status: RESOLVED FIXED
Alias: None
Product: BitBake
Classification: Build System, Metadata & Runtime
Component: bitbake (show other bugs)
Version: unspecified
Hardware: All Multiple
: Medium enhancement
Target Milestone: 1.9
Assignee: Richard Purdie
QA Contact: Lucian Musat
URL:
Whiteboard:
Depends on:
Blocks:
 
Reported: 2014-10-02 20:42 UTC by Jason Wessel
Modified: 2015-09-11 06:40 UTC (History)
3 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: ---
Verified:
Documentation change: Yes (doc changes required)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jason Wessel 2014-10-02 20:42:24 UTC
In a large team setting is often more desirable to use an external source project.  The externalsrc.bbclass today disables all the setscene tasks and integration with the fetcher.

For a large team the CM integration with the fetcher is much more desirable for a couple of reasons.

  1) sstate resuse
  2) branch and track changes in the external git area


It would be ideal to allow a recipe to operate with either AUTOREV or a specific rev but instead of looking at the upstream to look for any of the revision information in the local archive.


The requirements for the gitexternalsrc:
  1) The fetcher looks locally instead of remotely
     ** It might be nice to optionally fetch the remote upstream in the 
        case that 
  2) If using a specific rev, it will get checked out at fetch time
     just like an upstream recipe would work
  3) Allow for a separated build area if needed or allow for an in-tree build
  4) Conditionally, allow for a cleanup rule which will actually clean up 
     using operations like "git clean -f -d"
  5) sstate works properly
  6) Allow the ls-remote to be local for computation of recipes that
     use a SRCREV in the version and or name
Comment 1 Richard Purdie 2015-05-01 14:06:23 UTC
Much of this has been implemented through devtool in the 1.8 cycle, certainly 1-4, 5 may not be possible. I'd suggest we resolve this as fixed and open specific issues against devtool and the other classes for any further development.