History log of /openbmc/openbmc-build-scripts/ (Results 51 – 75 of 956)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
effe508005-Jun-2024 George Keishing <gkeishin@in.ibm.com>

Robot Framework 7.0 changes for HW CI build script

Changes:
- Update robot package version to 7.0

Tested:
- Tested on sandbox.
- Tested on jenkins setup for HW CI

Change-Id: Ie51df

Robot Framework 7.0 changes for HW CI build script

Changes:
- Update robot package version to 7.0

Tested:
- Tested on sandbox.
- Tested on jenkins setup for HW CI

Change-Id: Ie51df09dc11585c91856eadc2dba05b09e11543c
Signed-off-by: George Keishing <gkeishin@in.ibm.com>

show more ...

a6ebc6e217-Jun-2024 Manojkiran Eda <manojkiran.eda@gmail.com>

Fix spelling mistakes using codespell

This commit corrects various spelling mistakes throughout the
repository. The corrections were made automatically using `codespell`[1]
tool.

[1]: https://githu

Fix spelling mistakes using codespell

This commit corrects various spelling mistakes throughout the
repository. The corrections were made automatically using `codespell`[1]
tool.

[1]: https://github.com/codespell-project/codespell

Change-Id: Ia6b70713d3e9b77d6fd2d9400489ef7f02360364
Signed-off-by: Manojkiran Eda <manojkiran.eda@gmail.com>

show more ...

f3d27e6409-Apr-2024 Andrew Geissler <geissonator@yahoo.com>

build-unit-test-docker: ensure we stop on first branch

Ran into an issue where we were creating our root branch (i.e. 1110) and
then creating some snapshot branches (i.e. 1110-snapshot-xyz). The
scr

build-unit-test-docker: ensure we stop on first branch

Ran into an issue where we were creating our root branch (i.e. 1110) and
then creating some snapshot branches (i.e. 1110-snapshot-xyz). The
script would end up using that snapshot branch.

Lots of potential discussion to be had on our branch creations decisions
but either way, best to make sure we match with the exact branch
being passed in.

Tested:
- Confirmed over in ibm-openbmc/openbmc that we pick up expected
branches now.

Change-Id: I71099f42ca40bfd9fe719a550349eba82000133d
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>

show more ...

8dd1bfe627-May-2024 Ewelina Walkusz <ewelinax.walkusz@intel.com>

build-unit-test-docker: Add socat

Adding possibility to use socat in the SSH configuration.

Resolves openbmc/openbmc-build-scripts#36

Tested:
run-unit-test-docker.sh runs with EXTRA_DOCKER_RUN_ARG

build-unit-test-docker: Add socat

Adding possibility to use socat in the SSH configuration.

Resolves openbmc/openbmc-build-scripts#36

Tested:
run-unit-test-docker.sh runs with EXTRA_DOCKER_RUN_ARGS=
"-v /home/user/.gitconfig:/home/user/.gitconfig
-v /home/user/.ssh:/home/user/.ssh"

Change-Id: I45e9279c5e3bd3bfc59113bc41ba2abfd7eb1bfa
Signed-off-by: Ewelina Walkusz <ewelinax.walkusz@intel.com>

show more ...

d0757dea27-May-2024 Xinnan Xie <xiexinnan@bytedance.com>

build-unit-test-docker: eslint-plugin-json: pin to v3.1.0

