Bug 1511 - Support versioned scm snapshots for mirroring
Summary: Support versioned scm snapshots for mirroring
Status: RESOLVED FIXED
Alias: None
Product: BitBake
Classification: Build System, Metadata & Runtime
Component: bitbake (show other bugs)
Version: unspecified
Hardware: x86 Multiple
: Medium enhancement
Target Milestone: 1.6
Assignee: Richard Purdie
QA Contact:
URL:
Whiteboard:
Depends on:
Blocks:
 
Reported: 2011-09-22 05:13 UTC by Koen Kooi
Modified: 2015-08-18 23:20 UTC (History)
9 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: ---
Verified:
Documentation change: Don't know


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Koen Kooi 2011-09-22 05:13:03 UTC
OE classic could generate both versioned and unversioned scm snapshots, OE core (or rather bitbake/fetch2) can only do unversioned and versioned per SRC_URI.

Versioned tarballs serves 2 purposes:

1) an easy way to check GPL compliance, an 'ls | grep' is enough
2) deterministic mirroring

A quick hack to have a global switch for it can be found at:

http://patches.openembedded.org/patch/11971/

From a mirror consumption perspective a workflow could be:

1) see if rev exists
2) try pulling
3) try versioned tarball
4) extract tarball into tmpdir, fetch objects into DL_DIR/git2 repo

That would stop things from being blown away. It does allow the  
versioned snapshots to differ, but they will always have the rev they  
were versioned with.

The order for mirror searches could be:

1. Specific Revision X tarball
2. generic mirror tarball
3. git clone

For more info see the thread at http://thread.gmane.org/gmane.comp.handhelds.openembedded.core/7888
Comment 1 Laszlo Papp 2013-08-29 16:58:20 UTC
Any progress on this?
Comment 2 Richard Purdie 2014-03-27 10:56:20 UTC
The git fetcher now supports a "rebaseable" flag for git repos in SRC_URI. If that is set, a tarball is generated per git revision. I believe this issue is therefore now resolved and has been for a while, not sure why the bug status never got fixed.