ostree/man/ostree-summary.xml
Matthew Leeds 8fbf19c9f5 Make P2P API public (no longer experimental)
Currently the API that allows P2P operations (e.g. pulling an ostree ref
from a LAN or USB source) is hidden behind the configure flag
--enable-experimental-api. This commit makes the API public and makes
that flag essentially a no-op (leaving it in place in case we want to
use it again in the future). The P2P API has been tested over the last
several months and proven to work.

This means that since we're no longer using the "experimental" feature
flag, P2P builds of Flatpak will fail when using versions of OSTree from
this commit onwards, until Flatpak is patched in the near future. If you
want to build Flatpak < 0.11.8 with P2P enabled and link against OSTree
2018.6, you'll have to patch Flatpak.  However, since Flatpak won't yet
have a hard dependency on OSTree 2018.6, it needs a new way to determine
if the P2P API in OSTree is available, so this commit adds a "p2p"
feature flag. This way the feature set is more semantically correct than
if we had continued to use the "experimental" feature flag.

In addition to making the P2P API public, this commit makes the P2P unit
tests run by default, removes the f27-experimental CI instance that's no
longer needed, changes a few man pages to reflect the changes, and
updates the bash completion script to accept the new commands and
options.

Closes: #1596
Approved by: cgwalters
2018-06-04 19:20:10 +00:00

160 lines
5.7 KiB
XML

<?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 Colin Walters <walters@verbum.org>
SPDX-License-Identifier: LGPL-2.0+
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 summary</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 summary</refentrytitle>
<manvolnum>1</manvolnum>
</refmeta>
<refnamediv>
<refname>ostree-summary</refname>
<refpurpose>Regenerate or view the summary metadata file</refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis>
<command>ostree summary</command> <arg choice="opt">--gpg-sign=KEYID</arg> <arg choice="opt">--gpg-homedir=HOMEDIR</arg> <arg choice="req">--update</arg> <arg choice="opt" rep="repeat">--add-metadata=<replaceable>KEY</replaceable>=<replaceable>VALUE</replaceable></arg>
</cmdsynopsis>
<cmdsynopsis>
<command>ostree summary</command> <group choice="req"><arg choice="plain">--view</arg><arg choice="plain">--raw</arg></group>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>Description</title>
<para>
The <filename>summary</filename> file is an optional higher
level form of repository metadata that describes the
available branches. It needs to be manually regenerated after
a series of commits. Among other things, this allows atomically
updating multiple commits.
</para>
</refsect1>
<refsect1>
<title>Options</title>
<variablelist>
<varlistentry>
<term><option>--update</option>,<option>-u</option></term>
<listitem><para>
Update the summary file. This option can be combined
with <option>--add-metadata</option> to add metadata
fields to the summary.
</para>
<para>If the repository has a collection ID configured, the
<filename>ostree-metadata</filename> branch for that collection ID
will also be updated with a new commit containing the given metadata,
which will be signed if the summary file is signed.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--add-metadata</option>,<option>-m</option>=KEY=VALUE</term>
<listitem><para>
Specify an additional metadata field to add to the summary.
It must be in the format
<command><replaceable>KEY</replaceable>=<replaceable>VALUE</replaceable></command>
or as two separate arguments. The keys must be namespaced
for your organisation or repository using a dot prefix. The
values must be in GVariant text format. For example,
<command>exampleos.end-of-life "@t 1445385600"</command>.
This option can be used multiple times.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>--view</option>,<option>-v</option></term>
<listitem><para>
View the contents of the summary file in a human readable format.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>--raw</option></term>
<listitem><para>
View the raw bytes of the summary file.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>--gpg-sign</option>=KEYID</term>
<listitem><para>
GPG Key ID to sign the summary with.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>--gpg-homedir</option>=HOMEDIR</term>
<listitem><para>
GPG Homedir to use when looking for keyrings.
</para></listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1>
<title>Examples</title>
<para><command>$ ostree summary -u</command></para>
<para><command>$ ostree summary -u -m key="'value'"</command></para>
<para><command>$ ostree summary -v</command></para>
<programlisting>
* ostree/1/1/0
Latest Commit (4.2 MB):
9828ab80f357459b4ab50f0629beab2ae3b67318fc3d161d10a89fae353afa90
Timestamp (ostree.commit.timestamp): 2017-11-21T01:41:10-08
Last-Modified (ostree.summary.last-modified): 2018-01-12T22:06:38-08
</programlisting>
</refsect1>
</refentry>