The new v4.0.0 release does not work with an error like this:
```
Error: ESLint configuration in --config » plugin:json/recommended-with-com

build-unit-test-docker: eslint-plugin-json: pin to v3.1.0

The new v4.0.0 release does not work with an error like this:
```
Error: ESLint configuration in --config » plugin:json/recommended-with-comments is invalid:
- Unexpected top-level property "files".
```
Pin eslint-plugin-json to v3.1.0 to solve this.

Change-Id: I773c9c0bda3b87cca92e69089ea37fb20f563ab9
Signed-off-by: Xinnan Xie <xiexinnan@bytedance.com>

show more ...

3adf1a3b22-May-2024 Andrew Geissler <geissonator@yahoo.com>

build-setup.sh: only delete ubuntu user when present

A previous commit (58ad8018e), added code to delete the new "ubuntu"
user in the more recent ubuntu distributions. Unfortunately that
introduces

build-setup.sh: only delete ubuntu user when present

A previous commit (58ad8018e), added code to delete the new "ubuntu"
user in the more recent ubuntu distributions. Unfortunately that
introduces an issue if someone is using an older ubuntu distribution.
The new "ubuntu" user is not present so the delete command fails:
```
"userdel: user 'ubuntu' does not exist"
```

Only delete the user if it's present in the image.

Tested:
- Confirmed script works on old and new ubuntu containers

Change-Id: I9ea89cd82d7ae6d71271ec59aac8cdf98bfca7c2
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>

show more ...

58ad801821-May-2024 Andrew Geissler <geissonator@yahoo.com>

build-setup.sh: remove new default ubuntu user

If the user running build-setup.sh happens to have a UID of 1000 (which
is the case in a lot of dedicated CI machines) then it will no longer be
able t

build-setup.sh: remove new default ubuntu user

If the user running build-setup.sh happens to have a UID of 1000 (which
is the case in a lot of dedicated CI machines) then it will no longer be
able to build OpenBMC using the latest Ubuntu containers due to a new
default "ubuntu" user being added to the images.

It will get the following error when trying to start the container:
```
useradd: UID 1000 is not unique
```

This new "feature" is documented up here:
https://bugs.launchpad.net/cloud-images/+bug/2005129

This change utilizes the solution put forth by the bug owner of just
deleting the new default user. It does result in the following harmless
warning:
```
userdel: ubuntu mail spool (/var/mail/ubuntu) not found
```

A different solution was chosen in 67cc06169 but it's not working in
this sh script so stick to the simple solution here.

Tested:
- Confirmed build-setup.sh runs again with users that have a UID of 1000

Change-Id: I3f8c691fad2778a17e23c2d4e45eb86af7a78556
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>

show more ...

34b4f1cb19-May-2024 Andrew Jeffery <andrew@codeconstruct.com.au>

scripts: unit-test: Make valgrind exit failure on error

By default valgrind exits with the exit status of the process under
examination. From the manual[1]:

> --error-exitcode=<number> [default: 0

scripts: unit-test: Make valgrind exit failure on error

By default valgrind exits with the exit status of the process under
examination. From the manual[1]:

> --error-exitcode=<number> [default: 0]
>
> Specifies an alternative exit code to return if Valgrind reported any
> errors in the run. When set to the default value (zero), the return
> value from Valgrind will always be the return value of the process
> being simulated. When set to a nonzero value, that value is returned
> instead, if Valgrind detects any errors. This is useful for using
> Valgrind as part of an automated test suite, since it makes it easy
> to detect test cases for which Valgrind has reported errors, just
> by inspecting return codes. When set to a nonzero value and Valgrind
> detects no error, the return value of Valgrind will be the return
> value of the program being simulated.

[1]: https://valgrind.org/docs/manual/manual-core.html#manual-core.options

The default value of 0 is not actually useful for CI, where we want it
to bubble up a failure if poor behavior is detected.

Change-Id: I6e7c56b9ccee5c8f9c5234df19ab84009868ff88
Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>

show more ...

8bf1ecd716-May-2024 Andrew Jeffery <andrew@codeconstruct.com.au>

scripts: unit-test: Constrain test setups to current project

self.package now reflects the top-level meson project name. Using this,
prevent incorrect propagation of configuration into subprojects u

scripts: unit-test: Constrain test setups to current project

self.package now reflects the top-level meson project name. Using this,
prevent incorrect propagation of configuration into subprojects using
the usual meson scope syntax.

Further, now that we're using the scope syntax, meson outputs a
different error message:

```
$ meson test --setup=stdplus:__likely_not_a_setup__ -C build __likely_not_a_test__
Unknown test setup 'stdplus:__likely_not_a_setup__'.
```

Adjust the regex that performs the setup error test.

Change-Id: Ia15c0406323f025fff318cb1c1e4a92605d19c96
Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>

show more ...

fdfd8d4815-May-2024 Andrew Jeffery <andrew@codeconstruct.com.au>

scripts: unit-test: Replace outdated timeout logic

Back in 2019 William added a new code-path for exploiting a meson
project's 'valgrind' test setup, if one existed[1]:

[1]: https://github.com/open

scripts: unit-test: Replace outdated timeout logic

Back in 2019 William added a new code-path for exploiting a meson
project's 'valgrind' test setup, if one existed[1]:

[1]: https://github.com/openbmc/openbmc-build-scripts/commit/49d4e594e8959cd8764

At the time, the behavior of `meson test -t 0 ...` was to immediately
terminate. This was useful in the context of testing whether a project
provided the a particular test setup, as we could invoke `meson test -t
0 --setup=<name>` without any significant impact on CI execution time.

However, as of meson 0.57.0 the behavior of `meson test -t 0`
changed[2]:

> test() timeout and timeout_multiplier value <= 0
>
> test(..., timeout: 0), or negative value, used to abort the test
> immediately but now instead allow infinite duration. Note that
> omitting the timeout keyword argument still defaults to 30s timeout.
>
> Likewise, add_test_setup(..., timeout_multiplier: 0), or meson test
> --timeout-multiplier 0, or negative value, disable tests timeout.

[2]: https://mesonbuild.com/Release-notes-for-0-57-0.html#test-timeout-and-timeout_multiplier-value-0

The consequence of the change is that the test for the existence of the
named setup in the project now executes the test suite with timeouts
disabled when the named setup is provided by the project at hand.

Further, having established that the named setup is supported by the
project, the script then executes the test suite _again_[^1].

A useful observation at this point is the the output from the following
set of commands, using stdplus[3] as an example:

```
$ meson test --setup=__likely_not_a_setup__ -C build __likely_not_a_test__
Test setup '__likely_not_a_setup__' not found from project 'stdplus'.
$ meson test --setup=valgrind -C build __likely_not_a_test__
ERROR: *:__likely_not_a_test__ test name does not match any test
```

[3]: https://github.com/openbmc/stdplus

Using an unlikely test name we make it likely that we error out in the
case where the named test setup is supported by the project. We use this
as a substitute for the old behavior of `-t 0`.

[^1]: Though at least it sets a timeout multiplier of 10, rather than
disabling the timeout.

Tested: Ran the CI container against:

- entity-manager, which does not define a 'valgrind' test setup
- stdplus, which does define a 'valgrind' test setup

Verified that `meson test` was invoked with `--wrapper valgrind` for
entity-manager, and `--setup valgrind` for stdplus.

Change-Id: I78090716dd2842e6f4485a69f353d15ca11b62d1
Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>

show more ...

bf83a1b315-May-2024 Andrew Jeffery <andrew@codeconstruct.com.au>

scripts: unit-test: Derive package name from meson.build

The implementation for package name derivation implemented in
BuildSystem.__init__() simply takes the basename of the directory
containing th

scripts: unit-test: Derive package name from meson.build

The implementation for package name derivation implemented in
BuildSystem.__init__() simply takes the basename of the directory
containing the source code if another name isn't supplied.

For meson builds we can make a smarter choice, and the result is that
we can lift the requirement that the directory be named after the
project. This is helpful for some workflows where the CI container is
run locally.

By introspecting the build configuration we can extract the meson
project name. Defining the package name as the project name is useful
for meson command invocations. For example, the project name can be used
to specify constraints on build variables (`-D<project>:werror=false`)
and test setups (`--setup=<project>:valgrind`), preventing configuration
from incorrectly propagating into other (sub)projects.

Override the package name once the build configuration is available.

Change-Id: I52dc03253a54589cba0ff2fae5ddba2a74d458ba
Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>

show more ...

88dd792902-May-2024 Jonathan Doman <jonathan.doman@intel.com>

Capture stderr from docker build

BuildKit sends build messages to stderr and python `sh` does nothing
with it. Redirect stderr to our custom printer function to put
everything in the same stream.

C

Capture stderr from docker build

BuildKit sends build messages to stderr and python `sh` does nothing
with it. Redirect stderr to our custom printer function to put
everything in the same stream.

Change-Id: Id862154be7ef845a758c5f2248f47a8c6d4de7e2
Signed-off-by: Jonathan Doman <jonathan.doman@intel.com>

show more ...

abb106a904-Apr-2024 Ed Tanous <ed@tanous.net>

Update nghttp2 1.57->1.61

Change-Id: I8491dd58fb4f197c127624119a67ee0814363935
Signed-off-by: Ed Tanous <ed@tanous.net>

f9df2daf08-Apr-2024 Andrew Geissler <geissonator@yahoo.com>

build-unit-test-docker:eslint: pin to v8.56.0

The new v9.0 release change the API and our existing use of it no longer
works with an error like this:

```
Invalid option '--eslintrc' - perhaps you m

