c6caa184 | 07-Jun-2023 |
William A. Kennington III <wak@google.com> |
build-unit-test-docker: Upgrade ubuntu lunar to mantic
Primarily this will use the stable version of gcc 13 instead of a git version.
Change-Id: I915f5456e7b82904368841d94120be03ac38987a Signed-off
build-unit-test-docker: Upgrade ubuntu lunar to mantic
Primarily this will use the stable version of gcc 13 instead of a git version.
Change-Id: I915f5456e7b82904368841d94120be03ac38987a Signed-off-by: William A. Kennington III <wak@google.com>
show more ...
|
29d69bb0 | 06-Jun-2023 |
Andrew Jeffery <andrew@aj.id.au> |
build-unit-test-docker: Build libpldm stable ABI
Don't include any symbols that are still marked as 'testing' in the libpldm ABI. No applications should pass CI while relying on symbols that aren't
build-unit-test-docker: Build libpldm stable ABI
Don't include any symbols that are still marked as 'testing' in the libpldm ABI. No applications should pass CI while relying on symbols that aren't stable.
See `libpldm: Explicit deprecated, stable and testing ABI classes`[1].
[1]: https://gerrit.openbmc.org/c/openbmc/libpldm/+/63974
Change-Id: Ia99c512566a9d3723e772d64c10d6f82a73b48af Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
show more ...
|
961f148b | 30-May-2023 |
Patrick Williams <patrick@stwcx.xyz> |
build-unit-test-docker: update to gcc-13
Yocto upstream is now on GCC-13, which we will be merging as soon as all code compiles successfully. Update the docker container for CI as well so we do not
build-unit-test-docker: update to gcc-13
Yocto upstream is now on GCC-13, which we will be merging as soon as all code compiles successfully. Update the docker container for CI as well so we do not get any regressions.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I8bab7fb5acfe0d19d03729a69d8cacac7e571b5b
show more ...
|
9d43ecfe | 24-May-2023 |
Andrew Jeffery <andrew@aj.id.au> |
unit-test: Increase available debug information for test builds
Configuring `-Og` helps ensure `abi-dumper` has all the information it would like for ABI analysis.
``` ... [18/39] Generatin
unit-test: Increase available debug information for test builds
Configuring `-Og` helps ensure `abi-dumper` has all the information it would like for ABI analysis.
``` ... [18/39] Generating abi-dump with a custom command Detect public symbols Reading debug-info WARNING: incompatible build option detected: -O0 (required -Og for better analysis) ... ```
Change-Id: Ia4d2add17a1e65bb480cb7003597af62c8e47bc2 Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
show more ...
|
8b112068 | 22-May-2023 |
Andrew Jeffery <andrew@aj.id.au> |
build-unit-test-docker: Also install abi-dumper
It turns out `abi-dumper` is not a dependency of `abi-compliance-checker`, so we must install both.
Change-Id: I37547f87106cb738d155e53108e581c0e1395
build-unit-test-docker: Also install abi-dumper
It turns out `abi-dumper` is not a dependency of `abi-compliance-checker`, so we must install both.
Change-Id: I37547f87106cb738d155e53108e581c0e13958f3 Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
show more ...
|
58f1915e | 22-May-2023 |
Andrew Jeffery <andrew@aj.id.au> |
build-unit-test-docker: Install abi-compliance-checker
abi-compliance-checker enables enforcement of ABI/API compliance in CI for projects producing shared libraries. A reference implementation exis
build-unit-test-docker: Install abi-compliance-checker
abi-compliance-checker enables enforcement of ABI/API compliance in CI for projects producing shared libraries. A reference implementation exists for libpldm:
https://gerrit.openbmc.org/c/openbmc/libpldm/+/63654
Change-Id: I82071e4d2bff7307dd6b8269efed04cac0f13959 Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
show more ...
|
782f41f4 | 17-May-2023 |
Brad Bishop <bradleyb@fuzziesquirrel.com> |
build-unit-test-docker: use curl
curl has better proxy support than wget - for example socks5h.
Change-Id: I221295a9a0ceabc0370d8d6d3cd4a4edd8438988 Signed-off-by: Brad Bishop <bradleyb@fuzziesquir
build-unit-test-docker: use curl
curl has better proxy support than wget - for example socks5h.
Change-Id: I221295a9a0ceabc0370d8d6d3cd4a4edd8438988 Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
show more ...
|
876ea1ef | 11-May-2023 |
Patrick Williams <patrick@stwcx.xyz> |
build-unit-test-docker: workaround boost and clang-16 issues
Add a patch to work around the issue discussed in boostorg/beast#2648 and observed in bmcweb testing. This patch is only necessary in ou
build-unit-test-docker: workaround boost and clang-16 issues
Add a patch to work around the issue discussed in boostorg/beast#2648 and observed in bmcweb testing. This patch is only necessary in our Docker container, and not Yocto, because we only compile with clang or clang-tidy in the Docker environment.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I9e68c74fd8ee1421bf9e49f9f6ce497c8b05a436
show more ...
|
64b6f9d2 | 13-Apr-2023 |
Patrick Williams <patrick@stwcx.xyz> |
build-unit-test-docker: update to clang-16
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I59cf51cdb89476d9da4934d0cf6be44fc2cf6bc1 |
78173cd4 | 05-May-2023 |
Ed Tanous <edtanous@google.com> |
Update boost 1.81 -> 1.82
The latest yocto update pulled in the new boost version. Update it.
Signed-off-by: Ed Tanous <edtanous@google.com> Change-Id: Idb39a2ac496b6c1e54cd6c87682c7847e7f848a8 |
73b3ee91 | 24-Apr-2023 |
Patrick Williams <patrick@stwcx.xyz> |
build-unit-test-docker: move homedir with usermod
When the uid already exists, we do a usermod instead of a useradd, but this does not create the new home directory. We need to pass the `-m` argume
build-unit-test-docker: move homedir with usermod
When the uid already exists, we do a usermod instead of a useradd, but this does not create the new home directory. We need to pass the `-m` argument in order to move the old home directory to the new location.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I9f2cabe982af0b09d3c3f65dcd3a0acb6b8f3591
show more ...
|
575b5e4c | 14-Apr-2023 |
Jagpal Singh Gill <paligill@gmail.com> |
build-unit-test-docker: Use curl for getting keys
apt-key fails to get keys when behind a firewall. Use curl to get keys via http proxy and add them using apt-key add.
Tested: docker build and run
build-unit-test-docker: Use curl for getting keys
apt-key fails to get keys when behind a firewall. Use curl to get keys via http proxy and add them using apt-key add.
Tested: docker build and run using "scripts/build-unit-test-docker".
Change-Id: I3fa3e4cdd326681b72a77ac251de76a9359ce706 Signed-off-by: Jagpal Singh Gill <paligill@gmail.com>
show more ...
|
71924fdb | 12-Apr-2023 |
Andrew Jeffery <andrew@aj.id.au> |
unit-test: Make UBSAN kill tests
Continuing to exploit the runtime library means we get useful diagnostics printed rather than just the application generating a core.
Change-Id: I0b93e61bbca48eb5a7
unit-test: Make UBSAN kill tests
Continuing to exploit the runtime library means we get useful diagnostics printed rather than just the application generating a core.
Change-Id: I0b93e61bbca48eb5a79ba6fa9228431d36504f64 Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
show more ...
|
cebaea28 | 12-Apr-2023 |
Patrick Williams <patrick@stwcx.xyz> |
unit-test: add meson version check for get_variable
Some repositories are using the newer `get_variable` call in meson without a keyword argument. This requires meson 0.58 or later. I've contribut
unit-test: add meson version check for get_variable
Some repositories are using the newer `get_variable` call in meson without a keyword argument. This requires meson 0.58 or later. I've contributed fixes for all repositories under the `meson_deprecated_pkgconfig` topic and so am also adding a CI catch to prevent future regressions.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I9465c3946825ec96d0c934635685e85d74fdf4ee
show more ...
|
5e4d8402 | 11-Apr-2023 |
Patrick Williams <patrick@stwcx.xyz> |
build-unit-test-docker: switch to ubuntu:lunar
Besides the usual changes, upgrade requires the following:
- remove liburing2-dbgsym - package no longer exists - pip3 add `--break-system-packages` -
build-unit-test-docker: switch to ubuntu:lunar
Besides the usual changes, upgrade requires the following:
- remove liburing2-dbgsym - package no longer exists - pip3 add `--break-system-packages` - pip3 will no longer install content at the system level without this.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: Ic84e19c7c0f0e3be0057126d562b4aab00392aaf
show more ...
|
67cc0616 | 11-Apr-2023 |
Patrick Williams <patrick@stwcx.xyz> |
build-unit-test-docker: handle existing user/group
Ubuntu Lunar docker images contain a 'ubuntu' user and group by default at 1000. The current code will skip creating a user if the gid/uid already
build-unit-test-docker: handle existing user/group
Ubuntu Lunar docker images contain a 'ubuntu' user and group by default at 1000. The current code will skip creating a user if the gid/uid already exist but then attempt to `chown` a path to the `{username}:{username}` that it didn't create (which fails).
Rather than do-nothing if the gid/uid already exist, use groupmod and usermod to modify those as appropriate.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: Ie07146be1bd2ce9bce2aac818da2f01665dba890
show more ...
|
0044f69c | 10-Apr-2023 |
Patrick Williams <patrick@stwcx.xyz> |
build-unit-test-docker: update meson to 1.0.1
The version in poky is currently 1.0.1, so upgrade to that for consistency.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I39cae4bcb0c
build-unit-test-docker: update meson to 1.0.1
The version in poky is currently 1.0.1, so upgrade to that for consistency.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I39cae4bcb0cb8578fe621851597cb467d8055d4f
show more ...
|
818023df | 10-Apr-2023 |
Patrick Williams <patrick@stwcx.xyz> |
build-unit-test-docker: turn 'pip3 install' calls into one invocation
Future Ubuntu is going to require us to pass in a parameter to `pip3 install`. Reduce the number of RUN commands to simplify th
build-unit-test-docker: turn 'pip3 install' calls into one invocation
Future Ubuntu is going to require us to pass in a parameter to `pip3 install`. Reduce the number of RUN commands to simplify that future invocation.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I9f5d4d6b43c637dbfeb6beaadfb5bf80f82cefc3
show more ...
|
4920cb53 | 12-Apr-2023 |
Patrick Williams <patrick@stwcx.xyz> |
boot-qemu: shellcheck fix
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: Ic13f10cf1393cb3d55e2f33c49abdf5918892832 |
adad26ea | 10-Apr-2023 |
Patrick Williams <patrick@stwcx.xyz> |
build-unit-test-docker: remove openbmc/linux dependency
Downloading the entire openbmc/linux repository is pretty slow due to the way the Github CDN works on these kinds of files (and how large it i
build-unit-test-docker: remove openbmc/linux dependency
Downloading the entire openbmc/linux repository is pretty slow due to the way the Github CDN works on these kinds of files (and how large it is). On my home connection I typically see ~100kbps on this download, which would equate to over 15 minutes of a download.
This was originally done so that we could get kernel headers for interfaces that we didn't have upstreamed yet but everything is now upstreamed so this is not necessary.
If this becomes necessary again in the future, it would be better to explicitly download specific headers from the respository instead of attempting to get the entire thing.
Tested:
The necessary headers are now provided by `linux-libc-dev`: ``` $ docker run --rm -it openbmc/ubuntu-unit-test:2023-W15-c977bb8f48b9ee3b root@e20efded42fb:/# dpkg -S /usr/include/linux/ipmi_bmc.h linux-libc-dev:amd64: /usr/include/linux/ipmi_bmc.h root@e20efded42fb:/# dpkg -S /usr/include/linux/bt-bmc.h linux-libc-dev:amd64: /usr/include/linux/bt-bmc.h ```
Also manually ran `btbridge` and `ipmbbridge` under the `run-unit-test-docker.sh` with successful results.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I7689c59e6cb290ac1a703cbf7994d2d9b6434482
show more ...
|
524a331c | 05-Apr-2023 |
Manojkiran Eda <manojkiran.eda@gmail.com> |
Add libaudit-dev package to the base container
There has been work going on in bmcweb to leverage linux libaudit framework for auditlogging. The idea behind this commit is to add the libaudit-dev pa
Add libaudit-dev package to the base container
There has been work going on in bmcweb to leverage linux libaudit framework for auditlogging. The idea behind this commit is to add the libaudit-dev package into the CI base container to let the bmcweb commits pass CI.
libaudit-dev package contains the header files & static library for security auditing.
Change-Id: Iac7b5089aa8788dabb1554c01cb4dcf12bb44ac9 Signed-off-by: Manojkiran Eda <manojkiran.eda@gmail.com>
show more ...
|
d0dabc3e | 04-Apr-2023 |
Andrew Geissler <geissonator@yahoo.com> |
docker:buildkit: ensure container build output is generated
Some newer distributions are moving to buildkit which is an improved backend to docker that replaces the legacy builder. This new backend
docker:buildkit: ensure container build output is generated
Some newer distributions are moving to buildkit which is an improved backend to docker that replaces the legacy builder. This new backend builder has different rules on what it outputs to the console as it builds an image.
To ensure we get the normal verbose output we're used to, set the BUILDKIT_PROGRESS env variable.
There's also a parameter you can pass to docker build (--progress) but it doesn't appear in the --help of older docker build commands so it's best to just utilize the env variable option.
Change-Id: I520c0b933f920b05937e68a76fb7bd02ff889bc4 Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
show more ...
|
688f837a | 02-Mar-2023 |
Brad Bishop <bradleyb@fuzziesquirrel.com> |
cppcheck: enable inline-suppr
Allow inline suppression of cppcheck errors for special cases. Some example use cases might be:
- suppress accessMoved in a unit test for a move constructor (ensuring
cppcheck: enable inline-suppr
Allow inline suppression of cppcheck errors for special cases. Some example use cases might be:
- suppress accessMoved in a unit test for a move constructor (ensuring the moved from object is in the expected state). - suppress noExplicitConstructor for RAII types where implicit conversion is intentional and desired.
Change-Id: I560d780fdf9266dc54662a9eeb6ed6986fc271a8 Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
show more ...
|
1eb1994b | 10-Feb-2023 |
Ed Tanous <edtanous@google.com> |
Run clang-tidy in meson
Meson has built in functionality for running clang-tidy. It improves on run-clang-tidy because it will also run each header file individually, rather than relying on their #
Run clang-tidy in meson
Meson has built in functionality for running clang-tidy. It improves on run-clang-tidy because it will also run each header file individually, rather than relying on their #inclusion into a src file, which can find far more missing #includes, and seems to find more issues in complex source files (unclear why).
Tested: I've walked through all the repos that have a .clang-tidy, and I've systematically fixed the issues, so hopefully this change has no impact. I have yet to see this cause any functional impact.
Signed-off-by: Ed Tanous <edtanous@google.com> Change-Id: I62520056192d876938ddab4d7cdafc954fa1806d
show more ...
|
45b21528 | 14-Feb-2023 |
Patrick Williams <patrick@stwcx.xyz> |
black: remove --preview
The --preview option is more likely to cause churn in our Python formatting. Disable it.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I96e6e7fbd6607c478ca
black: remove --preview
The --preview option is more likely to cause churn in our Python formatting. Disable it.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I96e6e7fbd6607c478ca38c5de8a0db0c30b180a5
show more ...
|