summaryrefslogtreecommitdiff
path: root/src/ostree/ot-remote-builtin-add.c
diff options
context:
space:
mode:
authorPhilip Withnall <withnall@endlessm.com>2017-06-07 14:50:51 +0100
committerAtomic Bot <atomic-devel@projectatomic.io>2017-06-26 15:56:07 +0000
commit205a84b36e44808b26ccecbf490e58843548d40c (patch)
tree2b029ff49ca1252e78915b6c9482c65617968b05 /src/ostree/ot-remote-builtin-add.c
parent144e325579769c1af36cd135d8fa568327418538 (diff)
downloadostree-205a84b36e44808b26ccecbf490e58843548d40c.tar.gz
remote-add: Add a --collection-id argument to the built-in add command
This allows newly configured remotes to have their collection ID specified, so that refs from them can be downloaded from peers as well as the upstream collection, using the remote’s configuration. Signed-off-by: Philip Withnall <withnall@endlessm.com> Closes: #924 Approved by: cgwalters
Diffstat (limited to 'src/ostree/ot-remote-builtin-add.c')
-rw-r--r--src/ostree/ot-remote-builtin-add.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/ostree/ot-remote-builtin-add.c b/src/ostree/ot-remote-builtin-add.c
index 3e3aeda9..db115efd 100644
--- a/src/ostree/ot-remote-builtin-add.c
+++ b/src/ostree/ot-remote-builtin-add.c
@@ -31,6 +31,9 @@ static gboolean opt_no_gpg_verify;
static gboolean opt_if_not_exists;
static char *opt_gpg_import;
static char *opt_contenturl;
+#ifdef OSTREE_ENABLE_EXPERIMENTAL_API
+static char *opt_collection_id;
+#endif /* OSTREE_ENABLE_EXPERIMENTAL_API */
static GOptionEntry option_entries[] = {
{ "set", 0, 0, G_OPTION_ARG_STRING_ARRAY, &opt_set, "Set config option KEY=VALUE for remote", "KEY=VALUE" },
@@ -38,6 +41,10 @@ static GOptionEntry option_entries[] = {
{ "if-not-exists", 0, 0, G_OPTION_ARG_NONE, &opt_if_not_exists, "Do nothing if the provided remote exists", NULL },
{ "gpg-import", 0, 0, G_OPTION_ARG_FILENAME, &opt_gpg_import, "Import GPG key from FILE", "FILE" },
{ "contenturl", 0, 0, G_OPTION_ARG_STRING, &opt_contenturl, "Use URL when fetching content", "URL" },
+#ifdef OSTREE_ENABLE_EXPERIMENTAL_API
+ { "collection-id", 0, 0, G_OPTION_ARG_STRING, &opt_collection_id,
+ "Globally unique ID for this repository as an collection of refs for redistribution to other repositories", "COLLECTION-ID" },
+#endif /* OSTREE_ENABLE_EXPERIMENTAL_API */
{ NULL }
};
@@ -110,6 +117,12 @@ ot_remote_builtin_add (int argc, char **argv, GCancellable *cancellable, GError
"gpg-verify",
g_variant_new_variant (g_variant_new_boolean (FALSE)));
+#ifdef OSTREE_ENABLE_EXPERIMENTAL_API
+ if (opt_collection_id != NULL)
+ g_variant_builder_add (optbuilder, "{s@v}", "collection-id",
+ g_variant_new_variant (g_variant_new_take_string (g_steal_pointer (&opt_collection_id))));
+#endif /* OSTREE_ENABLE_EXPERIMENTAL_API */
+
options = g_variant_ref_sink (g_variant_builder_end (optbuilder));
if (!ostree_repo_remote_change (repo, NULL,