Commit Graph

532 Commits

Author SHA1 Message Date
Matthias Clasen 225cebd5ef core: fix a typo
ostree config had two 'set' subcommands, but no 'get'.
2012-05-12 10:50:53 -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
Adrian Perez bd6bd0eed5 ostree-pull: Fix segfault by initializing pull_data earlier
In the case of not being able to check the repository or not being able
to parse command line arguments, attributes from "pull_data" would be used
with garbage in them. This patch makes initialization of the sctructure to
happen earlier so it is safe to use in those cases.
2012-05-09 14:10:23 -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 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
Carl-Anton Ingmarsson 1de0cc238b ostbuild: further fixes to pull-components
Call self.parse_config() so that all necessary directories are parsed.

Also don't call nonexistant self.parse_active_branch() and just use
self.active_branch since it's already have been initialized.
2012-05-07 17:54:04 -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
Matthias Clasen 2ca6f04265 ostbuild: make pull-components work
This builtin did not work for me. It did not initialize self.repo,
it used the nonexisting parse_active_branch function unconditionally,
and it did not actually find the list of components in contents.json.

This commit fixes all three of these issues.
2012-05-06 14:09:28 -04:00
Matthias Clasen ae0b4ac628 Fix a typo 2012-05-06 13:57:09 -04:00
Matthias Clasen 07f67f3baf ostree: avoid a segfault
When running ostree --repo=/ostree/repo without further arguments,
we end up calling strcmp with one argument being NULL.
2012-05-06 13:56:57 -04:00
Matthias Clasen 4a03176489 checkout: Deal gracefully with bad input
I had a /ostree/gnomeos-3.4-i686-devel directory, and this caused
ostree --repo=repo checkout gnomeos-3.5-i686-devel
to segfault.
2012-05-06 09:23:49 -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 38dd179017 core: Compile again on GLib 2.28 2012-05-05 11:45:19 -04:00
Colin Walters ba1c75c61b ostbuild: Drop use of link cache, it's gone now 2012-05-05 09:54:42 -04:00
Colin Walters 9aa9397e42 ostbuild: Create deploy-qemu subcommand 2012-05-04 16:16:16 -04:00
Colin Walters a2d937c2f0 triggers: Print name of each trigger we're running 2012-05-04 16:16:16 -04:00
Adrian Perez 5835bb72b4 ostbuild: Make --shell-on-failure flag to work
Fixes an issue which would cause ostbuild to fail to spawn the
debug shell and print a traceback instead.
2012-05-04 16:16:16 -04:00
Colin Walters 0597a3f71c ostbuild: More work on deploy commands 2012-05-04 16:16:16 -04:00
Colin Walters 3a365521a8 ostbuild: Use --from-file for buildroot compose for easier debugging 2012-05-04 16:16:16 -04:00
Colin Walters 8785fefda8 ostbuild: Rename shadow-repo-init -> init 2012-05-04 16:16:16 -04:00
Colin Walters 851a9c2ce9 ostbuild: Checksum full component metadata for --skip-built
If we're using --skip-built, we really do want to rebuild if anything
changed (like the build dependency, configure arguments etc.)
2012-05-04 16:16:16 -04:00
Colin Walters 29b230107e ostbuild: Break out git-mirror from resolve
Other bits
2012-05-04 16:16:16 -04:00
Colin Walters 986cd2172b ostbuild: Use expanduser 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 a6a8e00edf ostbuild: Add tree-to-bin and bin-to-src 2012-05-04 16:16:16 -04:00
Adrian Perez 0e266d3f92 ostbuild: Fix DB saving with /tmp and builddir in different volumes
This fixes the case where /tmp resides in one volume, and the build
directory in a different one: by storing the temporary file in the
same directory as the target one, we avoid the case in which os.rename()
would cross file system boundaries.

Reviewed-by: Colin Walters <walters@verbum.org>
2012-05-04 16:16:16 -04:00
Colin Walters 717cec46c3 ostbuild: Major rework 2012-05-04 16:16:16 -04:00
Colin Walters 7280ce358d ostbuild: Show ostbuild log messages in warningfilter again 2012-05-04 16:16:16 -04:00
Colin Walters d040b61d19 core: checkout: Add --from-file option too
Easier for debugging if we don't have to redirect stdin.

Conflicts:

	src/ostree/ot-builtin-checkout.c
