Commit Graph

232 Commits

Author SHA1 Message Date
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 a6e6146ab6 core: Note which artifact failed to compose 2012-01-16 09:57:24 -05:00
Colin Walters 813923943d ostbuild: Fix documentation dir (should be 'doc') 2012-01-16 09:57:00 -05:00
Colin Walters b1ff693ea3 Revert "ostbuild: Check for the Makefile in the correct directory"
I'm not sure how this made anything work...probably I was screwing
something else up.

This reverts commit aeeed8da13.
2012-01-16 09:39:13 -05:00
Colin Walters bff6baced8 ostbuild: Save build logs to a file, monitor output for warnings
This is bringing us back closer to metabuild.
2012-01-16 09:27:46 -05:00
Colin Walters d5def94b54 ostbuild: Clean up artifact splitting, put non-symlink .so in runtime
We were breaking nss which just installs libnss3.so as the real
shared library.
2012-01-15 21:45:12 -05:00
Colin Walters e34b90453c gnomeos: Building gdm 2012-01-15 17:06:18 -05:00
Colin Walters ef7f12f31b ostbuild: Run triggers after constructing build root 2012-01-15 17:05:23 -05:00
Colin Walters ebe35dbefe core: Ensure we delete duplicate files in a transaction
If multiple files have the same hash, we need to ensure we're not
overwriting other tempfiles in the same transaction.  Instead
just delete them, since we know they're in the repo.
2012-01-15 12:25:52 -05:00
Colin Walters 9910c0ddf4 core: Create a directory for each transaction
This helps ensure that we can more easily identify stale tempfiles
left over if we crash in the middle of a transaction.
2012-01-15 11:03:01 -05:00
Colin Walters 610afbd2f1 ostbuild: Make --fetch a separate option 2012-01-14 16:56:31 -05:00
Colin Walters aeeed8da13 ostbuild: Check for the Makefile in the correct directory 2012-01-14 16:54:00 -05:00
Colin Walters 40226c2769 core: Move triggers into separate binary: ostree-run-triggers
I'm trying to keep ostree as being closer to just being the versioning
filesystem, so let's split out the triggers into a different binary
(although still namespaced ostree-).
2012-01-13 15:08:27 -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
Colin Walters b44afdef23 ostbuild: Lots of stuff
* Only create one build commit which contains multiple artifact trees,
  rather than one per artifact.  This is atomic.  We can use the new
  compose syntax like foo:/devel to slice out the /devel tree.
* Create the minimal buildroot for each component by composing the
  previous components in the build order, instead of continually
  updating one big tree.
* Ensure the artifact builder gets empty directories in /etc
2012-01-12 10:48:11 -05:00
Colin Walters ef2a16525e ostbuild: Optionally log start of commands we want output from too
compose is slow, but we also want output.
2012-01-11 14:33:48 -05:00
Colin Walters 1f398e001b ostbuild: Import odict from gobject-introspection 2012-01-11 14:32:37 -05:00
Colin Walters 62821024b9 core: While walking mtrees during commit, ensure the referenced path is resolved
This gives us a clean error instead of an assertion.
2012-01-11 13:42:59 -05:00
Colin Walters e693d2cfe5 core: Error out on an empty compose 2012-01-11 13:42:37 -05:00
Colin Walters 0044ff133a core: Add from-file argument to compose
We don't want to have to pass a million arguments.
2012-01-10 18:55:00 -05:00
Colin Walters 46d09b1501 compile-one: Fix build of modules that don't support srcdir != builddir
We need to run configure and make/make install in the _build
directory.
2012-01-09 19:56:03 -05:00
Colin Walters 492f0777f2 ostbuild: Make --debug-shell not exit immediately
We need to keep stdin open.
2012-01-09 11:10:10 -05:00
Colin Walters cddd58fbd8 ostbuild: Allow specifying no components to mean "all" 2012-01-08 14:20:52 -05:00
Colin Walters 888d33c943 core: Make diff accept one argument too to mean "foo^ foo" 2012-01-08 14:20:07 -05:00
Colin Walters e21b181b4a ostbuild: Allow specifying components to build on the command line 2012-01-07 11:47:51 -05:00
Colin Walters 8d935f46c4 core: Make local-clone handle nested refs/heads directories 2012-01-07 11:26:12 -05:00
Colin Walters 788dfe89e1 core: Ensure we abort transaction if we fail in the middle
Otherwise we could leave a lot of temp files lying around.
2012-01-07 11:11:51 -05:00
Colin Walters a2fdbcbe63 ostbuild: Switch to JSON metadata, various other fixes 2012-01-06 20:02:46 -05:00
Colin Walters 732b37698e ostbuild: Don't fail if trying to rename() across a bind mount 2012-01-06 14:07:20 -05:00
Colin Walters 5b2a5d1dd1 ostbuild: Make use of --recompose 2012-01-06 14:07:12 -05:00
Colin Walters 95d0e94370 core: Make --recompose skip passed arguments if they were already composed
This allows us to do "--recompose -b foo bar baz" and add bar and baz
iff they weren't already there.
2012-01-06 14:04:39 -05:00
Colin Walters d72d6c5fb1 ostbuild: Use split out linux-user-chroot binary
This way other meta-build projects could use it; mainly mock/pbuilder.