build-unit-test-docker:eslint: pin to v8.56.0

The new v9.0 release change the API and our existing use of it no longer
works with an error like this:

```
Invalid option '--eslintrc' - perhaps you meant '--ignore'?
```

Until we have some time to sort this out, move us back to the previous
release.

Change-Id: Ieed62b82bb3870c22bb377f562fb75b148395cee
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>

show more ...

ac912df801-Apr-2024 Patrick Williams <patrick@stwcx.xyz>

jenkins: use uploader for validation

In order to determine if a user is authorized for CI, we look them up in
Gerrit groups. We should use the uploader for this and not the owner,
because otherwise

jenkins: use uploader for validation

In order to determine if a user is authorized for CI, we look them up in
Gerrit groups. We should use the uploader for this and not the owner,
because otherwise anyone with a Gerrit account could forge a patch-set
that was created by an authorized committer and get Jenkins to do the
testing (when it should not have been).

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I4fc8415dee35004ebb68b2aea040be27bf521168

show more ...

25ba1e2f24-Mar-2024 William A. Kennington III <wak@google.com>

build-unit-test-docker: Protobuf versions should match

The python protobuf version should match the compiler and library
version, or else we will run into API issues.

Change-Id: Iba9472123734cb1015

build-unit-test-docker: Protobuf versions should match

