History log of /openbmc/openbmc-build-scripts/build-setup.sh (Results 1 – 25 of 115)
Revision Date Author Comments
# 5b1afd92 25-Feb-2025 Andrew Geissler <geissonator@yahoo.com>

build-setup.sh: prevent git clone when only building container

When someone wants to just build the container, there's no need to clone
openbmc.

Tested:
- Confirmed no clone when CONTAINER_ONLY set

build-setup.sh: prevent git clone when only building container

When someone wants to just build the container, there's no need to clone
openbmc.

Tested:
- Confirmed no clone when CONTAINER_ONLY set to true
- Confirmed a clone when CONTAINER_ONLY is not set

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

show more ...


# 4ffec1ac 21-Jan-2025 Andrew Geissler <geissonator@yahoo.com>

build-setup.sh: remove ARCH from container name

We removed the architecture check a while ago. Remove it from the
container name so we stop getting weird names like
openbmc/ubuntu:latest-p10bmc-

Te

build-setup.sh: remove ARCH from container name

We removed the architecture check a while ago. Remove it from the
container name so we stop getting weird names like
openbmc/ubuntu:latest-p10bmc-

Tested:
- Confirmed we now get openbmc/ubuntu:latest-p10bmc for a container name

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

show more ...


# c75b5431 10-Dec-2024 Andrew Geissler <geissonator@yahoo.com>

build-setup.sh replace liblz4-tool with lz4

This script is failing with the latest Ubuntu Oracular release:
```
Package liblz4-tool is not available, but is referred to by another package.
This may

build-setup.sh replace liblz4-tool with lz4

This script is failing with the latest Ubuntu Oracular release:
```
Package liblz4-tool is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

