Go to file
2014-02-21 14:17:23 -05:00
fedostree fedostree/products: Fully SELinux enforcing 2014-02-21 14:17:23 -05:00
libgsystem@25f755e086 Import lots of code from gnome-continuous 2014-01-03 17:14:10 -05:00
packaging Switch to taking JSON as input, generate "treefile" from products.json 2014-02-12 18:28:42 -05:00
patches/shadow-utils patches: New directory containing patches for Fedora userspace 2014-01-04 07:42:20 -05:00
scripts scripts/ostree-ls-big-files.js: New script to analyze repo files for size 2014-01-29 17:55:07 -05:00
src autobuilder: Inherit comment attribute into treefiles 2014-02-21 14:05:24 -05:00
.gitignore Add .gitignore from ostree 2014-01-17 22:00:16 -05:00
843833DF-pub.gpg Add demo public key here 2014-02-02 16:12:10 -05:00
autogen.sh Use the now external libgsystem 2014-02-07 17:29:40 -05:00
configure.ac Major update to SELinux handling 2014-02-20 07:59:09 -05:00
COPYING Initial import from pkgsys-ostree 2013-12-21 19:41:30 -05:00
Makefile-autobuilder.am Make smoketest work 2014-01-25 21:25:27 -05:00
Makefile-decls.am Import some code for using GJS 2014-01-03 17:14:10 -05:00
Makefile-gsystem-introspection.am Import some code for using GJS 2014-01-03 17:14:10 -05:00
Makefile-rpm-ostree.am Major update to SELinux handling 2014-02-20 07:59:09 -05:00
Makefile.am Use the now external libgsystem 2014-02-07 17:29:40 -05:00
Makefile.dist-packaging Major update to SELinux handling 2014-02-20 07:59:09 -05:00
README.md README.md: Update installation/usage to reflect new treefile reality 2014-02-12 19:58:58 -05:00
TODO TODO: Add two more bits 2014-02-15 17:08:40 -05:00

rpm-ostree

This tool takes a set of packages, and commits them to an OSTree repository. At the moment, it is intended for use on build servers.

Using rpm-ostree

There are two levels; the core "rpm-ostree" command takes a set of packages and commits them to an OSTree repository.

The higher level rpm-ostree-autobuilder parses a "products.json" which generates potentially many filesystem trees. It also has code to generate disk images and run smoketests.

Installing and setting up a repository

There are packages available in the rpm-ostree COPR; you can also just "sudo make install" it.

Once you have that done, choose a build directory. Here we'll use /srv/rpm-ostree.

cd /srv/rpm-ostree

mkdir repo

ostree --repo=repo init --mode=archive-z2

Running rpm-ostree

The core "rpm-ostree" takes as input a "treefile". There is a demo one in src/demo-treefile.json.

rpm-ostree sometreefile.json

All this does is use yum to download RPMs from the referenced repos, and commit the result to the OSTree repository, using the ref named by ref.

You can export /srv/rpm-ostree/repo via any static webserver.

Running the autobuilder

The autobuilder instead takes as input a products.json which generates multiple treefiles. Try this:

ln -s /path/to/rpm-ostree.git/fedostree/products.json .

rpm-ostree-autobuilder autobuilder

That will automatically poll every hour for changes in the RPMs referenced by the products.json file, commit them to the /srv/rpm-ostree/repo, and generate cached disk images in /srv/rpm-ostree/images.