The python protobuf version should match the compiler and library
version, or else we will run into API issues.

Change-Id: Iba9472123734cb1015c0d2f0dc72bd18be660355
Signed-off-by: William A. Kennington III <wak@google.com>

show more ...

176b9eba11-Mar-2024 Ed Tanous <ed@tanous.net>

Remove valgrind-dbgsym

This package doesn't seem to exist anymore and results in

```base: E: Unable to locate package valgrind-dbgsym```

when trying to build.

From the ubuntu maintainers, this do

Remove valgrind-dbgsym

This package doesn't seem to exist anymore and results in

```base: E: Unable to locate package valgrind-dbgsym```

when trying to build.

From the ubuntu maintainers, this doesn't seem necessary anymore

```
If you are on Ubuntu Jammy (22.04) or later, you do not need to
worry about installing debug symbol packages anymore. The
Ubuntu project maintains a Debuginfod server, and GDB and other
debuginfo-consumer applications support it out of the box. For
more information about it, please refer to this page.

If you are on Ubuntu Noble (24.04) or later, Debuginfod is the
preferred method as the following information is outdated and, due
to a new format for the sources.list entries being moved to the
deb822 format.

https://wiki.ubuntu.com/Debug%20Symbol%20Packages#Debuginfod
```

Change-Id: Ib7d221763b30d433c19cfad7fe3b8462ffcb7383
Signed-off-by: Ed Tanous <ed@tanous.net>
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>

show more ...

2b2f4f1711-Mar-2024 Andrew Geissler <geissonator@yahoo.com>

userid-validation: add triple crown

CLA recently submitted and accepted

Change-Id: I2e29af28dc4273e5f8a95903f9145ef77c44df6c
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>

3eafe34714-Feb-2024 Rahul Maheshwari <rahulmaheshwari@in.ibm.com>

Adding libdbus-glib-1-2 install to fix Firefox installation issue

Installing libdbus-glib-1-2 facilitates a smooth and functional
Firefox experience on Linux systems. With this change robot
GUI test

Adding libdbus-glib-1-2 install to fix Firefox installation issue

Installing libdbus-glib-1-2 facilitates a smooth and functional
Firefox experience on Linux systems. With this change robot
GUI test cases would again start working fine.

Change-Id: I808a54d75e3b6b92f284920ba2cf5fad648dee22
Signed-off-by: Rahul Maheshwari <rahulmaheshwari@in.ibm.com>

show more ...

ab4fee8331-Jan-2024 Jonathan Doman <jonathan.doman@intel.com>

build-unit-test-docker: Run ldconfig

The preinstalled packages are copied to /usr/local but ld is not aware
of these libraries until ldconfig is run. This makes the container more
useful for interac