Also I don't have to keep running chown root:root; chmod u+s in a
separate root terminal after every install.
2012-01-06 11:41:27 -05:00
Colin Walters fea117cd5e gnomeos: Move everything into JSON, start plowing through X.org
Also:

* Stop generating tarballs for artifacts, use plain directories
* Commit artifacts as uid/gid 0, with no xattrs

Other misc stuff
2012-01-05 23:05:49 -05:00
Colin Walters 5119cbdb7c core: Add --no-xattrs option for commit
Will be used by ostbuild.
2012-01-05 19:10:26 -05:00
Colin Walters 5c3614d644 core: Error out cleanly if user attempts to commit an empty tree 2012-01-05 18:27:21 -05:00
Colin Walters 5b0084994e gnomeos: We can now build gobject-introspection 2012-01-03 19:09:12 -05:00
Colin Walters 1ae5149a3d core: Make compose skip commit if tree is identical
This was a new option for commit, but we always want to do it
for a compose.
2011-12-27 10:32:28 -05:00
Colin Walters 31ba50b809 core: Add --print-metadata-key option for show
Useful for tools to extract simple metadata.
2011-12-26 22:09:14 -05:00
Colin Walters a080ff0181 ostbuild: Port chroot-compile-one to ostbuild executor 2011-12-23 12:15:57 -05:00
Colin Walters be117edee4 ostbuild: Port commit-artifacts to ostbuild executor 2011-12-23 10:57:54 -05:00
Colin Walters 853dda39e7 ostbuild: Move autodiscover-meta to ostbuild executor 2011-12-23 10:48:57 -05:00
Colin Walters 122b31ed3b ostbuild: Make new 'ostbuild' main entry point, and compile-one a subcommand
The collection of Python scripts here have gotten to the point where
we need to share code.  Start refactoring things so that we have one
main command which imports subcommands as libraries.
2011-12-23 10:40:27 -05:00
Colin Walters 633477806c ostbuild: Propagate buildroot version, finish add-artifacts
We need to track what buildroot each artifact was created in.
2011-12-23 07:46:08 -05:00
Colin Walters 1687f3efa8 core: Add --add-metadata-string option for commit
A convenience function for the common case of slapping a string into
the metadata.
2011-12-23 07:17:46 -05:00
Colin Walters 3e59cc1305 core: Add --tar-autocreate-parents option for commit
The tar files we're making of artifacts don't include parent
directories.  Now we could change the builder to make them, but we can
also just autocreate them on import.  Mode 0755 with no xattrs seems
OK here.
2011-12-23 06:49:04 -05:00
Colin Walters 4bbc99fb1d core: Fix build with libarchive disabled 2011-12-22 19:52:30 -05:00
Colin Walters dab4611263 core: Add --skip-if-unchanged option for commit
There's not much point for OS builds to have "empty" commits.
2011-12-22 18:47:30 -05:00
Colin Walters d8ea31e24e core: Add some more sanity checks to pull when parsing metadata 2011-12-22 17:00:58 -05:00
Colin Walters 786ce3b560 core: Preemptively error out on paths longer than PATH_MAX
Just noticed this while thinking like an attacker.
2011-12-22 16:50:01 -05:00
Colin Walters 3292dcb6d6 core: Allow / in ref names like git does
Using / is nice basically.
2011-12-22 15:59:47 -05:00