<?xml version='1.0'?> <!--*-nxml-*-->
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
    "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">

<!--
Copyright 2014 Anne LoVerso <anne.loverso@students.olin.edu>

This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the
Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA.
-->

<refentry id="ostree">

    <refentryinfo>
        <title>ostree admin deploy</title>
        <productname>OSTree</productname>

        <authorgroup>
            <author>
                <contrib>Developer</contrib>
                <firstname>Colin</firstname>
                <surname>Walters</surname>
                <email>walters@verbum.org</email>
            </author>
        </authorgroup>
    </refentryinfo>

    <refmeta>
        <refentrytitle>ostree admin deploy</refentrytitle>
        <manvolnum>1</manvolnum>
    </refmeta>

    <refnamediv>
        <refname>ostree-admin-deploy</refname>
        <refpurpose>Checkout a revision as the new default deployment</refpurpose>
    </refnamediv>

    <refsynopsisdiv>
            <cmdsynopsis>
                <command>ostree admin deploy</command> <arg choice="opt" rep="repeat">OPTIONS</arg> <arg choice="req">REFSPEC</arg>
            </cmdsynopsis>
    </refsynopsisdiv>

    <refsect1>
        <title>Description</title>

        <para>
            Takes a commit or revision REFSPEC, and queues the new deployment as default upon reboot.
        </para>
    </refsect1>

    <refsect1>
        <title>Options</title>

        <variablelist>
            <varlistentry>
                <term><option>--os</option>="STATEROOT"</term>

                <listitem><para>
                    Use a different operating system root than the current one.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>--origin-file</option>="FILENAME"</term>

                <listitem><para>
                    Use FILENAME as the origin, which is where OSTree will look for updated versions of the tree.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>--retain</option></term>

                <listitem><para>
                    Do not delete previous deployment.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>--retain-pending</option></term>

                <listitem><para>
                    Do not delete pending deployments.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>--retain-rollback</option></term>

                <listitem><para>
                    Do not delete rollback deployments.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>--not-as-default</option></term>

                <listitem><para>
                    Append rather than prepend new deployment.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>--karg-proc-cmdline</option></term>

                <listitem><para>
                    Import current /proc/cmdline.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>--karg</option>="NAME=VALUE"</term>

                <listitem><para>
                    Set kernel argument, like root=/dev/sda1; this overrides any earlier argument with the same name.
                </para></listitem>
            </varlistentry>

            <varlistentry>
                <term><option>--karg-append</option>="NAME=VALUE"</term>

                <listitem><para>
                    Append kernel argument; useful with e.g. console= that can be used multiple times.
                </para></listitem>
            </varlistentry>
        </variablelist>
    </refsect1>

    <refsect1>
        <title>Example</title>
        <para><command>$ ostree admin status</command></para>
<programlisting>
        * gnome-ostree 67e382b11d213a402a5313e61cbc69dfd5ab93cb07.0
            origin refspec: gnome-ostree/buildmaster/x86_64-runtime
          gnome-ostree ce19c41036cc45e49b0cecf6b157523c2105c4de1ce3.0
            origin refspec: gnome-ostree/buildmaster/x86_64-runtime
</programlisting>

<para><command>$ ostree admin deploy gnome-ostree/buildmaster/x86_64-runtime</command></para>
<programlisting>
        ostadmin: Creating deployment /ostree/deploy/gnome-ostree/deploy/7e382b11d213a402a5313e61cbc69dfd5ab93cb07.1
        ostadmin: Processing /etc: 3 modified, 0 removed, 29 added
        Transaction complete: bootconfig swap: no deployment count change: 0)
</programlisting>

<para><command>$ ostree admin status</command></para>
<programlisting>
          gnome-ostree 67e382b11d213a402a5313e61cbc69dfd5ab93cb07.1
            origin refspec: gnome-ostree/buildmaster/x86_64-runtime
        * gnome-ostree 67e382b11d213a402a5313e61cbc69dfd5ab93cb07.0
            origin refspec: gnome-ostree/buildmaster/x86_64-runtime
</programlisting>
    
    </refsect1>
</refentry>