2012-05-04 16:15:20 -04:00
Colin Walters 0660d9e5cf core: Improve error message if we hit an unreadable file 2012-05-04 16:14:47 -04:00
Colin Walters 26c484faed core: Add a mutex to cache data structures in preparation for threading
Conflicts:

	src/libostree/ostree-repo.c
2012-05-04 16:14:28 -04:00
Colin Walters 6cdbedf4e6 core: pull-local: Be a bit more verbose, don't open objects we already have 2012-05-04 16:13:44 -04:00
Colin Walters ac38a7e1b1 core: Avoid checksumming hardlinks that point into repository
By default, when doing a commit, scan all of our loose objects and
build up a (device,inode) -> checksum hash.  Then when we're doing a
commit, if we see a file with that (device,inode) pair, we can avoid
checksumming it.
2012-05-04 16:10:30 -04:00
Colin Walters 0fc291b954 core: Drop --link-cache option, we do it by default now for archives 2012-05-04 16:10:30 -04:00
Colin Walters 27358a8de6 core: [INCOMPATIBLE CHANGE] Re-split archive content into .file and .filecontent
This will allow us to use hard links again for user-mode checkouts,
rather than the hackish link cache.  It was pretty silly anyways to
have file objects be stored with just a small metadata header
prepended, but uncompressed.

Either they should be hardlinkable, or compressed (in pack files).
2012-05-04 16:10:30 -04:00
Colin Walters 3321fa08d7 core: Handle zero-sized archives, improve fsck error message 2012-05-04 13:40:25 -04:00
Colin Walters 8d926c3e36 core: Add valgrind framework, plug various memory leaks 2012-05-04 10:04:32 -04:00
Colin Walters 7ce587da30 core: Optimize commits to raw repositories
Avoid creating a temporary intermediate file in the case where we have
the total object length available.
2012-05-04 06:15:47 -04:00
Colin Walters 67f61976f4 core: Clean up object storage API
Rather than passing xattr/file_info for all objects, change the API to
assume we're passing the defined object stream for each type.  Namely,
for OSTREE_OBJECT_TYPE_FILE, we're now giving the "archive file" data.

This significantly cleans up the code for committing to archive mode
repositories, at the cost of having to (at present) create an
intermediate temporary file when committing to raw repositories.
2012-05-03 19:59:13 -04:00
Colin Walters 99cb8a80fa daemon: Use g_thread_new() for GLib 2.32 2012-05-03 16:07:18 -04:00
Colin Walters ff3867c052 core: Increase type safety of some local alloc functions 2012-05-03 16:05:53 -04:00
Colin Walters 749bf56917 core: Fix gcc uninitialized-variable warning 2012-05-01 18:53:00 -04:00
Colin Walters d4321629f4 core: Rename local-clone to pull-local
Also change it to copy selective refs, rather than enumerating
all objects.
2012-05-01 17:44:29 -04:00
Colin Walters 8d6bdaedfe core: Fix 32/8 bit confusion in pack index listing 2012-05-01 17:44:14 -04:00
Colin Walters 233558d230 core: diff: Fast path unmodified directories 2012-04-29 12:15:12 -04:00
Colin Walters 9cb87ffc07 core: pack: Add --metadata-only argument
Useful for bare repositories.
2012-04-29 12:15:12 -04:00
Colin Walters da3b17be1e core: Fix uninitialized variable 2012-04-26 11:52:26 -04:00
Colin Walters bf3abd02cd core: local-clone: Delete leftover code assuming file objects are loose 2012-04-25 09:44:46 -04:00
Colin Walters 5947b5b145 core: Add ability for repositories to have a "parent"
This will be useful for ostbuild; a user can create their own archive
mode repository which transparently inherits objects from the
root-owned one in /ostree.
2012-04-18 23:12:34 -04:00
Adrian Perez 99142ef417 switchroot: Properly check for number of arguments
The ostree-switch-root tool expects three arguments (argc=4): new root, OS
tree target, and init(8) binary to launch inside it. Also, the error message
when not enough arguments are passed now tells about the second argument
being the target OS tree.