build-unit-test-docker: Run ldconfig

The preinstalled packages are copied to /usr/local but ld is not aware
of these libraries until ldconfig is run. This makes the container more
useful for interactive use out of the box.

Tested:
== Before ==
docker$ ldd /usr/local/lib/libboost_coroutine.so | grep 'not found'
libboost_context.so.1.84.0 => not found

== After ==
docker$ ldd /usr/local/lib/libboost_coroutine.so | grep 'not found'
docker$

Change-Id: I3f6508ad6068df03206b6c405532c0230dd95d8d
Signed-off-by: Jonathan Doman <jonathan.doman@intel.com>

show more ...

83d69a2a24-Jan-2024 Paul Fertser <fercerpav@gmail.com>

ci: fix gagar-in group name

The original group name gager-in had a typo so it was renamed on Gerrit
and now needs to be fixed here to allow CI.

Change-Id: I3adcd8e710fe6eb3a49535f084d2e9a004aab3ff

ci: fix gagar-in group name

The original group name gager-in had a typo so it was renamed on Gerrit
and now needs to be fixed here to allow CI.

Change-Id: I3adcd8e710fe6eb3a49535f084d2e9a004aab3ff
Signed-off-by: Paul Fertser <fercerpav@gmail.com>

show more ...

7cb6995717-Jan-2024 Andrew Geissler <geissonator@yahoo.com>

build-qemu-robot-docker: pin robotframework to v6

A new major release of the robotframework was recently released (v7).
This new release appears to not be playing well with our jenkins code
update j

build-qemu-robot-docker: pin robotframework to v6

A new major release of the robotframework was recently released (v7).
This new release appears to not be playing well with our jenkins code
update job. The robot plugin is showing the following fail:

```
Archiving artifacts
Robot results publisher started...
-Parsing output xml:
Done!
-Copying log files to build dir:
Done!
-Assigning results to build:
ERROR: Build step failed with exception
java.lang.NullPointerException
Build step 'Publish Robot Framework test results' marked build as failure
```

Until we understand this better, pin our CI to the v6 level

Change-Id: Ibe4f11a04fa8af5c435a02635916106c59419196
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>

show more ...

308091da12-Jan-2024 Andrew Geissler <geissonator@yahoo.com>

userid-validation: adapt to new gerrit email permission

The latest gerrit no longer allows users without account modification
permissions to look up users with secondary email addresses. So if
someo

userid-validation: adapt to new gerrit email permission

The latest gerrit no longer allows users without account modification
permissions to look up users with secondary email addresses. So if
someone uploads a commit to gerrit using a secondary email, this script
no longer can determine if they are approved.

Utilize the gerrit query command to look up the username of a commit.

Tested:
- Confirmed that with this change that a previously failing autobump
commit was properly given the ok-to-test +1

Change-Id: Ia44149bb4605261bb3451d4f491051df7fd0bbd4
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>

show more ...

7d88622f12-Jan-2024 Andrew Geissler <geissonator@yahoo.com>

userid-validation: add Plexus to approved companies

CLA has been submitted and uploaded to google drive

Change-Id: Ic5ea03aa9373ce1479e62a464bc06f7fb1adde33
Signed-off-by: Andrew Geissler <geissona

userid-validation: add Plexus to approved companies

CLA has been submitted and uploaded to google drive

Change-Id: Ic5ea03aa9373ce1479e62a464bc06f7fb1adde33
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>

show more ...

1d5e00de11-Jan-2024 Jonathan Doman <jonathan.doman@intel.com>

format-code: don't spellcheck the commit author's name

Use the git-log --format option to only dump the "raw body (unwrapped
subject and body)", and omit the "commit"/"Author:"/"Date:" lines which
c

format-code: don't spellcheck the commit author's name

Use the git-log --format option to only dump the "raw body (unwrapped
subject and body)", and omit the "commit"/"Author:"/"Date:" lines which
can trigger false positives.

Tested: `format-code.sh --enable commit_spelling` doesn't reject my
commits :)

Change-Id: Ic03c1c9703a91dab9f268f5f7bbca29cabeeb067
Signed-off-by: Jonathan Doman <jonathan.doman@intel.com>

show more ...

12345678910>>...39