e7a42f70a9
This is a revisit of a PR for client-side layering: https://github.com/projectatomic/rpm-ostree/pull/1072 Here though we're doing this by default for server-side composes. There are a few reasons to do this; first, I'm seeing an issue in some of our Jenkins jobs for Fedora that hit "mirror roulette" and end up creating commits that "revert" to older versions temporarily. While I've [certainly pitched](https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/IMPE6KCRBHCEJH5VBE6ZFIRLPAD743JT/) this as a feature, I think we really want something like `--force-older-timestamp` - basically error out if the timestamps on one or more input repos were older. Not doing that in this patch, but it paves the way to do so. Second, I'd like to use this data in the `ostree.source-title` metadata key down the line. Something like: `└ rpmmd: fedora-26 (20170310), fedora-26-updates (20171101)` (This could be a lot nicer if we drive versioning in to the rpm-md repo info, and e.g. there's some friendly "week number" style versioning for the updates repo now that it's batched...for now we have timestamps) For CentOS/RHELAH this gets interesting and potentially more verbose, to the point where we may want to render it more explicitly. But anyways, let's do this now, as it will be useful even without an explicit rendering, since users can do e.g. `ostree show` on a base commit hash to dump the data. I had a concern that some users may not want to emit this metadata; they can currently do `--add-metadata-string rpmostree.rpmmd-repos ''` and that will "win". Closes: #1079 Approved by: jlebon |
||
---|---|---|
.github | ||
api-doc | ||
buildutil | ||
ci | ||
design | ||
docs | ||
libdnf@022365553a | ||
libglnx@e627524af9 | ||
man | ||
packaging | ||
scripts | ||
src | ||
tests | ||
vagrant | ||
.dir-locals.el | ||
.editorconfig | ||
.gitmodules | ||
.papr.yml | ||
.vimrc | ||
autogen.sh | ||
configure.ac | ||
CONTRIBUTING.md | ||
COPYING | ||
git.mk | ||
HACKING.md | ||
LICENSE | ||
Makefile-daemon.am | ||
Makefile-decls.am | ||
Makefile-lib-defines.am | ||
Makefile-lib.am | ||
Makefile-libdnf.am | ||
Makefile-libpriv.am | ||
Makefile-man.am | ||
Makefile-rpm-ostree.am | ||
Makefile-tests.am | ||
Makefile.am | ||
mkdocs.yml | ||
README.md | ||
TODO | ||
Vagrantfile |
rpm-ostree Overview
rpm-ostree is a hybrid image/package system. It uses OSTree as a base image format, and supports RPM on both the client and server side using libdnf.
For more information, see the online manual: Read The Docs (rpm-ostree)
Features:
- Atomic upgrades and rollback for host system updates
- A server side tool to consume RPMs and commit them to an OSTree repository
- A system daemon to consume OSTree commits as updates
Projects using rpm-ostree
Project Atomic uses rpm-ostree to provide a minimal host for Docker formatted Linux containers. Replicating a base immutable OS, then using Docker for applications.
Manual
For more information, see the online manual: Read The Docs (rpm-ostree)