Commit Graph
100 Commits
Author SHA1 Message Date
Colin Walters a98ca05676 pull: Fix use-after-free in async fetcher
Refcount the pending data structure.
2012-06-28 15:06:18 -04:00
Colin Walters 31b439b84c Release 2012.8 2012-06-27 22:38:12 -04:00
Colin Walters 6bfbb8b239 build: Use LDADD libraries to link with, not LDFLAGS
This should fix the build with embedded glib.
2012-06-27 22:38:12 -04:00
Colin Walters 667c3bcb10 Make more compiler warnings into errors
In particular, I want -Werror=format=2 to catch format string bugs.
2012-06-27 22:26:16 -04:00
Colin Walters d596615bab main: Fix a format string error 2012-06-27 22:26:16 -04:00
Colin Walters 671303d1ab embedded deps: Properly quote/handle PATH/LDFLAGS 2012-06-27 20:16:36 -04:00
Colin Walters a7b917c856 core: Check out asynchronously
This can be a large performance win in certain circumstances:

 * Cold buffer cache (we don't block the whole process)
 * Requiring a copy instead of hardlink
2012-06-21 18:05:13 -04:00
Colin Walters eba0ff75cc tests: Just use OT_TESTS_DEBUG to say "save test data" 2012-06-21 11:42:45 -04:00
Colin Walters 7cce6e5ba1 pull: Properly propagate errors 2012-06-20 15:42:41 -04:00
Colin Walters 0cb4fe66f8 build: Fix syntax error in non-embedded build case 2012-06-20 15:42:19 -04:00
Colin Walters 33ee6e2fa4 build: Various bugfixes for embedded-dependencies 2012-06-20 10:37:36 -04:00
Colin Walters ee98a0b4f7 core: Don't silence output of ostree-run-triggers
We want to see which triggers are being run by default.
2012-06-19 16:14:31 -04:00
Colin Walters 4d59080f46 triggers: Quiet GConf trigger
The default is just way, way too verbose.
2012-06-19 15:03:16 -04:00
Colin Walters 10bf223f0a Support building with embedded libsoup 2012-06-14 19:34:28 -04:00
Colin Walters 78b0d99238 Support building with embedded glib 2012-06-14 13:45:59 -04:00
Colin Walters f3c15a9ba7 triggers: Fix previous commit 2012-06-13 22:09:24 -04:00
Colin Walters 35a80c8e39 core: Fall back to copying checkouts on EMLINK/EXDEV
The previous fix to just ignore symbolic links for hard linking isn't
really good enough, since it can happen for empty files too.

Since this is an optimization, when we get EMLINK, let's instead just
fall back to copying.  This also applies to EXDEV.
2012-06-12 14:50:41 -04:00
Colin Walters 270dc05176 ostbuild: Move to gnome-ostree module
Since we want to keep "ostree" buildsystem-independent, let's move
ostbuild out into the gnome-ostree module.

http://git.gnome.org/browse/gnome-ostree/commit/?id=04ba1926e33b442af1e357460e4415d4c0311e87
2012-06-08 19:01:25 -04:00
Colin Walters 6aaa2089f0 ostbuild: Fix previous commit (this should have been amended) 2012-06-08 16:51:51 -04:00
Colin Walters f4b6d88254 ostbuild: Fix -k option to git-mirror 2012-06-08 16:47:23 -04:00
Colin Walters 13b37ddaa2 ostbuild: Allow specifying components to git fetch 2012-06-07 10:19:28 -04:00
Colin Walters 2df5294ce8 build: Actually, we need bleeding edge libsoup
The stable version compiles, but just hangs =/
2012-06-06 22:12:51 -04:00
Colin Walters a496c464b9 build: Bump libsoup dependency 2012-06-06 22:06:30 -04:00
Colin Walters 210fbc3daf ostbuild: Add rootdir argument to deploy-qemu 2012-06-06 15:43:42 -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 a14ff0aeab core: Fix mkdtemp invocation 2012-06-06 10:03:15 -04:00
Colin Walters c436f8ac61 ostbuild: Add -k option to git-mirror
libwacom's sourceforge git server was down...
2012-06-05 22:55:53 -04:00
Colin Walters e485bace01 pull: Download and checksum asynchronously
This is quite a noticeable speedup when downloading loose objects.
2012-06-05 22:38:17 -04:00
Colin Walters df54408e5d core: Fix memory leak 2012-06-05 22:32:03 -04:00
Colin Walters 8f2dda3e25 core: Just require libsoup, not libsoup-gnome 2012-05-31 10:25:41 -04:00
Colin Walters 58f6537c6a TODO: Update 2012-05-31 10:10:13 -04:00
Colin Walters cbd4ade053 core: Switch to using mkdtemp() so we only depend on GLib 2.28
We claim to build against 2.28, let's actually make it work.
2012-05-29 22:34:11 -04:00
Colin Walters f438d9aaa6 core: Drop some dead temporary file code 2012-05-29 22:09:31 -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 9582effb8d core: Don't checkout symbolic links via hardlink
Doing so can easily get us up to the maximum ext4 hardlink count.
2012-05-26 11:55:12 -04:00
Colin Walters 1ef6bb0ef6 ostbuild: add --diffstat option for source-diff 2012-05-25 15:01:41 -04:00
Colin Walters 5a0af44131 core: use GLIB_VERSION_MAX_ALLOWED=2.28
We want to build/run even on relatively old OSes, so that we can
be used to bootstrap and maintain newer builds.
2012-05-25 15:00:45 -04:00
Colin Walters 9c27f1de99 core: Remove leftover debug print 2012-05-25 09:55:10 -04:00
Colin Walters 14a597131b Release 2012.7 2012-05-24 21:17:43 -04:00
Colin Walters 88b3440eef core: ostree-pull: Add --depth option
This is useful for getting say the last 10 builds.
2012-05-24 20:58:20 -04:00
Colin Walters fb71519cd6 core: Attempt direct link() and fallback on EEXIST
Rather than always doing:

1) make temporary link
2) unlink() target
3) rename()

