7697702aaa
We now make the test harness handle restoring the VM to the original state. The wonderful thing about ostree here is that it's a perfect shoo-in for this. We make a 'backup' of the current ref, and just have to make sure that the VM is back on that ref after running each test. This will allow us to write tests without worrying as much about cleaning up in the event of an error. Closes: #360 Approved by: cgwalters |
||
---|---|---|
api-doc | ||
buildutil | ||
design | ||
docs | ||
libglnx@afe3c3a861 | ||
man | ||
packaging | ||
scripts | ||
src | ||
tests | ||
tests-container | ||
vagrant | ||
.gitmodules | ||
.travis.yml | ||
autogen.sh | ||
configure.ac | ||
COPYING | ||
git.mk | ||
HACKING.md | ||
LICENSE | ||
Makefile-daemon.am | ||
Makefile-decls.am | ||
Makefile-lib-defines.am | ||
Makefile-lib.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
New! See the docs online at Read The Docs (rpm-ostree)
rpm-ostree is a hybrid image/package system. It uses OSTree as an image format, and uses RPM as a component model.
The project aims to bring together a hybrid of image-like upgrade features (reliable replication, atomicity), with package-like flexibility (introspecting trees to find package sets, package layering, partial live updates).
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.
Using rpm-ostree to build OS images/trees
See Compose Server.
Building
Releases are available as GPG signed git tags, and most recent versions support extended validation using git-evtag.
However, in order to build from a git clone, you must update the submodules. If you're packaging and want a tarball, I recommend using a "recursive git archive" script. There are several available online; this code in OSTree is an example.
Once you have a git clone or recursive archive, the next step is to install the build dependencies. At the moment, rpm-ostree has a hard requirement on a bleeding edge version of libhif. It also requires a few other libraries like librepo.
Once you have the dependencies, building is the same as every autotools project:
env NOCONFIGURE=1 ./autogen.sh
./configure --prefix=/usr --libdir=/usr/lib64 --sysconfdir=/etc
make
At this point you can run some of the unit tests with make check
.
For more information on this, see CONTRIBUTING.md
.
More documentation
New! See the docs online at Read The Docs (rpm-ostree)
Hacking
See Hacking.
Contributing
See Contributing.