Skip to content

Additional Arguments

No Wait

--no-wait is an optional argument which submits the build and returns immediately printing the build artifacts to stdout.

Show Logs

--show-logs is an optional argument to print build logs to stderr, after the build(s), in the event of warnings or errors.

Quiet Mode

Passing -q/--quiet to build will cause tuxsuite to produce minimal output. In particular:

  • Only the final build artifacts URLs will be printed to stdout.
  • No progress information will be printed while waiting for the builds to finish.
  • Warnings and errors, including build failures, will be printed to stderr.
$ tuxsuite build --quiet --git-repo 'https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git' --git-ref master --target-arch arm64 --kconfig defconfig --toolchain gcc-9
https://builds.tuxbuild.com/_YNU6WjSnKv_Akdajrnhyw/

This is handy for use in automation/CI scripts.

json-out

The --json-out \<filename.json\> command-line option accepts a filesystem path, where it will write a status file in json format at the end of a build. The file will contain, for example:

{
    "build_key": "1oiYvkUr1ctXdkV7KCLZ6320JVw",
    "build_name": "arm64 clang-nightly tinyconfig mainline",
    "build_status": "pass",
    "client_token": "6f288ec4-38aa-4968-8082-04790901fc44",
    "download_url": "https://builds.tuxbuild.com/1oiYvkUr1ctXdkV7KCLZ6320JVw/",
    "environment": {},
    "errors_count": 0,
    "git_describe": "v5.11",
    "git_ref": "master",
    "git_repo": "https://github.com/torvalds/linux.git",
    "git_sha": "f40ddce88593482919761f74910f42f4b84c004b",
    "git_short_log": "f40ddce88593 (\"Linux 5.11\")",
    "kconfig": [
        "tinyconfig"
    ],
    "kernel_image": "",
    "kernel_version": "5.11.0",
    "make_variables": {},
    "status_message": "build completed",
    "target_arch": "arm64",
    "targets": [],
    "toolchain": "clang-nightly",
    "tuxbuild_status": "complete",
    "warnings_count": 0
}

image-sha

--image-sha is an optional argument which submits the build and instructs tuxbuild to use / pin the container image specified by the complete sha256 of the image. The container image complete sha256 is 64 hexadecimal digits.

no-cache

--no-cache is an optional argument which performs the build without using any compilation cache.

private

-P/--private is an optional argument to make the build private. The build is public by default. The artifacts are public unless the user passes the --private or -P option, which makes the storage of artifacts private. To access the privately stored artifacts, the user has to authenticate with their TuxSuite credentials.

Authentication with your TuxSuite token is required in order to access the artifacts of a build that uses private storage, as shown below:

curl -L -H 'Authorization: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' \
'https://storage.tuxsuite.com/private/demo/demo/builds/2Klp3IebV45CIMnC7BnfTGbIAGV/build.log' \
-o /tmp/build.log

callback

--callback is an optional argument which POSTs JSON data that has the status of the build, at the end of the build to the given URL. The URL should be a valid http(s) link that accepts POST data.

See Callbacks Reference, for more details

callback header

--callback-header is an optional argument to build submit subcommand through which the user can supply extra header to include in the POST request sent to the callback URL. The header string should be a key value pair separated by a ':' (colon). This option can be used multiple times to add multiple headers. This option depends on the --callback option.

Example:

tuxsuite build \
--git-repo https://github.com/torvalds/linux.git \
--git-ref master \
--target-arch arm64 \
--toolchain gcc-11 \
--kconfig tinyconfig \
--callback https://tuxapi.tuxsuite.com/v1/test_callback \
--callback-header "X-First-Name: Senthil" \
--callback-header "X-Last-Name: Kumaran" \
--callback-header "X-Initial: S"

notify-email

--notify-email or -E is an optional argument which sends the result of the build, at the end of the build to the given email address. This option can be used multiple times to add multiple email addresses to notify.

tuxsuite build \
--git-repo https://github.com/torvalds/linux.git \
--git-ref master \
--target-arch arm64 \
--toolchain gcc-11 \
--kconfig tinyconfig \
--notify-email test-1@linaro.org \
-E test-2@linaro.org