Commit Graph

32 Commits

Author SHA1 Message Date
Colin Walters 13b37ddaa2 ostbuild: Allow specifying components to git fetch 2012-06-07 10:19:28 -04:00
Colin Walters 2c385c0078 ostbuild: Fix circular dependency between resolve and git-mirror
git-mirror was looking for the latest snapshot, which we don't
have until we resolve.

This leads to some code duplication.
2012-06-06 12:56:48 -04:00
Colin Walters d3b063cec0 ostbuild: Have resolve use git-mirror rather than duplicating code
This also brings us back to a sensible world of:

ostbuild resolve --fetch

Doing both fetch *and* writing out the updated revisions.
2012-05-26 12:10:51 -04:00
Colin Walters f7bbf41132 ostbuild: Add 'tag' concept to manifest, improve git mirroring
We should explicitly distinguish between the case where we have a git
branch we're following, versus an immutable tag.  In the latter case,
we can entirely avoid running 'git fetch' for it once we have it.
This is a noticeable speedup in our current scenario of pinning WebKit
to a tag.

The git mirroring code now has a --fetch-skip-secs=X option which
allows us to basically run it in a loop, without hitting remote git
repositories too often.
2012-05-24 19:54:36 -04:00
Colin Walters 32020e55c8 ostbuild: Various fixes, removal of dead code 2012-05-18 16:30:45 -04:00
Colin Walters f4aba2a339 ostbuild: Tighten build process significantly
First, "resolve" now just picks git commits.  We don't expand
config-opts and patches, nor do we generate tree contents.  This makes
the generated files *much* more human editable.

Next, fold "build-components" and "compose" into just "build".  One
never really wants to just build components.  This lets us eliminate
binary snapshots as a concept; instead we always have a combination of
source snapshot and component/ refs.
2012-05-18 16:30:45 -04:00
Colin Walters 6fbe15fc05 ostbuild: Add ostree-revision in buildroots, bin-to-src
First, for binary snapshots we need to include the exact revision of
the architecture buildroot.  To do that, introduce
"architecture-buildroots2".

Second, for bin-to-src, we'd like to allow "partial" builds.  So while
we do expand everything to source, *also* include the binary
ostree-revision.  This will allow building just one component, while
reusing the previously built binaries.
2012-05-10 14:29:23 -04:00
Colin Walters fdf05be216 ostbuild: resolve: Add --fetch-patches option
This is kind of lame, but...
2012-05-09 19:46:29 -04:00
Colin Walters 29b230107e ostbuild: Break out git-mirror from resolve
Other bits
2012-05-04 16:16:16 -04:00
Colin Walters 938f4eaf44 ostbuild: Lots more 2012-05-04 16:16:16 -04:00
Colin Walters b845e0a2bb ostbuild: Resolve takes --manifest arg 2012-05-04 16:16:16 -04:00
Colin Walters 717cec46c3 ostbuild: Major rework 2012-05-04 16:16:16 -04:00
Colin Walters 8e3a3c5667 ostbuild: Re-unify into one snapshot.json file
This is actually easier.  Now add 'ostbuild query-content' which can
extract the JSON data we stuff into builds.
2012-03-13 10:39:31 -04:00
Colin Walters 4d1d6789c2 ostbuild: Rework again, split into components.json and targets.json
The "resolve" builtin now does a lot more heavy lifting; we expand the
manifest.json, and "build" consequently is less intelligent now, more
of a low-level implementation.
2012-03-13 10:39:31 -04:00
Colin Walters addbdb619c ostbuild: Stop generating git mirror config
Nothing's using it right now and it's a little buggy.
2012-03-13 10:39:31 -04:00
Colin Walters 87e9a29f11 ostbuild: Further work on regenerating a snapshot from a compose 2012-03-13 10:39:26 -04:00
Colin Walters 07e93bd326 ostbuild: Change to name-prefix and base-prefix in manifest
This makes it clearer that we're using this as a prefix, when we
generate the snapshots.
2012-03-13 10:39:26 -04:00
Colin Walters ff81b21bcf ostbuild: Adapt "build" to newly updated expanded manifest 2012-03-13 10:39:25 -04:00
Colin Walters c71770c08c ostbuild: Write out separate arch-component snapshots 2012-03-13 10:39:25 -04:00
Colin Walters d8eebaa2d1 ostbuild: Pull patches from specified patches git repository
We need to be more formal about where we get patches from, and more
specifically what version.  Let's assume they're also stored in a git
repository that we fetch, instead of copying them from "wherever the
manifest is".

This meshes nicely with splitting between manifest.json and
snapshot.json.
2012-03-13 10:39:25 -04:00
Colin Walters d2f298488f ostbuild: Sort keys in JSON snapshot 2012-03-13 10:39:25 -04:00
Colin Walters b8e3f622f1 ostbuild: Rename build manifest to "snapshot.json"
It was confusing having two manifests.  "snapshot" matches the
jhbuild term for the same thing.
2012-03-13 10:39:24 -04:00
Colin Walters 0a195e6874 ostbuild: Make resolve fully expand config-opts, delete now-unnecessary vcsconfig
The source manifest format allows for compression, but it's more
convenient for consuming code if it's fully expanded in one place.
2012-02-22 15:17:42 -05:00
Colin Walters 820709e791 ostbuild: When doing a fetch, call fetch before trying to mirror the branch
Otherwise when the manifest specifies a branch we haven't fetched, we
error out.
2012-02-09 11:19:33 -05:00
Colin Walters df92b8d46f ostbuild: Unify mirrordir lookup code 2012-02-02 08:40:18 -05:00
Colin Walters 102f6a7f43 ostbuild: Make separate .lastfetch files for e.g. gtk2 and gtk3
This ensures we don't need to check out any git repository which is
built twice under different names.
2012-01-29 17:24:20 -05:00
Colin Walters d4470a844d ostbuild: Ensure we look in correct git repository if --fetch is specified
The mirrordir variable was bound from the previous iteration, which
was clearly broken.
2012-01-19 18:31:37 -05:00
Colin Walters 660ff7422f ostbuild: Various cleanups 2012-01-18 17:38:31 -05:00
Colin Walters 55f6998d37 ostbuild: Ensure we don't retrieve submodules from the network
This is a bit gross...we have to manually frob the submodule
URLs to point to our mirror.
2012-01-18 13:35:53 -05:00
Colin Walters 5bf4eb39e7 ostbuild: Do fetches before resolution
Otherwise we get the OLD revision in the manifest.
2012-01-16 09:57:40 -05:00
Colin Walters 610afbd2f1 ostbuild: Make --fetch a separate option 2012-01-14 16:56:31 -05:00
Colin Walters 134cddaa96 ostbuild: Make explicit resolve (and fetch steps)
Build should only work on already-downloaded sources.
2012-01-12 23:22:39 -05:00