Linux CommandExecutor #536

Merged
muellerr merged 9 commits from eive/fsfw:mueller/cmd-executor into development 2022-02-02 10:17:52 +01:00

9 Commits

Author SHA1 Message Date
muellerr e0c50477cb it actually was an uninitialized array
fsfw/fsfw/pipeline/pr-development This commit looks good
2022-02-02 10:00:57 +01:00
muellerr 30687f84c8 Merge branch 'mueller/cmd-executor' of https://egit.irs.uni-stuttgart.de/eive/fsfw into mueller/cmd-executor 2022-02-02 09:56:41 +01:00
muellerr fed39defd3 update helper script 2022-02-02 09:56:12 +01:00
muellerr acbc2cd749 valgrind why
fsfw/fsfw/pipeline/pr-development There was a failure building this commit
2022-02-01 18:04:08 +01:00
muellerr 368481f88b move strcmp outside of macro
fsfw/fsfw/pipeline/pr-development There was a failure building this commit
2022-02-01 14:04:13 +01:00
muellerr d2b561ba2f test
fsfw/fsfw/pipeline/pr-development There was a failure building this commit
2022-02-01 13:57:27 +01:00
muellerr 990e8672a8 update dockerfile
fsfw/fsfw/pipeline/pr-development There was a failure building this commit
2022-02-01 13:47:16 +01:00
muellerr 74ae3f1371 Merge remote-tracking branch 'upstream/development' into mueller/cmd-executor
fsfw/fsfw/pipeline/pr-development There was a failure building this commit
2022-02-01 10:49:14 +01:00
muellerr 371ff931bf Linux CommandExecutor
fsfw/fsfw/pipeline/pr-development There was a failure building this commit
The CommandExecutor helper class can execute shell commands in blocking and non-blocking mode
This class is able to execute processes by using the Linux popen call. It also has the capability of writing
the read output of a process into a provided ring buffer.

The executor works by first loading the command which should be executed and specifying whether
it should be executed blocking or non-blocking. After that, execution can be started with the execute call.

Using non-blocking mode allows to execute commands which might take a longer time in the background,
and allowing the user thread to check completion status with the check function

Moved to HAL like requested in code review and unit tested with failing commands as well.
Also, Linux HAL components are compiled by default now unless explicitely disabled.
2022-01-26 12:11:52 +01:00