Reviewed-by: Colin Walters <walters@verbum.org>
2012-04-18 15:20:46 -04:00
Colin Walters 255b7d1309 core: Pull pack files individually 2012-04-16 18:17:11 -04:00
Colin Walters 3f02a1fd56 core: Cache pack indexes
This is a 10x speedup on heavy users of ostree_repo_find_object(),
such as ostree-pull.
2012-04-16 18:17:06 -04:00
Colin Walters 920cbbc242 triggers: Test for gconftool-2
This was done for the rest of the triggers.
2012-04-13 16:11:03 -04:00
Colin Walters 863384b90d ostbuild: Take advantage of link cache
This greatly speeds up construction of buildroots.
2012-04-13 16:10:40 -04:00
Colin Walters 262f426997 core: Add --link-cache option to checkout
This is a convenient way to have a lookaside directory of hard links,
which can greatly speed up checkouts.  In the future we probably want
to push this down into the repository.
2012-04-13 14:33:38 -04:00
Colin Walters 38ef75e6e0 core: Re-unify on one OSTREE_OBJECT_TYPE_FILE
Having the archived vs not distinction in the object system wasn't
useful in light of pack files.  In fact, we should probably move
towards generating a pack file per commit by default.
2012-04-11 22:27:59 -04:00
Colin Walters f15c184584 core: Clean up checksumming
Don't expose GChecksum in APIs.  Add a new stream class which allows
us to pass an input stream somewhere, but gather a checksum as it's
read.

Move some bits of the internals towards binary csums.
2012-04-11 22:04:06 -04:00
Colin Walters fa4cbc8b89 core: Drop wrapping of metadata variants 2012-04-11 22:04:05 -04:00
Colin Walters 5a82b141ae core: Split pack files into data/metadata
This will allow us to download metadata first (separately), and in the
future we can have an improved metadata pack format that compresses
heavily.
2012-04-11 22:04:05 -04:00
Colin Walters 11c0fbc738 core: Switch to 'ay' for checksums, drop versions/metadata 2012-04-11 22:04:00 -04:00
Colin Walters 188621f0b2 core: Drop 'compose' builtin
We'll just add this functionality to commit.
2012-04-11 19:54:55 -04:00
Colin Walters 0e8149eb83 core: Clean up checksum API
We want to move towards guchar * for binary checksums.
2012-04-11 19:54:55 -04:00
Colin Walters 6542b8f5c9 core: unpack: Regenerate pack index after unpacking 2012-04-11 19:54:30 -04:00
Colin Walters d63ec5c2ff core: Fix uninitialized variables 2012-04-11 19:54:30 -04:00
Colin Walters 394fe75471 core: Port builtins to local alloc macros 2012-04-09 15:57:46 -04:00
Colin Walters 8b6bf09d7a core: Port libostree to local alloc 2012-04-09 15:57:46 -04:00
Colin Walters 87f45052af core: Port libotutil to local-alloc 2012-04-09 15:57:46 -04:00
Colin Walters ca08ad6c5e core: Add macros for local allocation
This is GCC-specific, but it makes the code significantly
cleaner.
2012-04-09 15:56:28 -04:00
Colin Walters 72398ab62c core: Fix xattr API to conform to coding style 2012-04-09 15:56:27 -04:00
Colin Walters 3c39a5bfa7 core: Fix a minor memory leak 2012-04-09 14:18:00 -04:00
Colin Walters 74485bed35 core: pull: Add progress bar, allow pulling individual commits 2012-04-08 17:26:02 -04:00
Colin Walters a69e4452b4 core: checkout: Add --from-stdin option
This allows checking out many branches in one go, useful in
combination with the --union flag for ostbuild to combine a lot of
components.
2012-04-06 15:11:11 -04:00
Colin Walters 92ab820c0b ls: Add mode to print filenames as binary
This is useful to extract the file listing to another program.
2012-04-06 15:10:20 -04:00
Diego Escalante Urrelo b64cd799dc ostree-pull: GOptionEntry must be NULL terminated 2012-04-05 09:05:22 -04:00
Colin Walters bae584c64a core: Associate branches with remotes, move trigger runs into checkout
Also add --atomic-retarget option to checkout. This does the magical
symlink dance to do atomic swaps between trees.
2012-04-03 23:46:34 -04:00
Colin Walters 3f23ac156a core: Clean up stale packfiles 2012-04-03 23:46:34 -04:00
Colin Walters 8792007bc1 core: Validate structure of objects in fsck 2012-04-03 08:52:58 -04:00
Colin Walters 10b2f30165 core: Make pull slightly more verbose 2012-04-03 08:52:44 -04:00
Colin Walters 9c7a47434d core: Drop "staged" state for objects, refactor pull to split metadata/data
Previously we had the "staged" state to ensure we didn't add a commit
object without the associated dirtree, etc.  However it's
easier/better to just ensure in the pull command that we have all
referenced objects.

