1bdep-publish(1)             General Commands Manual            bdep-publish(1)
2
3
4

NAME

6       bdep-publish - publish project to archive repository
7

SYNOPSIS

9       bdep publish [options] [cfg-spec] [pkg-spec]
10
11       pkg-spec = (--directory|-d pkg-dir)... | prj-spec
12       prj-spec = --directory|-d prj-dir
13       cfg-spec = @cfg-name | --config|-c cfg-dir | --forward
14

DESCRIPTION

16       The  publish command publishes the project packages to an archive-based
17       repository.
18
19       If no project or package directory is specified, then the current work‐
20       ing  directory  is  assumed. If no configuration is specified, then the
21       default configuration is used to prepare the package distributions.  If
22       the  specified  directory is a project directory, then all the packages
23       in the project are published. See bdep-projects-configs(1) for  details
24       on specifying projects and configurations.
25
26       For  each  specified package the publish command prepares a package ar‐
27       chive and sends it as part of the package submission request to an  ar‐
28       chive-based  repository.  If the repository is not explicitly specified
29       with the --repository option, packages are published to  cppget.org  by
30       default.
31
32       Along  with  the  package archive, the submission request specifies the
33       repository section to publish the package under, the control repository
34       URL  to  use  for  authorization,  and  the  publisher's name and email
35       address for the record. While the exact  usage  and  interpretation  of
36       this  information  depends  on  the  specific repository, the following
37       semantics apply when submitting to cppget.org.
38
39       The section specifies the desired repository  section  to  publish  the
40       project  under.  If not explicitly specified with the --section option,
41       one of the alpha, beta, or stable values are automatically derived from
42       the package version.
43
44       The control repository URL is a publicly accessible, read-only URL to a
45       version control repository (normally the same as the project's) that is
46       used  to  authenticate  the  publisher as someone authorized to publish
47       under this package name (currently only git(1) is supported).
48
49       Prior to sending the submission request, the publish command  adds  the
50       package  archive checksum to the build2-control branch of the project's
51       version control repository. Upon receiving the submission request,  the
52       archive  repository  either  (1) associates the control repository with
53       the package name if this is the first time this package  name  is  pub‐
54       lished  or  (2) compares the submitted control repository to the previ‐
55       ously associated and, if matching, queries the build2-control branch to
56       verify  that  the submitter is authorized to publish this archive under
57       this package name.
58
59       Unless the control repository  URL  is  specified  with  the  --control
60       option,  it  will  be  automatically derived from the version control's
61       "remote" URL. In case of git(1), it will be based  on  the  remote.ori‐
62       gin.url   configuration   value   unless  overridden  with  remote.ori‐
63       gin.build2ControlUrl  or  remote.origin.build2Url.   The  special  none
64       value  to  the --control option can be used to disable this functional‐
65       ity.
66
67       See Package Submission (#submit) for details on the submission  request
68       handling by archive repositories.
69

PUBLISH OPTIONS

71       --yes|-y
72              Don't prompt for confirmation before publishing.
73
74       --control url
75              Control repository URL for the packages being published.
76
77       --repository url
78              Repository to publish the packages to.
79
80       --section name
81              Repository section to publish the packages under.
82
83       --author-name name
84              Publisher's  name.  If unspecified, it will be obtained from the
85              environment and/or version control system. See  the  ENVIRONMENT
86              section for details.
87
88       --author-email email
89              Publisher's  email  address. If unspecified, it will be obtained
90              from the environment and/or  version  control  system.  See  the
91              ENVIRONMENT section for details.
92
93       --force check
94              Force  publishing,  disabling  the  specified check. Repeat this
95              option to disable multiple checks.
96
97       --simulate outcome
98              Simulate the specified outcome of the submission process without
99              actually performing any externally visible actions (such as pub‐
100              lishing the package).  The commonly used outcome value  is  suc‐
101              cess. For other recognized outcomes refer to the submission ser‐
102              vice documentation.
103
104       --forward
105              Use the forwarded configuration for each package instead of  the
106              default configuration.
107
108       --all|-a
109              Use all build configurations.
110
111       --config|-c dir
112              Specify the build configuration as a directory.
113
114       --directory|-d dir
115              Assume project/package is in the specified directory rather than
116              in the current working directory.
117
118       --config-name|-n name
119              Specify the build configuration as a name.
120
121       --config-id num
122              Specify the build configuration as an id.
123

COMMON OPTIONS

125       The common options are summarized below with a more  detailed  descrip‐
126       tion available in bdep-common-options(1).
127
128       -v     Print essential underlying commands being executed.
129
130       -V     Print all underlying commands being executed.
131
132       --quiet|-q
133              Run quietly, only printing error messages.
134
135       --verbose level
136              Set the diagnostics verbosity to level between 0 and 6.
137
138       --jobs|-j num
139              Number of jobs to perform in parallel.
140
141       --no-progress
142              Suppress  progress  indicators for long-lasting operations, such
143              as network transfers, building, etc.
144
145       --bpkg path
146              The package manager program to be used for  build  configuration
147              management.
148
149       --bpkg-option opt
150              Additional option to be passed to the package manager program.
151
152       --build path
153              The build program to be used to build packages.
154
155       --build-option opt
156              Additional option to be passed to the build program.
157
158       --curl path
159              The curl program to be used for network operations.
160
161       --curl-option opt
162              Additional option to be passed to the curl program.
163
164       --pager path
165              The pager program to be used to show long text.
166
167       --pager-option opt
168              Additional option to be passed to the pager program.
169
170       --options-file file
171              Read additional options from file.
172
173       --default-options dir
174              The directory to load additional default options files from.
175
176       --no-default-options
177              Don't load default options files.
178

DEFAULT OPTIONS FILES

180       See  bdep-default-options-files(1)  for  an  overview  of  the  default
181       options files. For the publish command the search  start  directory  is
182       the  project directory. The following options files are searched for in
183       each directory and, if found, loaded in the order listed:
184
185       bdep.options
186       bdep-publish.options
187
188       The following publish  command  options  cannot  be  specified  in  the
189       default options files:
190
191       --directory|-d
192

ENVIRONMENT

194       The BDEP_AUTHOR_NAME and BDEP_AUTHOR_EMAIL environment variables can be
195       used to specify the publisher's name and email  address,  respectively.
196       If  not  set, the publish command will first try to obtain the name and
197       email from the version control system (if used) and then from the  USER
198       and  EMAIL  environment variables, respectively. See also the --author-
199       name and --author-email options.
200

BUGS

202       Send bug reports to the users@build2.org mailing list.
203
205       Copyright (c) 2014-2020 the build2 authors.
206
207       Permission is granted to copy, distribute and/or modify  this  document
208       under the terms of the MIT License.
209
210
211
212bdep 0.13.0                        July 2020                   bdep-publish(1)
Impressum