Package 'liblz4-tool' has no installation candidate
```

Seems the tool we need is just in the standard lz4 package now.

Tested:
- Confirmed container now builds with Oracular

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

show more ...


# fb45daa4 09-Oct-2024 Andrew Geissler <geissonator@yahoo.com>

make aws default docker registry in remaining scripts

AWS has much better anonymous pull request limits (1 per second) vs
docker hub which is 100 per 6 hours per IP address. A lot of our CI and
deve

make aws default docker registry in remaining scripts

AWS has much better anonymous pull request limits (1 per second) vs
docker hub which is 100 per 6 hours per IP address. A lot of our CI and
development occurs on shared systems so it's easy to exceed this limit
on an IP basis.

Tested:
- Verified no setting for DOCKER_REG and a setting of docker.io work as
expected within these scripts

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

show more ...


# b80ea07b 07-Oct-2024 Andrew Geissler <geissonator@yahoo.com>

provide docker registry override in remaining scripts

As done with fe2768c73, provide a mechanism to override the docker
registry used for our remaining docker scripts.

docker.io continues to tight

provide docker registry override in remaining scripts

As done with fe2768c73, provide a mechanism to override the docker
registry used for our remaining docker scripts.

docker.io continues to tighten control[1] on access to its registry.
Provide a mechanism within this script to utilize a different registry
for the base ubuntu image.

[1]: https://www.docker.com/blog/november-2024-updated-plans-announcement/

Tested:
- Confirmed script defaults still works as expected
- Confirmed the following also works now:
export DOCKER_REG=public.ecr.aws/ubuntu
- Confirmed where applicable that this also works(fedora):
export DOCKER_REG=public.ecr.aws/docker/library

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

show more ...


# 9096c694 02-Oct-2024 Andrew Geissler <geissonator@yahoo.com>

docker: remove architecture checks

Docker containers now handle this under the covers when you pull a
container.

Change-Id: If0062f68c53ca79735dd841ae06236c34911e081
Signed-off-by: Andrew Geissler

docker: remove architecture checks

Docker containers now handle this under the covers when you pull a
container.

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

show more ...


# 0edb68cf 24-Jun-2024 Andrew Geissler <geissonator@yahoo.com>

build-setup.sh: new option to only build the container

Starting to see incompatibilities in the latest Ubuntu releases with
older levels of code so it will be useful to have a way to utilize this
sc

build-setup.sh: new option to only build the container

Starting to see incompatibilities in the latest Ubuntu releases with
older levels of code so it will be useful to have a way to utilize this
script to build older Ubuntu release docker containers and then utilize
them on newer Ubuntu machines.

Tested:
- Verified the new env variable worked as expected
- Verified when the env variable is not set, code behaved as it used to

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

show more ...


# a6ebc6e2 17-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 ...


# 3adf1a3b 22-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 ...


# 58ad8018 21-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 ...


# 35b39a99 07-Jul-2023 Frederic Jacob <fjacob@meta.com>

build-setup.sh: Fix for Podman use

Using this script with Podman over proxy does not work
and this is the fix.
I tested it with Podman using proxy and also on Docker without proxy for
the Ubuntu and

build-setup.sh: Fix for Podman use

Using this script with Podman over proxy does not work
and this is the fix.
I tested it with Podman using proxy and also on Docker without proxy for
the Ubuntu and Fedora containers.

Change-Id: Ic5ba6eb92426bc272a82c79d103abc5a86bc580a
Signed-off-by: Frederic Jacob <fjacob@meta.com>

show more ...


# 42e1f2df 07-Jul-2023 Frederic Jacob <fjacob@meta.com>

build-setup.sh: Remove useless RUN /bin/bash

RUN /bin/bash should not be in a Dockerfile since RUN is only used at build
and /bin/bash will never return.

Change-Id: I24cbcc94fb5571e9c28e6771bb4a27d

build-setup.sh: Remove useless RUN /bin/bash

RUN /bin/bash should not be in a Dockerfile since RUN is only used at build
and /bin/bash will never return.

Change-Id: I24cbcc94fb5571e9c28e6771bb4a27d1ba104818
Signed-off-by: Frederic Jacob <fjacob@meta.com>

show more ...


# 865a0916 07-Jul-2023 Frederic Jacob <fjacob@meta.com>

build-setup.sh: Add mising pkg for Fedora

Add missing pkgs required to build using Fedora base image.

Change-Id: Ia8022b22dbd5c948b525a6a7e7c0beb9e1f94dbf
Signed-off-by: Frederic Jacob <fjacob@meta

build-setup.sh: Add mising pkg for Fedora

Add missing pkgs required to build using Fedora base image.

Change-Id: Ia8022b22dbd5c948b525a6a7e7c0beb9e1f94dbf
Signed-off-by: Frederic Jacob <fjacob@meta.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 ...


# afdc0547 31-Mar-2023 Andrew Geissler <geissonator@yahoo.com>

build-setup: support podman

We have some Redhat servers I'm interested in using for OpenBMC builds.
With just the minor change in this commit, I was able to get openbmc to
successfully build on a RH

build-setup: support podman

We have some Redhat servers I'm interested in using for OpenBMC builds.
With just the minor change in this commit, I was able to get openbmc to
successfully build on a RH8 system which points "docker" to the podman
executable.

The failure without this commit is the following:
```
Error: runc: runc create failed: unable to start container process: exec: "/home/geissonator/89239843/build.sh": stat /home/geissonator/89239843/build.sh: permission denied: OCI permission denied
```

Some online searching brought me to this --userns parameter. Setting
this env variable fixed the issues on the RH8 system.

Tested:
- Confirmed openbmc will build on RH8 system with podman
- Confirmed openbmc still builds on Ubuntu system

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

show more ...


# 4b9df8d1 06-Jan-2023 Andrew Geissler <geissonator@yahoo.com>

build-setup: reduce cpu usage by bitbake

It turns out the --cpus option to the docker command line does not make
it appear like there are less CPU's in the docker container, it simply
reduces the ti

build-setup: reduce cpu usage by bitbake

It turns out the --cpus option to the docker command line does not make
it appear like there are less CPU's in the docker container, it simply
reduces the time slice docker gets on each CPU. Reducing the num_cpu
value actually can cause more issues because it makes each bitbake
operation take longer to run, thus prolonging how much memory each
operation is taking.

Move the num_cpu parameter to the bitbake conf file so it reduces the
number or bitbake operations and amount of cpu's each operation gets.

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

show more ...


# b729142e 14-Dec-2022 Andrew Geissler <geissonator@yahoo.com>

build-setup: add vim to bitbake build container

There are times when interactively working within a bitbake docker
container that having vim available is useful.

Change-Id: I7950064d277bd5ed394ff50

build-setup: add vim to bitbake build container

There are times when interactively working within a bitbake docker
container that having vim available is useful.

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

show more ...


# 476a7e99 06-Dec-2022 Patrick Williams <patrick@stwcx.xyz>

format shell scripts with beautysh

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


# 36a12ec4 04-May-2022 Andrew Geissler <geissonator@yahoo.com>

build-setup.sh: remove python

Started seeing this with recent fresh builds:

16:24:36 Package python is not available, but is referred to by another package.
16:24:36 This may mean that the package

build-setup.sh: remove python

Started seeing this with recent fresh builds:

16:24:36 Package python is not available, but is referred to by another package.
16:24:36 This may mean that the package is missing, has been obsoleted, or
16:24:36 is only available from another source
16:24:36 However the following packages replace it:
16:24:36 python2-minimal python2 dh-python 2to3 python-is-python3

Remove python from our build script. This apparently brought in the file
package for free so explicitly include that now.

Tested:
- Verified build-setup.sh can now build the docker image and start a
bitbake on a system that was not working previously

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

show more ...


# 625f285d 27-Apr-2022 Patrick Williams <patrick@stwcx.xyz>

bitbake: continue on failure

Add '-k' option to bitbake invocations to get Jenkins builds to continue
after falure as much as possible. This gives us a greater view of
everything that is broken rat

bitbake: continue on failure

Add '-k' option to bitbake invocations to get Jenkins builds to continue
after falure as much as possible. This gives us a greater view of
everything that is broken rather than just the first bitbake task which
encountered a problem, hopefully allowing more problems to be fixed at
once.

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

show more ...


# f98f1a8d 21-Dec-2021 Thang Q. Nguyen <thang@os.amperecomputing.com>

Use native docker images for scripts on aarch64 Host OS

Commit 051b05b7 support aach64 Host OS to execute scripts. However, it
does not set DOCKER_BASE parameter which consequently uses x86_64 docke

Use native docker images for scripts on aarch64 Host OS

Commit 051b05b7 support aach64 Host OS to execute scripts. However, it
does not set DOCKER_BASE parameter which consequently uses x86_64 docker
images instead of arm64v8 image.
This commit sets DOCKER_BASE to arm64v8/ to use native docker images.

Tested:
1. Set environment variables appropriately and execute scripts. Ensure
all docker images loaded successfully and scripts can execute without
issue.

Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I3c09d448dae17f290f2c2fd1d8116167510635b6

show more ...


# 051b05b7 10-Dec-2021 Thang Q. Nguyen <thang@os.amperecomputing.com>

Add support aarch64 architecture

Support to run scripts in aarch64 Host Linux.

Tested: execute the scripts changed in this commit in Aarch64 Host
Ubuntu OS and check they can execute successfully

Add support aarch64 architecture

Support to run scripts in aarch64 Host Linux.

Tested: execute the scripts changed in this commit in Aarch64 Host
Ubuntu OS and check they can execute successfully

Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: Idde23fbd09c5000c710f4f6d88793fefbb0cb04c

show more ...


# 50b3f98d 26-Oct-2021 Patrick Williams <patrick@stwcx.xyz>

repotest: run inside Docker

Run the openbmc repotest from within the normal unit-test Docker
environment. This ensures that the repotest is abstracted from the
Jenkins node that ends up taking the

repotest: run inside Docker

Run the openbmc repotest from within the normal unit-test Docker
environment. This ensures that the repotest is abstracted from the
Jenkins node that ends up taking the job AND it allows us to use the
same linting tools used in the normal unit-test environment.

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

show more ...


# 3db632c5 25-Oct-2021 Patrick Williams <patrick@stwcx.xyz>

repotest: remove extension

The commit openbmc/openbmc@4e8877ee removed the extension as the default
variant of this script name. Update the tools to match.

Signed-off-by: Patrick Williams <patrick

repotest: remove extension

The commit openbmc/openbmc@4e8877ee removed the extension as the default
variant of this script name. Update the tools to match.

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

show more ...


# d3c516b8 19-Aug-2021 Ed Tanous <edtanous@google.com>

Add the concept of a "repo test"

This commit adds a custom target called "repotest" to the build scripts,
which triggers tests to be run on the openbmc/openbmc repository. It
attempts to call the

Add the concept of a "repo test"

This commit adds a custom target called "repotest" to the build scripts,
which triggers tests to be run on the openbmc/openbmc repository. It
attempts to call the script in meta-phosphor, being added in this
commit. https://gerrit.openbmc-project.xyz/c/openbmc/openbmc/+/46743
Adding the custom target isn't the obvious approach, but considering
that the jenkins job is currently a multi-axis build, and we only want
to run this test once, it seemed like the best option, although I'm open
to alternatives.

This will need an update to add repotest to the jenkins axis before
these builds will start enforcing.

Tested:
Ran target=repotest ./build-setup.sh
and saw "Repo test passed" in the output.

Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: I6caef6c28ee70f3c6194b9ea96cda8cfb58eb443

show more ...


12345