Also change pull to download metadata first.  This will allow adding
a progress bar later.
2012-04-02 19:52:22 -04:00
Colin Walters 56089abd43 core: Make fsck verify from commit objects
Rather than verifying every object, traverse all commit objects we
find.  This is a better check, since primarily we care about being
able to check out trees.  In the new packfile regime, this ensures
validity of packed data.

It also means we aren't checking loose objects that we most likely
don't care about.
2012-04-02 18:32:40 -04:00
Colin Walters d8173a5125 core: Move commit/dirtree traversal into library
So it can more easily be reused by other builtins.
2012-04-02 18:32:40 -04:00
Colin Walters a0b7d94cb6 core: Fix a few memory leaks 2012-04-02 18:32:40 -04:00
Colin Walters ea4d2be39c core: Return input stream for raw repositories too
This bug is more obvious when fsck is rebased on top of
ostree_repo_load_file().
2012-04-02 18:32:40 -04:00
Colin Walters b971ce0dfa core: Only depend on GLib 2.30 2012-04-02 13:42:09 -04:00
Colin Walters 80bdfd7f42 core: Add pack files
This concept is also directly inspired by git.  At present, our
implementation is quite similar, except we don't have delta
compression.
2012-03-31 11:51:47 -04:00
Colin Walters 68cce01556 core: Add stream->variant helper, as well as clear macros for ptrarray/hashtable 2012-03-31 10:32:26 -04:00
Colin Walters b221b0fdd6 core: Add a few more GIO utility functions 2012-03-31 10:32:02 -04:00
Colin Walters 70afd6011f core: Add helper functions to convert (checksum, objtype) pair to/from string 2012-03-14 09:37:00 -04:00
Colin Walters 277843f3a2 ostbuild: Add preserve_net config option
This is going to be necessary for the builder.
2012-03-13 17:06:06 -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 ee49c8098c ostbuild: Only check out source if we need to
When using --skip-built, we shouldn't do a checkout if we're not going
to build.
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 76f7bf2060 ostbuild: Switch to composing via checkouts+commit
Store the compose contents as a JSON file in the filesystem tree.
This is more flexible compared to defining "compose" as just a literal
layering of filesystem trees.  For example, we might want to run
prelink.
2012-03-13 10:39:26 -04:00
Colin Walters 5dd62af628 ostbuild: Stop using "compose" to make buildroots
It pollutes the repository with a combinatorial explosion of .dirtree
metadata files, and we don't really need to track buildroots at that
level.
2012-03-13 10:39:25 -04:00
Colin Walters 5275e8d6b2 ostbuild: Drop "commit-artifacts" builtin
It's long since dead.
2012-03-13 10:39:25 -04:00
Colin Walters c11cefb99b ostbuild: Kill "autodiscover-meta"
No longer needed.
2012-03-13 10:39:25 -04:00
Colin Walters d3059d254b ostbuild: Adapt "status" to expanded manifest 2012-03-13 10:39:25 -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 c3debe0fb6 ostbuild: 'checkout' command now also applies patches 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 6890444f28 ostbuild: Change metadata keys for artifacts
"ostbuild-name" is important to tie back in to the snapshot.
"ostbuild-revision" is shorter than ostbuild-artifact-version.
2012-03-13 10:39:25 -04:00
Colin Walters 12f2f8929d ostbuild: Copy snapshot JSON into artifact trees
This is kind of a hack...but...
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 40aedeb7a4 ostbuild: Move more intelligence into chroot-compile-one
Let's have chroot-compile-one be the core logic for composing a
buildroot, etc.  This allows us to use it as a developer tool by
checking out a tree, then doing a chroot build.
2012-03-13 10:39:24 -04:00
Colin Walters db93c43255 core: Fix "cat" crashing when it should have returned ENOENT 2012-03-08 12:10:58 -05:00
Colin Walters eb4302517f core: Fix crasher in "rev-parse" 2012-03-08 12:10:58 -05:00
Colin Walters 76bc35186e core: Add --union mode to checkout
This is another step towards ostbuild using this instead of the
"compose" builtin.
2012-03-06 11:59:06 -05:00
Colin Walters 83fb6d56e1 core: Don't call unlink() on directory if it already exists
If we fail to make a directory because it exists, we shouldn't call
unlink() on it.
2012-03-06 11:59:06 -05:00
Colin Walters 1513f29495 core: Pull diff functionality out into "diff" builtin
There's no good reason for this to be in core when it's only in use by
the diff builtin.
2012-03-06 11:59:06 -05:00
Colin Walters 4db485dd5f core: Add "subpath" option to checkout
Will be used by ostbuild to extract e.g. /runtime or /devel from
artifacts.
2012-03-06 11:59:06 -05:00
Colin Walters 1f7d776a18 core: Improve checkout API
Expose the lower-level functionality in libostree, change checkout
builtin to be a higher level driver.  This will allow us to more
easily improve the "checkout" builtin..
2012-03-06 11:59:06 -05:00
Colin Walters f44b8aca44 core: Add ostree-types.h
This allows us to have circular references between the headers.
2012-03-06 11:59:06 -05:00
Colin Walters f484665bfe libotuil: Fix missing #define in header 2012-03-06 11:59:06 -05:00
Colin Walters e4849ebd2b mainloop: Don't create poll until we need to
This slightly optimizes the case where we speculatively create a
Mainloop we might not use.
2012-03-06 11:59:06 -05:00
Colin Walters da00891688 core: Allow 'rev-parse' to resolve multiple revs 2012-03-06 11:59:06 -05:00
Colin Walters eb7c3d01a3 core: Add 'cat' builtin 2012-03-06 11:59:06 -05:00
Colin Walters 9dc86d0f5e compose: Don't print trailing (null) if we skip committing
If we skip a commit due to an idential content parent, we shouldn't
print the (null) commit checksum.
2012-03-01 16:08:27 -05:00
Colin Walters 6829ab2260 pull: Allow pulling multiple specific refs 2012-02-28 13:17:03 -05:00
Colin Walters 19bc7ff85f prune: Fix two crasher bugs 2012-02-27 09:53:44 -05:00
Colin Walters 2440338968 pull: Add ability to fetch refs/summary if no ref specified
This allows us to fetch all refs, which is useful for ostbuild where
we do want the buildroot/ refs.
2012-02-27 08:37:51 -05:00
Colin Walters b783ebc189 core: Add API to validate rev 2012-02-27 08:37:37 -05:00
Colin Walters 810a3dac86 core: Write a refs/summary file for archive repositories
This will allow us to retrieve all refs over HTTP easily.
2012-02-27 06:20:42 -05:00
Colin Walters d3a73225b0 core: Add API to enumerate all refs 2012-02-27 05:58:42 -05:00
Colin Walters 6ff07e0b3e pull: Print download URLs by default, rather than requiring -v
Let's leave verbose for more debug-type stuff.
2012-02-26 08:35:26 -05:00
Colin Walters 5329f1706b core: Further fix fallout from archive mode files
Continuing from 16c0cfe9b5, we now have
the problem that we're removing the executable bit, which obviously
breaks things when we chroot in for a build.  Fix this by masking over
our bits.
2012-02-24 17:50:44 -05:00
Colin Walters 0e5919bde1 core: Disable Soup-gnome features for pull
Otherwise we get a dconf thread that tries to talk to the session bus.
I think this comes from the proxy settings lookup.
2012-02-24 17:26:17 -05:00
Colin Walters ab58faefef core: Disable Gvfs for binaries
Otherwise
1) Lots of unnecessary shit happens and I like my straces to be clean
2) There is no dbus session bus for system daemons or when we're run
   in a root context
2012-02-24 17:24:50 -05:00
Colin Walters 51916a7002 core: Look up refs like origin/foo correctly again
We want to support both "bare" lookups where "foo" can be local, or in
any remote, as well as prefixed ones for a specific remote.

This fixes ostree-pull noticing that nothing has changed.
2012-02-24 16:08:34 -05:00
Colin Walters a417ee3fed core: Add "prune" builtin
This should be useful on clients to trim old refs.  For example,
after an upgrade the system could do:

ostree --repo=/ostree/repo prune --depth=2 gnomeos-3.4-i686-runtime

This would remote all objects that aren't in the current build and the
previous one.
2012-02-24 10:23:35 -05:00