Go to file
Felix Moessbauer ecd670e9ae fix: collect exceptions on task errors
When async tasks fail, all exceptions need to be collected to not get
subsequent exceptions about invalid future states. This is achieved by
gathering the task results, instead of just waiting for them. By
gathering the results, also user-requested cancellation (e.g. via
ctrl-c) works without throwing tons of additional exceptions.
Since ac437308 we more likely run into that case, which unvealed the bug.

By properly handling the exception, a TaskResultError is returned
instead of the underlying CommandExecError. This change is reflected in
the corresponding unit test.

Signed-off-by: Felix Moessbauer <felix.moessbauer@siemens.com>
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
2023-05-19 06:36:31 +02:00
.github drop support for Python 3.5 2023-04-23 11:57:30 +02:00
contrib Dockerfile: Carry oe-git-proxy locally 2021-08-30 21:56:04 +02:00
docs simplify and document how to measure code coverage 2023-05-07 22:19:50 +02:00
image-tests image-tests: Update to recent Yocto and Isar revisions 2022-08-26 15:12:20 +02:00
kas fix: collect exceptions on task errors 2023-05-19 06:36:31 +02:00
scripts scripts: Add an update reminder for readthedocs 2023-01-17 18:27:08 +01:00
tests fix: collect exceptions on task errors 2023-05-19 06:36:31 +02:00
.coveragerc simplify and document how to measure code coverage 2023-05-07 22:19:50 +02:00
.dockerignore .dockerignore: Update 2022-08-26 14:39:41 +02:00
.flake8 flake8: Ignore obsolete warning W503 2020-11-13 20:54:20 +01:00
.gitignore Add release artifact to .gitignore 2020-11-20 12:05:51 +01:00
.readthedocs.yaml readthedocs: Add configuration file 2021-11-22 19:20:14 +01:00
CHANGELOG.md Release 3.2.3 2023-03-05 10:36:58 +01:00
container-entrypoint container-entrypoint: Switch to POSIX shell 2023-04-20 22:01:31 +02:00
CONTRIBUTING.md CONTRIBUTING: Drop reference to non-existing maintainer list 2020-12-17 18:13:19 +01:00
Dockerfile kas-container: Shop colorlog python package 2023-04-20 22:53:15 +02:00
kas-container kas-container: add support to set log-level 2023-05-03 17:25:47 +02:00
kas-docker rename kas-docker to kas-container, leave symlink in place 2020-09-29 08:30:10 +02:00
LICENSE Correct grammar, spelling and copyright year in files 2018-09-05 12:46:35 +02:00
pyproject.toml Provide a pyproject.toml 2021-11-25 09:14:21 +01:00
README.rst README: Leave notice on inherit integrity weaknesses of repo fetches 2023-02-13 07:18:29 +01:00
run-kas Correct grammar, spelling and copyright year in files 2018-09-05 12:46:35 +02:00
SECURITY.md Add a SECURITY.md 2023-02-04 14:03:00 +01:00
setup.py drop support for Python 3.5 2023-04-23 11:57:30 +02:00

Setup tool for bitbake based projects
=====================================

+--------------------+
|    Build Status    |
+====================+
| |workflow-master|_ |
+--------------------+
| |workflow-next|_   |
+--------------------+

.. |workflow-master| image:: https://github.com/siemens/kas/workflows/master/badge.svg
.. _workflow-master: https://github.com/siemens/kas/actions?query=workflow%3Amaster
.. |workflow-next| image:: https://github.com/siemens/kas/workflows/next/badge.svg
.. _workflow-next: https://github.com/siemens/kas/actions?query=workflow%3Anext

This tool provides an easy mechanism to setup bitbake based
projects.

The OpenEmbedded tooling support starts at step 2 with bitbake. The
downloading of sources and then configuration has to be done by
hand. Usually, this is explained in a README. Instead kas is using a
project configuration file and does the download and configuration
phase.

Key features provided by the build tool:

- clone and checkout bitbake layers
- create default bitbake settings (machine, arch, ...)
- launch minimal build environment, reducing risk of host contamination
- initiate bitbake build process

See the `kas documentation <https://kas.readthedocs.io>`_ for further details.

SECURITY NOTICE
---------------

At this stage, kas does not validate the integrity of fetched repositories.
Make sure to only pull from trusted sources to ensure that the selected
revisions are the expected ones, specifically when using mirrors. Later
versions of kas may introduce integrity validation mechanisms such as
cryptographic checksums to strengthen supply chain security.