aboutsummaryrefslogtreecommitdiff
path: root/doc/manual.cli
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2017-04-18 13:29:50 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2017-04-18 13:29:50 +0200
commit0e2f76b6f0ecb4b4c00a4c8001843b3c54bc08ad (patch)
tree3f0735a7b7e0be27823b23e24806fe9650548dc6 /doc/manual.cli
parent1804e3e8cf3b8f1bb14e197dada1697c40bed144 (diff)
Finish agent and worker logic
Diffstat (limited to 'doc/manual.cli')
-rw-r--r--doc/manual.cli35
1 files changed, 25 insertions, 10 deletions
diff --git a/doc/manual.cli b/doc/manual.cli
index 5da684a..2b2fc21 100644
--- a/doc/manual.cli
+++ b/doc/manual.cli
@@ -243,8 +243,9 @@ SYNOPSIS
name: <package-name>
version: <package-version>
-repository: <repository-url>
#location: <package-url>
+repository: <repository-url>
+trust: <repository-fp>
machine: <machine-name>
target: <target-triplet>
@@ -269,6 +270,19 @@ build configuration to use for building the package.
The \c{bpkg} repository that contains the package and its dependencies.|
+\li|\n\c{trust: <repository-fp>}\n
+
+ The SHA256 repository certificate fingerprint to trust (see the \c{bpkg}
+ \c{--trust} option for details). This value may be specified multiple times
+ to establish the authenticity of multiple certificates. If the special
+ \c{yes} value is specified, then all repositories will be trusted without
+ authentication (see the \c{bpkg} \c{--trust-yes} option).
+
+ Note that while the controller may return a task with \c{trust} values,
+ whether they will be used is up to the agent's configuration. For example,
+ some agents may only trust their internally-specified fingerprints to
+ prevent the \"man in the middle\" type of attacks.|
+
\li|\n\c{machine: <machine-name>}\n
The name of the build machine to use.|
@@ -480,16 +494,18 @@ the environment executable is an error.
Once the environment setup executable is determined, the worker re-executes
itself as that executable passing to it as command line arguments the target
-name (or empty value if not specified), the path to the \c{bbot} worker to be
-executed once the environment is setup, and the path to the build task
-manifest.
+name (or empty value if not specified) and the path to the \c{bbot} worker to
+be executed once the environment is setup. The environment setup executable is
+executed in the build directory as its current working directory. The build
+directory contains the build task \c{manifest} file.
The environment setup executable sets up the necessary execution environment
for example by adjusting \c{PATH} or running a suitable \c{vcvars} batch file.
It then re-executes itself as the \c{bbot} worker passing to it as command
-line arguments the path to the build task manifest followed by the list of
-build system modules (\c{<env-modules>}) and the list of configuration
-variables (\c{<env-config-vars>}).
+line arguments the list of build system modules (\c{<env-modules>}) and the
+list of configuration variables (\c{<env-config-vars>}). The environment setup
+executable must execute the \c{bbot} worker in the build directory as the
+current working directory.
The re-executed \c{bbot} worker then proceeds to test the package from the
repository by executing the following commands (\c{<>}-values are from the
@@ -498,7 +514,7 @@ task manifest and environment):
\
bpkg -v create <env-module> <config-vars> <env-config-vars>
bpkg -v add <repository-url>
-bpkg -v fetch
+bpkg -v fetch --trust <repository-fp>
bpkg -v build --yes --configure-only <package-name>/<package-version>
bpkg -v update <package-name>
bpkg -v test <package-name>
@@ -512,7 +528,6 @@ for building C and C++ packages with GCC 6 on most Linux distributions.
# $1 - target
# $2 - bbot executable
-# $3 - task manifest
trap \"exit 1\" ERR
@@ -521,7 +536,7 @@ if [ -n \"$1\" ]; then
exit 1
fi
-exec \"$2\" --build \"$3\" cc config.c=gcc-6
+exec \"$2\" cc config.c=gcc-6
\
\h#arch-controller|Controller Logic|