diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2017-04-18 13:29:50 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2017-04-18 13:29:50 +0200 |
commit | 0e2f76b6f0ecb4b4c00a4c8001843b3c54bc08ad (patch) | |
tree | 3f0735a7b7e0be27823b23e24806fe9650548dc6 /doc | |
parent | 1804e3e8cf3b8f1bb14e197dada1697c40bed144 (diff) |
Finish agent and worker logic
Diffstat (limited to 'doc')
-rw-r--r-- | doc/manual.cli | 35 |
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| |