aboutsummaryrefslogtreecommitdiff
path: root/bpkg/pkg-fetch-options.cli
blob: 02a81922ecb00cdc0ae00fde168d2c7b54af5556 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
// file      : bpkg/pkg-fetch-options.cli
// copyright : Copyright (c) 2014-2016 Code Synthesis Ltd
// license   : MIT; see accompanying LICENSE file

include <bpkg/configuration-options.cli>;

"\section=1"
"\name=bpkg-pkg-fetch"
"\summary=fetch package archive"

/*
"\h{SYNOPSIS}

bpkg pkg-fetch [<options>] (<pkg>/<ver>)|(-e <file>)"

"\h{DESCRIPTION}

The \cb{pkg-fetch} command fetches the archive for the specified package
name and version from one of the configuration's repositories. If the
\cb{-r|--replace} option is specified, then \cb{pkg-fetch} will replace the
archive of a package that is already in the \cb{fetched} or \cb{unpacked}
state. Otherwise, \cb{pkg-fetch} expects the package to not exist in the
configuration's database.

If the \cb{-e|--existing} option is used, then instead of the name and
version argument, \cb{pkg-fetch} expects a local path to the existing
package archive. In this case, \cb{bpkg} will use the archive in place,
without copying it to the configuration or package cache directories.
Also, unless the \cb{-p|--purge} option is specified, \cb{bpkg} will
not attempt to remove the archive when the package is purged with the
\cb{pkg-purge} command."
*/

namespace bpkg
{
  class pkg_fetch_options: configuration_options
  {
    bool --replace|-r
    {
      "Replace the archive if the package is already fetched or unpacked."
    }

    bool --existing|-e
    {
      "Treat the argument as an existing package archive path rather than
       package name/version to fetch."
    }

    bool --purge|-p
    {
      "Remove the existing package archive when the package is purged."
    }
  };
}