Just try making the link, and only do the second two if the file
already exists.  This reduces system call traffic a lot.
2012-05-24 20:14: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 0d1ba45c73 ostbuild: git-mirror: Also fetch patches git 2012-05-24 18:11:06 -04:00
Colin Walters 1a5ea54aff core: Make OstreeRepo struct private 2012-05-23 18:08:52 -04:00
Colin Walters 6c006815ce ostbuild: Fix --debug-shell option 2012-05-23 18:02:08 -04:00
Colin Walters 893774aab5 core: Make device/inode loose object cache work for parent repos too
Otherwise ostbuild suddenly becomes significantly slower when using a
shadow repo.
2012-05-23 07:48:16 -04:00
Colin Walters b45a0803fe ostbuild: Few more misc fixes 2012-05-22 08:26:17 -04:00
Colin Walters 95f66e1157 ostbuild: Fix typos in component lookup path 2012-05-21 18:41:59 -04:00
Colin Walters 9bd36f9bff ostbuild: Enhance source-diff with --log and --logp options 2012-05-18 20:25:02 -04:00
Colin Walters 6d59b4077c ostbuild: Add source-diff builtin
OMG OMG OMG
2012-05-18 20:12:35 -04:00
Colin Walters 58d28ad5a6 core: Rearrange code for clarity (doesn't actually fix leaks) 2012-05-18 20:12:17 -04:00
Colin Walters 790d2757f6 ostbuild: Drop dead branch-prefix and pull-components
And other various tweaks.
2012-05-18 16:30:45 -04:00
Colin Walters 32020e55c8 ostbuild: Various fixes, removal of dead code 2012-05-18 16:30:45 -04:00
Colin Walters ecfd9b2cf3 ostbuild: Remove /var from components
We expect them to create on demand.
2012-05-18 16:30:45 -04:00
Colin Walters a3246d590e ostbuild: Fix git-mirror 2012-05-18 16:30:45 -04:00
Colin Walters bcab6748a5 ostbuild: Some work on qemu deployment 2012-05-18 16:30:45 -04:00
Colin Walters 3a20f6a913 ostadmin: Update for new trees/ location of trees 2012-05-18 16:30:45 -04:00
Colin Walters 6e2efc6134 ostbuild: Add import-tree
This is the new workflow:

$ ostbuild import-tree wip-gnome-menus-3.6
$ $EDITOR ~/build/ostbuild/snapshots/wip-gnome-menus-3.6-2012.1-abcd.json
$ ostbuild build
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 92244c80cc ostbuild: More work on partial builds 2012-05-18 16:30:44 -04:00
Colin Walters eae69513a7 ostbuild: Make partial builds work
If we have component-revisions in our source+binary snapshot, then
we can skip them.
2012-05-18 16:30:44 -04:00
Colin Walters 5d0744ea29 ostbuild: Write out related objects on composes 2012-05-18 16:30:44 -04:00
Colin Walters 829a760b56 ostbuild: Minor fixes 2012-05-18 16:30:44 -04:00
Colin Walters 65165ff1df ostbuild: Make binary snapshots an extension of source
This significantly simplifies things; we no longer need to retrieve
individual components via 'pull-components', etc.
2012-05-18 16:30:44 -04:00
Colin Walters c18817eca1 tests: Tweak valgrind suppression 2012-05-18 16:30:44 -04:00
Colin Walters 4f95106cda core: Prefer packed metadata 2012-05-18 16:30:44 -04:00
Colin Walters f95090095e core: Map metadata from repository as trusted
ot_util_variant_map() assumed untrusted; add a boolean, and use it for
the repository internals.
2012-05-18 16:30:44 -04:00
Colin Walters cf53ed5cef core: Limit recursion during traversal
The related objects commit introduced OSTREE_MAX_RECURSION; use it.
2012-05-18 16:30:44 -04:00
Colin Walters cd38cb1489 core: Add write-refs builtin
This will be used by import-tree to pipe refs to write.
2012-05-14 21:58:22 -04:00
Colin Walters d7a15b381e core: Allow adding related objects to commits
This will be used to store the set of components.
2012-05-14 21:58:22 -04:00
Colin Walters 50cc2356f4 core: Really fix saving variants with REPLACE_DESTINATION 2012-05-14 20:49:00 -04:00
Colin Walters 6d9de91672 core: Make argument parsing more robust against "lt-ostree" name
When running uninstalled, we were parsing our argv[0] incorrectly.
2012-05-14 11:31:53 -04:00
Colin Walters 102180c5f2 core: Replace pack superindex via rename() rather than truncating
This helps allow cloning repositories via "cp -al".
2012-05-14 11:22:18 -04:00
Colin Walters 2fbf864251 core: Clarify error message 2012-05-14 11:22:18 -04:00
Colin Walters 4fa14eb712 core: Don't look in packs if we found loose object
Unless the caller wants us to; which at present none do, but let's be
forward looking and add an option.
2012-05-12 10:46:25 -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 d1b23f0807 ostbuild: Fix pull-components
We need to pull the actual commits, not the refs.
2012-05-10 10:30:02 -04:00
Colin Walters 488ce33795 pull: Use API to stage files with length
Not doing so at the moment triggers a bug in the staging path, and
it's more efficient anyways.
2012-05-10 10:29:26 -04:00
Colin Walters c6df0b0ae0 pull: Add --prefer-loose option
This is a hack...
2012-05-10 09:54:56 -04:00
Colin Walters efc2810f02 core: unpack: Add --keep-packs option
Matches the pack --keep-all-loose.
2012-05-10 09:47:24 -04:00
Colin Walters a04ef7ba10 core: Fix ostree-pull to be able to look up remotes in parent repo
We should probably add a generalized inheritance mechanism.
2012-05-10 08:50:37 -04:00
Colin Walters f33a2f9a08 core: pack: Keep loose objects which are referenced externally
By default, don't delete loose objects which have hard links.  This
has the natural semantics that if you delete all the checkouts, you
probably want it packed.

Conversely, if it has a hard link, we do want further checkouts to
share storage, even if we pack in between them.
2012-05-09 23:20:36 -04:00
Colin Walters d8b97316d9 core: unpack: Actually delete no-longer-needed pack files 2012-05-09 23:19:54 -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 7149530976 ostbuild: Allow using dirty-git: for patches too 2012-05-09 19:40:24 -04:00
Colin Walters 92891e60ca ostbuild: Use .lastfetch file per branch
This way we don't try to update gtk+ twice, once for gtk master and
once for gtk-2-22.
2012-05-09 19:36:46 -04:00
Colin Walters cf0c2016de ostree.doap: Update 2012-05-09 14:23:10 -04:00
Colin Walters d9bc7e0acd ostbuild: build-components: Ensure specifying components forces rebuild 2012-05-09 12:46:04 -04:00
Colin Walters d2da92be07 Move gnomeos/ to "gnome-ostree" module
Now that we're hopefully going to be changing the format less.  The
layering here is now more clear, rather than having things entangled.
2012-05-09 09:29:27 -04:00
Colin Walters cefbe90281 Release 2012.6 2012-05-08 11:59:59 -04:00
Colin Walters d43e8cf0b6 build: A few dist fixes so a tarball build works 2012-05-08 11:59:59 -04:00
Colin Walters dfbf1f7ac6 ostadmin: Use /ostree for current working directory of checkouts
Otherwise we put them in the wrong place.
2012-05-08 10:21:38 -04:00
Colin Walters 9179d1b27a ostadmin: Make a /ostree/current symbolic link 2012-05-08 09:14:03 -04:00
Colin Walters 18b6f5fd0c ostadmin: Initial code 2012-05-07 20:43:03 -04:00
Colin Walters f487500e50 ostbuild: Default to (previous) --skip-built
For components specified on the command line, we now force a rebuild.
There's also a new option to skip if the git revision matches, but
metadata changed (useful for now to avoid cascading builds if you know
you don't need it).
2012-05-07 17:51:12 -04:00
Colin Walters 572de2dd62 NetworkManager: Fix permissions on config file
https://mail.gnome.org/archives/ostree-list/2012-May/msg00008.html
2012-05-07 14:55:57 -04:00
Colin Walters e4bc1494af Release 2012.5 2012-05-05 16:03:53 -04:00
Colin Walters c0e73c9fa0 core: pack: Fix calculation of size of pack objects
In archive mode, due to the previous change, we're now only
looking at metadata size, which is clearly wrong.
2012-05-05 16:00:53 -04:00
Colin Walters a0ad28c16c core: pull: Fix regression from memory leak fixes 2012-05-05 14:59:14 -04:00
Colin Walters 22ab052458 gnomeos: Delete some files that are now on the wiki 2012-05-05 12:58:56 -04:00