summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Release 2014.6v2014.106Colin Walters2014-09-081-1/+1
|
* build: We also work OK with LZMA 5.0Vincent Batts2014-09-081-1/+1
| | | | This is the version that's in Slackware at the moment at least.
* build: Unify CPPFLAGS settingsColin Walters2014-09-083-3/+3
| | | | | | | The libostree core uses SYSCONFDIR now, so we should ensure it's used consistently. Someone else was seeing SYSCONFDIR not being defined while compiling with a newer automake version, which may process CPPFLAGS more precisely.
* doc: Add a man page for summary commandColin Walters2014-09-073-1/+90
|
* Drop g_type_init() call now that we depend on GLib 2.36Colin Walters2014-09-071-2/+0
|
* Add repository "summary" file and metalink supportColin Walters2014-09-0317-27/+1352
| | | | | | | | | | | | | | | | | | | | | | | For Fedora and potentially other distributions which use globally distributed mirrors, metalink is a popular solution to redirect clients to a dynamic set of mirrors. In order to make metalink work though, it needs *one* file which can be checksummed. (Well, potentially we could explode all refs into the metalink.xml, but that would be a lot more invasive, and a bit weird as we'd end up checksumming the checksum file). This commit adds a new command: $ ostree summary -u To regenerate the summary file. Can only be run by one process at a time. After that's done, the metalink can be generated based on it, and the client fetch code will parse and load it. https://bugzilla.gnome.org/show_bug.cgi?id=729585
* Bump GIO dependency to 2.38 for GTaskColin Walters2014-08-272-2/+2
| | | | | | I'd like to use GTask, so bump the dependency. https://bugzilla.gnome.org/show_bug.cgi?id=729585
* fetcher: Close request body on error pathsColin Walters2014-08-271-0/+2
| | | | | | | | | Otherwise, we're potentially holding up subsequent requests. I was hitting this when testing the metalink code, where we want to continue doing more fetches after hitting a 404. https://bugzilla.gnome.org/show_bug.cgi?id=729585
* pull: Fix use-after-freeAnne LoVerso2014-08-211-7/+6
| | | | The strchr() was pointing into a string we were freeing.
* repo-pull: Allow pulling only one directoryAnne LoVerso2014-08-2010-16/+264
| | | | | | | | | Changes the pull API to allow pulling only a single directory instead of the whole deployment. This option is utilized by the check-diff option in rpm-ostree. Add a new state directory to hold <checksum>.commitpartial files, so we know that we've only downloaded partial state.
* sysroot: Add precondition that load() has been called for some API callsColin Walters2014-08-151-1/+7
| | | | | We require the caller to invoke load() at the moment to do most things.
* deploy: Also honor multiply-specified kernel args with existing configColin Walters2014-08-032-1/+16
| | | | | | | | | If we deployed a new tree inside an existing OS, inheriting kernel args, we need to use append() instead of replace() to avoid collapsing multiply specified kernel arguments like console=/dev/foo console=/dev/bar. Reported-by: Dusty Mabe <dusty@dustymabe.com>
* packaging: Make the ostree rpm own and create /etc/ostree/remotes.d/Dusty Mabe2014-08-031-0/+1
|
* deploy: Propertly append multiple kernel arguments with --karg-proc-cmdlineColin Walters2014-08-031-1/+1
| | | | | | | | | We want to allow multiply specified arguments, as it's useful for things like console= and rd.lvm.lv. See: https://bugzilla.gnome.org/show_bug.cgi?id=721136 Reported-by: Dusty Mabe <dustymabe@gmail.com>
* doap category infrastructureOlav Vitters2014-07-311-0/+1
|
* core: Support a per-remote "proxy" configuration optionColin Walters2014-07-284-10/+37
| | | | | | We don't want to have to force people to set it in the environment. https://bugzilla.gnome.org/show_bug.cgi?id=733734
* Display bytes/second during pullJames Antill2014-07-283-5/+19
| | | | | Add start time to the AsyncProgress object, use it in the common progress.
* pull: override max-conns-per-host to 8, for faster downloadsJames Antill2014-07-251-0/+8
| | | | Modern web browsers are all converging on 6 or 8. Let's match that.
* refs: Don't try searching for input strings that can't be objectsColin Walters2014-07-231-0/+8
| | | | | | | | | | I noticed OSTree was a bit slower, did some investigation and saw we were enumerating all objects for things like $ ostree rev-parse blah Since "blah" can never be an object (because of the 'l' and 'h'), just return no matches.
* pull-local: Write detached metadata into the correct repositoryColin Walters2014-07-222-1/+3
| | | | | | | | We want to write to the dest repo, not src. Noticed while reviewing this code for some other bug. https://bugzilla.gnome.org/show_bug.cgi?id=733579
* repofile: Avoid segfault if querying child in non-directoryColin Walters2014-07-212-0/+14
| | | | | | | | | | | | The user might "ostree ls /usr/bin/bash/blah", which previously would segfault. A somewhat related future enhancement here would be for "ostree ls" to follow symbolic links. Reported-by: Dusty Mabe <dustymabe@gmail.com> https://bugzilla.gnome.org/show_bug.cgi?id=733476
* core: Do enumerate ff/ objects as wellColin Walters2014-07-212-1/+14
| | | | | | An embarassing off-by-one here. I noticed we weren't pruning them. https://bugzilla.gnome.org/show_bug.cgi?id=733458
* core: Do enumerate content objects in archive-z2 repositoriesColin Walters2014-07-211-1/+4
| | | | | | | | | | Prune has worked fine on bare repositories for some time, but now that I finally try to delete data on the server side, I notice we weren't actually enumerating content objects =/ That caused them to not be pruned. https://bugzilla.gnome.org/show_bug.cgi?id=733458
* core: Unify object deletion code with pruneColin Walters2014-07-202-22/+26
| | | | | | | | | | The prune API duplicated logic to delete objects, and furthermore the core API to delete an object didn't clean up detached metadata. Fix the duplication by doing the obvious thing: prune should call _delete. https://bugzilla.gnome.org/show_bug.cgi?id=733452
* Fix typo in previous commitColin Walters2014-07-181-1/+1
|
* ostree-repo-resolve-rev: Add function to accept a partial checksumAnne LoVerso2014-07-184-17/+171
| | | | | | | | | | | | | | | | | | | | | | | | | This patch adds a function that will parse a partial checksum when resolving a refspec. If the inputted refspec matches a truncated existing checksum, it will return that checksum to be parsed. If multiple truncated checksums match the partial refspec, it is not unique and will return false. This addition is inspired by the same functionality in Docker, which allows a user to reference a specific commit without typing the entire checksum. partial checksums: Add function to abstract comparison This modifies the list_objects and list_objects_at functions to take an additional argument for the string that a commit starts with. If this string arg is not null, it will only list commit objects beginning with that string. This allows for a new function ostree_repo_list_commit_objects_starting_with to pass a partial string and return a list of all matching commits. This improves on the previous strategy of listing refs because it will list all commit objects, even ones in past history. This update also includes bugfixes on error handling and string comparison, and changes the output structure of resolve_partial_checksum. The new strcuture will no longer return FALSE without error. Also, the hashtable foreach now uses iter. Also includes modified test file
* core: Use ostree_commit_get_parent in ostree_repo_resolve_revJames Antill2014-07-181-4/+1
|
* ostree-remount: mount a tmpfs on /var if necessary so /var is read-writeOwen W. Taylor2014-07-091-9/+44
| | | | | | | | | | | | | | /var needs to be read-write for a functioning system. Various systemd services will fail to start if /var is read-only. After we remount /var (or if we skip remounting /var because / is read-only), if /var is still readonly, mount a tmpfs file system on /var. While this isn't strictly part of ostree, keeping it here makes sense because it keeps twiddling around with the /var mount in one place for easier coordination and maintenance. This will likely need updating if systemd gains better support for a readonly root filesystem. https://bugzilla.gnome.org/show_bug.cgi?id=732979
* pull: Only set ca path if we actually have a setting for itColin Walters2014-07-011-5/+8
| | | | | | | Otherwise, GTlsFileDatabase ends up accepting NULL for anchors, and then we don't trust any CAs at all. https://bugzilla.gnome.org/show_bug.cgi?id=726256
* core: add "tls-ca-path" optionColin Walters2014-06-274-0/+34
| | | | | | | | | | | | | | Some organizations will want to use private Certificate Authorities to serve content to their clients. While it's possible to add the CA to the system-wide CA store, that has two drawbacks: 1) Compromise of that cert means it can be used for other web traffic 2) All of ca-certificates is trusted This patch allows a much stronger scenario where *only* the CAs in tls-ca-path are used for verification from the given repository. https://bugzilla.gnome.org/show_bug.cgi?id=726256
* Add --enable-libsoup-client-certsColin Walters2014-06-261-0/+8
| | | | | The goal of this is to hard-fail if the API isn't present in the buildroot, as some downstreams may explicitly require it.
* [trivial]: Update .gitignoreColin Walters2014-06-242-0/+4
|
* manpage: Add separate manpages for each commandAnne LoVerso2014-06-2335-290/+3311
| | | | | | | | | | Using docker as a model, this update creates separate manpages for each OSTree command, such that the main manpage is not cluttered and the separate pages can provide more in-depth detail and exanples that might be useful to a user. Each page includes synopsis, description, example, and a list of options if needd. This update also alphabetizes the usage error output for ostree and ostree admin so that it matches the list on the manpage.
* [staticanalysis]: Delete an unused variableColin Walters2014-06-211-2/+1
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=732020
* [staticanalysis]: Fix in_status_lineColin Walters2014-06-211-6/+7
| | | | | | | We need to end the status line *after* we've done a pull, as ostree admin upgrade does. Also add the correct in_status_line assignment. https://bugzilla.gnome.org/show_bug.cgi?id=732020
* [staticanalysis]: Fix some dead codeColin Walters2014-06-212-9/+0
| | | | | | | One was an unused variable, the other is actually dead because we can't have mfile != NULL. https://bugzilla.gnome.org/show_bug.cgi?id=732020
* [staticanalysis]: Actually check errors on splice() of objectsColin Walters2014-06-211-1/+1
| | | | | | | | | | | We were using unsigned size when we should have been using signed, this means we basically weren't checking for errors on write...ouch. Luckily if we e.g. hit ENOSPC during a pull, the checksums wouldn't match and we'd return an error anyways. However when writing an object, we'd end up silently ignoring it =/ https://bugzilla.gnome.org/show_bug.cgi?id=732020
* [staticanalysis]: Add assertion to pacify analyzerColin Walters2014-06-211-2/+4
| | | | | | This condition can't actually be hit, let's hint that's the case. https://bugzilla.gnome.org/show_bug.cgi?id=732020
* [staticanalysis]: Add missing va_end()Colin Walters2014-06-211-0/+2
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=732020
* [staticanalysis]: Fix two uses of uninitialized variablesColin Walters2014-06-212-2/+2
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=732020
* packaging: BR e2pColin Walters2014-06-211-1/+2
|
* remote: Minor argument parsing cleanupColin Walters2014-06-211-1/+3
| | | | | | Only access relevant portion of argv after we've verified argc. https://bugzilla.gnome.org/show_bug.cgi?id=731984
* remote: Fix regression in previous commit wrt adding branchesColin Walters2014-06-211-2/+1
| | | | | | branches is always NULL at that point, we want to look at argc. https://bugzilla.gnome.org/show_bug.cgi?id=731984
* libostree: Add ostree_repo_remote_add() API, port "ostree remote add"Colin Walters2014-06-203-90/+163
| | | | | | | | At least one external tool is using the API, and wants to add a remote, but all of the logic right now is in the tool. Move it to the library. https://bugzilla.gnome.org/show_bug.cgi?id=731984
* tests: Add a test for an empty /etc directory gaining contentColin Walters2014-06-201-1/+26
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=731924
* doc: Update overview a bitColin Walters2014-06-201-16/+28
| | | | | Link to docker, note in introductory paragraph the goal of package composition on a server.
* doc: adapting-existing: Update story on latest /usr/lib/passwd bitsColin Walters2014-06-201-13/+19
|
* doc: No need to emphasize the poweroff vs other OSes so muchColin Walters2014-06-201-15/+4
|
* doc: Update links to ContinuousColin Walters2014-06-202-5/+6
|
* docs: overview: Explicitly call out dpkg/rpmColin Walters2014-06-201-5/+7
| | | | To be more clear that we don't handle "inventory".