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

NAME

6       bdep-ci - submit project test request to CI server
7

SYNOPSIS

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

DESCRIPTION

16       The  ci  command  submits  the  project  packages  test request to a CI
17       server.
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 configurations are  used.  If  the  specified  directory  is  a
22       project  directory, then all the packages initialized in the configura‐
23       tions are submitted, unless the --forward option is specified (see  be‐
24       low).  See  bdep-projects-configs(1) for details on specifying projects
25       and configurations.
26
27       A CI request consists of the specified packages and their  versions  as
28       well as the project's remote version control repository URL correspond‐
29       ing to the current (local) state of the project. The CI  server  should
30       be able to fetch these package versions from this repository as well as
31       any dependencies from this repository  or  its  prerequisite/complement
32       repositories, according to each package's repositories.manifest.
33
34       If  the CI server is not explicitly specified with the --server option,
35       the request is submitted to ci.cppget.org by default.
36
37       Unless the remote repository URL is specified with the --repository op‐
38       tion,  it will be automatically derived from the version control's "re‐
39       mote" URL. In case of git(1), it will be based on the remote.origin.url
40       configuration value unless overridden with remote.origin.build2Url. The
41       repository URL is then adjusted to corresponding to the current (local)
42       state  of the project. In case of git(1), the current branch and commit
43       id are added as  the  repository  URL  fragment  (see  bpkg-repository-
44       types(1) for details).
45
46       Some  package  manifest  values can be overridden as part of the CI re‐
47       quest submission using the --override and --overrides-file  options  as
48       well  as  their  --builds, --build-config, and --build-email shortcuts.
49       This is primarily useful for specifying  alternative  build  configura‐
50       tions and/or build notification emails. For example:
51
52       $ bdep ci --builds gcc
53       $ bdep ci --build-config 'linux*-gcc*'
54
55       Note  that manifest overrides override the entire value group that they
56       belong to. Currently, the following value groups can be overridden with
57       the  build*-email  group  overridden  by default as if by specifying an
58       empty build email.
59
60       build-email build-{warning,error}-email
61       builds build-{include,exclude}
62
63       Note also that the build constraints group values are overridden  hier‐
64       archically  so  that the build-{include,exclude} overrides don't affect
65       the builds values.
66
67       If supported by the CI service, a package can be  tested  interactively
68       in a specific build configuration using the --interactive|-i option. In
69       this mode the CI service provides the login information for the  execu‐
70       tion environment and pauses the testing at the specified breakpoint.
71
72       While  the  exact  interpretation of the CI request depends on the spe‐
73       cific service, normally, the CI server will respond  with  a  reference
74       that can be used to query the results. See Package CI (#ci) for details
75       on the CI request handling.
76
77       If the --forward option is specified then the forwarded  configurations
78       are  used  instead  of  the default configurations. In particular, this
79       means that in this mode the project doesn't need to be initialized  and
80       all  that's  required is for package's source directories to be config‐
81       ured to forward to an out of source build configuration (see  b(1)  for
82       details on forwarded configurations). This, for example, can be used to
83       submit packages that don't use the standard version.
84

CI OPTIONS

86       --yes|-y
87              Don't prompt for confirmation before submitting.
88
89       --interactive|-i cf[/bp]
90              Test the package interactively in the specified build configura‐
91              tion,  pausing  the execution at the specified breakpoint. Valid
92              breakpoint values are error (stop after  first  error),  warning
93              (stop  after  first warning), as well as the CI service-specific
94              step ids in which case the execution stops before performing the
95              specified step (see bbot worker step ids (bbot#arch-worker)). If
96              no breakpoint is specified, then error is assumed.
97
98       --server url
99              CI server to submit the request to.
100
101       --repository url
102              Remote repository URL for the project.
103
104       --override name:value
105              Package manifest value override. Repeat this option to  override
106              multiple values.
107
108       --overrides-file file
109              Read  manifest value overrides from the specified manifest frag‐
110              ment file.  Repeat this  option  to  specify  multiple  override
111              files.
112
113       --builds class-expr
114              Shortcut for --override builds:class-expr.
115
116       --build-config cf[/tg]
117              Shortcut for the following options sequence:
118
119              --override builds:all
120              --override build-include:cf[/tg]
121              --override build-exclude:**
122
123              Repeat this option to specify multiple build configurations.
124
125       --build-email email
126              Shortcut for --override build-email:email.
127
128       --simulate outcome
129              Simulate  the  specified outcome of the CI process without actu‐
130              ally performing any externally visible actions (such as  testing
131              the  packages  or publishing the result). The commonly used out‐
132              come value is success. For other recognized  outcomes  refer  to
133              the CI service documentation.
134
135       --forward
136              Use  the forwarded configuration for each package instead of the
137              default configuration.
138
139       --all|-a
140              Use all build configurations.
141
142       --config|-c dir
143              Specify the build configuration as a directory.
144
145       --directory|-d dir
146              Assume project/package is in the specified directory rather than
147              in the current working directory.
148
149       --config-name|-n name
150              Specify the build configuration as a name.
151
152       --config-id num
153              Specify the build configuration as an id.
154

COMMON OPTIONS

156       The  common  options are summarized below with a more detailed descrip‐
157       tion available in bdep-common-options(1).
158
159       -v     Print essential underlying commands being executed.
160
161       -V     Print all underlying commands being executed.
162
163       --quiet|-q
164              Run quietly, only printing error messages.
165
166       --verbose level
167              Set the diagnostics verbosity to level between 0 and 6.
168
169       --stdout-format format
170              Representation format to use for printing to stdout.
171
172       --jobs|-j num
173              Number of jobs to perform in parallel.
174
175       --progress
176              Display progress indicators for long-lasting operations, such as
177              network transfers, building, etc.
178
179       --no-progress
180              Suppress  progress  indicators for long-lasting operations, such
181              as network transfers, building, etc.
182
183       --bpkg path
184              The package manager program to be used for  build  configuration
185              management.
186
187       --bpkg-option opt
188              Additional option to be passed to the package manager program.
189
190       --build path
191              The build program to be used to build packages.
192
193       --build-option opt
194              Additional option to be passed to the build program.
195
196       --curl path
197              The curl program to be used for network operations.
198
199       --curl-option opt
200              Additional option to be passed to the curl program.
201
202       --pager path
203              The pager program to be used to show long text.
204
205       --pager-option opt
206              Additional option to be passed to the pager program.
207
208       --options-file file
209              Read additional options from file.
210
211       --default-options dir
212              The directory to load additional default options files from.
213
214       --no-default-options
215              Don't load default options files.
216

DEFAULT OPTIONS FILES

218       See  bdep-default-options-files(1)  for  an overview of the default op‐
219       tions files. For the ci command  the  search  start  directory  is  the
220       project directory. The following options files are searched for in each
221       directory and, if found, loaded in the order listed:
222
223       bdep.options
224       bdep-ci.options
225
226       The following ci command options cannot be specified in the default op‐
227       tions files:
228
229       --directory|-d
230

BUGS

232       Send bug reports to the users@build2.org mailing list.
233
235       Copyright (c) 2014-2022 the build2 authors.
236
237       Permission  is  granted to copy, distribute and/or modify this document
238       under the terms of the MIT License.
239
240
241
242bdep 0.15.0                        July 2022                        bdep-ci(1)
Impressum