50 Commits

Author SHA1 Message Date
Sally MacFarlane
f0e9f409e6 Copyright Besu (#7768)
* update copyright for new files only if not matching existing patterns
* scripts too
* scripts all use Besu copyright

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

---------

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
2024-10-15 12:47:41 +10:00
Fabio Di Fabio
3dbe606172 Wait for Besu to be up before running Goss Docker test 02 (#7655)
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
2024-09-20 13:10:59 +00:00
Bhanu Pulluri
96e9873dd9 Handle hadolint check failure with proper risk assessment (#7637)
Signed-off-by: Bhanu Pulluri <bhanu.pulluri@kaleido.io>
Co-authored-by: Bhanu Pulluri <bhanu.pulluri@kaleido.io>
Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net>
2024-09-18 17:53:11 +00:00
Bhanu Pulluri
0d9fa16a1f [#4292] Fix mounted data path directory permissions for besu user (#7575)
* Fix mounted data path directory permissions for besu user

Signed-off-by: Bhanu Pulluri <bhanu.pulluri@kaleido.io>

* Add besu CLI option to output dirs needing permission update

Signed-off-by: Bhanu Pulluri <bhanu.pulluri@kaleido.io>

* run spotless apply to handle PR test failure

Signed-off-by: Bhanu Pulluri <bhanu.pulluri@kaleido.io>

* Remove newly added --print-paths-and-exit option from config file test

This option doesn't have a corresponding config file entry as it's a
standalone option to be used with docker containers

Signed-off-by: Bhanu Pulluri <bhanu.pulluri@kaleido.io>

* Add optional user argument to --print-paths-and-exit and fix directory permissions

Signed-off-by: Bhanu Pulluri <bhanu.pulluri@kaleido.io>

* Correct build.gradle changes, remove a duplicate line and extra whitespaces

Signed-off-by: Bhanu Pulluri <bhanu.pulluri@kaleido.io>

* Fix checking for user in path's group membership

Signed-off-by: Bhanu Pulluri <bhanu.pulluri@kaleido.io>

* Add platform check to restrict --print-paths-and-exit option usage to Linux and Mac

Signed-off-by: Bhanu Pulluri <bhanu.pulluri@kaleido.io>

* Apply suggestions from code review

Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: Bhanu Pulluri <59369753+pullurib@users.noreply.github.com>

---------

Signed-off-by: Bhanu Pulluri <bhanu.pulluri@kaleido.io>
Signed-off-by: Bhanu Pulluri <59369753+pullurib@users.noreply.github.com>
Co-authored-by: Bhanu Pulluri <bhanu.pulluri@kaleido.io>
Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net>
2024-09-18 09:35:00 +00:00
Fabio Di Fabio
af80e53ad9 Update Docker base image to Ubuntu 24.04 (#7251)
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
2024-06-24 10:54:34 +00:00
Sally MacFarlane
c8d01075e7 Revert "Update Dockerfile - reuse NO_PROXY_CACHE env (#7203)" (#7219)
This reverts commit dfe256e647.

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
2024-06-13 00:47:32 +00:00
Enrico Del Fante
dfe256e647 Update Dockerfile - reuse NO_PROXY_CACHE env (#7203)
* Update Dockerfile

reuse NO_PROXY_CACHE env

Signed-off-by: Enrico Del Fante <enrico.delfante@consensys.net>

* Update Dockerfile

Signed-off-by: Enrico Del Fante <enrico.delfante@consensys.net>

---------

Signed-off-by: Enrico Del Fante <enrico.delfante@consensys.net>
Co-authored-by: Usman Saleem <usman@usmans.info>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
2024-06-13 10:10:52 +10:00
daniellehrner
65b3cb1511 do not use NO_PROXY_CACHE env variable with apt-get install to avoid a linting error (#7077)
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
2024-05-08 12:37:15 +02:00
daniellehrner
033d4d6aa7 Run apt-get in docker builds without using any cache. (#7011)
* Run apt-get in docker builds without using any cache. Split steps in individual RUN commands

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* use env variable for apt non-cache settings, revert split into several RUN commands

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* clean apt-get cache after installation to decrease docker image size

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

---------

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
2024-05-08 08:44:23 +00:00
Usman Saleem
ce59da5bd5 build - Apply spotless license header checks to shell scripts (#7048)
* build - apply license to shell scripts
* build - shell script license text
* fix - Add missing shebang line in evmtool benchmark shell scripts
* build - update shell license text and spotless regexp
* build - apply license header to shell scripts
* fix - Update shebang in splitList to use bash

---------

Signed-off-by: Usman Saleem <usman@usmans.info>
2024-05-04 08:41:39 +00:00
Simon Dudley
f68db3801b Fix docker goss test (#6955)
Disable IPv6 in docker container for goss_wait test

Since docker 26.0.0, IPv6 is used by default but our goss_wait test is expecting ports to be exposed on IPv4.
Disabling IPv6 should work for all docker versions
---------

Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
Co-authored-by:  Usman Saleem <usman@usmans.info>
2024-04-17 16:30:48 +10:00
Justin Florentine
c589c5b39d One JDK to rule them all (#6865)
* reduce number of jvms provided
* consistent sha length

---------

Signed-off-by: Justin Florentine <justin+github@florentine.us>
2024-04-06 01:54:17 +00:00
Hal Blackburn
0622f409d3 fix: use UID 1000 for besu user (#6358) (#6360)
The openjdk-latest Docker image is using UID 1001 for besu, because its
base image ubuntu:23.10 now contains a default "ubuntu" user with UID
1000. (This UID change causes the besu user with UID 1001 to not have
access to files created for past versions with UID 1000.)

We now remove the default ubuntu user and explicitly use UID 1000 when
creating the besu user.

Signed-off-by: Hal Blackburn <hwtb2@cam.ac.uk>
2024-01-09 18:54:44 +00:00
garyschulte
017f9aa224 fixes for problems discovered in main (#6248)
Signed-off-by: garyschulte <garyschulte@gmail.com>
2023-12-07 11:06:33 +10:00
Fabio Di Fabio
10a4974d1d Update OpenJ9 Docker image to latest version (#6226)
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
2023-12-01 19:35:40 +01:00
Danno Ferrin
fa8751c7bc Unpin ca-certificates-java version (#6215)
Allow ca-certificates-java to use the latest 20190909 version.

Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
2023-11-29 12:06:10 -07:00
Fabio Di Fabio
6dea9a0f3d Update OpenJDK latest Docker image to use Java 21 (#6189)
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
2023-11-21 20:44:04 +01:00
Jason Frame
9b06f127a2 Fix Docker image failing to start Besu with NoClassDefFoundError for org.xerial.snappy.Snappy (#5462)
Signed-off-by: Jason Frame <jason.frame@consensys.net>
2023-05-17 12:29:32 +10:00
ahamlat
d4fee1f0dd Update OpenJ9 Docker image (#5335)
* Update OpenJ9 docker image configuration by using ubuntu 22.04 as the base image

* Take into account ARM64 plateforms

* fix issue with ARM64 plateforms

---------

Signed-off-by: Ameziane H <ameziane.hamlat@consensys.net>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
2023-04-20 13:42:02 -07:00
garyschulte
b0e441e32e openj9 docker build (#5217)
* openj9 and fix for swt metadata

Signed-off-by: garyschulte <garyschulte@gmail.com>

---------

Signed-off-by: garyschulte <garyschulte@gmail.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
2023-03-20 09:25:58 +10:00
Rafael Matias
c4b4598412 Allow other users to read the /opt/besu dir when using docker (#5092)
Signed-off-by: Rafael Matias <rafael@skyle.net>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
2023-02-15 10:02:49 +01:00
Usman Saleem
e18e407c4e Use Java 17 to build and run Besu (#4977)
Update following sections:
Gradle build, CircleCI, GitHub Actions, Docker

The devp2p TLS mutual authentication unit tests dealing with PKCS11+nss and QBFT+PKCS11+nss ATs were failing on Java 17 when dealing with RSA keys. The unit tests and AT are updated to use EC keys instead. The keystores, truststores, CRL etc. involved in those ATs are regenerated and detailed instructions are provided on how they are created.

Signed-off-by: Usman Saleem <usman@usmans.info>
2023-02-03 10:17:54 +10:00
Danno Ferrin
89ce75a614 Speedup modexp (#4780)
Increate the speed of ModExp gas calculations by using primitive types.
Use a native lib for modexp precompile.

Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>

* Native modexp
2022-12-07 14:23:34 -07:00
garyschulte
0ca45f34b9 alternative malloc implementation - jemalloc (#4126)
* add malloc arena params to besu startup
* add jemalloc preload to besu startup
* add jemalloc lib download to docker jvm images
* use 5.* for jemalloc-dev version
* add jemalloc to circleci containers for acceptance tests

Signed-off-by: garyschulte <garyschulte@gmail.com>
2022-07-20 08:01:18 +10:00
Justin Florentine
950673c798 removes verbose memory tracking, and adds jdk to include jcmd and tools (#3861)
* removes verbose memory tracking, and adds jdk to include jcmd and tools
* revert logging to debug, can be adjusted at runtime

Signed-off-by: Justin Florentine <justin+github@florentine.us>
2022-05-18 18:13:51 -07:00
garyschulte
1efe1f01a5 Build arm64 besu docker images (#2954)
* first pass at building arm64 besu docker images
* add arch to docker publish
* add architecture envars to executors
* first pass at manifest docker
* setup docker in manifest step
* add base image to manifestDocker
* add changelog

Signed-off-by: garyschulte <garyschulte@gmail.com>
2022-05-09 19:49:29 +02:00
Matija Folnovic
77b308a37c Fix wrong permissions on /opt/besu directory in GraalVM image (#3753)
Signed-off-by: Matija Folnovic <mfolnovic@gmail.com>

Co-authored-by: Sally MacFarlane <sally.macfarlane@consensys.net>
2022-04-27 15:42:51 +10:00
garyschulte
a2fbd76c3a add execution engine endpoints to docker ports (#3575)
* add execution engine endpoints to docker ports

Signed-off-by: garyschulte <garyschulte@gmail.com>
2022-03-12 06:36:34 -08:00
Danno Ferrin
9cee57423b Change docker base images from debian to ubuntu (#3171)
Change the docker base images from debian (implied by openjdk image) to
ubuntu explicitly. Ubuntu has quicker reaction time to base image
security vulnerabilities.

Signed-off-by: Danno Ferrin <danno.ferrin@gmail.com>
2021-12-14 18:27:33 +01:00
Justin Florentine
ec7fc4781a 2936 debug docker build (#2962)
* adds a new docker build focusing on providing tools for debugging
* updates the latest build to only include a jvm, not a full jdk as shipped for Java 17

Signed-off-by: Justin Florentine <justin+github@florentine.us>
2021-11-05 04:54:08 +13:00
fab-10
19665cbc6c Update JDK 11 to latest version in Besu Docker images (#2926)
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
2021-10-20 12:37:47 -06:00
Juan Cruz
ddc95c4bd5 Fix vulnerabilities from openjdk-11 base image (#2452)
Signed-off-by: Juan Cruz <jmcruz1983@gmail.com>
2021-06-24 09:22:17 -07:00
Danno Ferrin
73a2b72e07 Update Docker files due to hadolint (#1954)
Hadolint introduced a new linting rule prohibiting using the same env
var in it's definition. Move to a two step definition.

Signed-off-by: Danno Ferrin <danno.ferrin@gmail.com>
2021-02-25 11:42:13 -07:00
Antoine Toulme
1c86ecbc97 Make some adjustments to OpenTelemetry usage and default configuration (#1932)
* Make some adjustments to OpenTelemetry usage and default configuration

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* Remove additional empty line

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* Remove extra test - no assertions in it providing value

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* remove extra dependency

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* use dev, not default

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>
2021-02-22 15:22:42 -07:00
Danno Ferrin
cfd9eb8ea8 Update GraalVM Docker Container (#1830)
Oracle moved their graalvm container hating from docker to github.
Update the docker file to keep up with this change.

Signed-off-by: Danno Ferrin <danno.ferrin@gmail.com>
2021-01-25 18:20:44 +01:00
Antoine Toulme
cd66968b6d Add tracing support for internals and JSON-RPC (#1557)
* Add tracing support for internals and JSON-RPC

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* Remove rocksdb tracing as it slows down execution too much

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* Add B3 headers extraction on JSON-RPC requests

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* Remove traces around trie tree as they slow down syncing significantly

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* Add tracing to fast sync pipeline

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* Add tracing for all pipelines

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* Address code review

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* Add acceptance tests and break out the shaded dependency

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* Fix tracer id

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* Revert changes to trie

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* Upgrade otel to latest, remove old tracing

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* Code review comments

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>
2021-01-04 11:11:13 -08:00
Antoine Toulme
dbc3fee7bb Add tracing agent to the build and default parameters in Dockerfiles (#1410)
Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>
2020-10-13 16:07:22 -07:00
Danno Ferrin
8067ff4f82 Multiple Docker Images with different JVMs (#1277)
Create different Docker images with different base JVMs.  Initially
OpenJDK 11.0.7, whatever OpenJDK latest is (14.0.1 at the moment), and
Graal 20.1.0 .

We still maintain a "Default" which will remain Java 11.0.x

Signed-off-by: Danno Ferrin <danno.ferrin@gmail.com>
2020-08-06 08:32:53 -06:00
Joshua Fernandes
8c9eb4348e setting up the besu user:group for the docker container and following best security practices (#1093)
Signed-off-by: Joshua Fernandes <joshua.fernandes@consensys.net>
2020-06-17 13:00:16 +10:00
Antoine Toulme
1d493597f7 Healthcheck (#715)
* Add a pid-path parameter to write a pid file that can be used as a healthcheck

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* Add healthcheck to the Dockerfile

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* fix assertj use

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* Fix unit tests

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>
2020-04-19 16:01:49 -07:00
Joshua Fernandes
f12c92ec58 add the binary on ci at build time, dont need it to be in the code base (#359)
Signed-off-by: Joshua Fernandes <joshua.fernandes@consensys.net>
2020-02-04 07:53:49 +10:00
Ratan Rai Sur
c2a89a0cb5 add besu to path in Docker (#223)
Signed-off-by: Ratan Rai Sur <ratan.r.sur@gmail.com>
2019-11-26 17:32:52 -05:00
Edward
0197f9f257 Update Jenkins Build for Pantheon → Besu considerations (#1)
* Update ignores
* Update Jenkins
* Update configuration

Signed-off-by: Edward Evans <edward.evans@consensys.net>
2019-09-16 12:42:27 +10:00
Joshua Fernandes
d6a2394e2d Migrating Pantheon to Besu (#1945)
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
2019-09-16 11:14:10 +10:00
Joshua Fernandes
407dcbf33d Updating docker tests to make it easier to follow & ensure it listens on the right interface on docker (#1851)
* making the tests easier to read
* updating tests to run inside a container so the goss executable works on osx

Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
2019-08-14 21:18:42 -07:00
Joshua Fernandes
05d975ab3a update defaults host interfaces (#1782)
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
2019-07-30 11:45:56 +10:00
Joshua Fernandes
29c3c14263 New release docker image (#1664)
* removing unused docker image, switching to new docker image

* switch to using the new release image and pipeline

* pr fixes

Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
2019-07-11 14:44:37 +10:00
Joshua Fernandes
5ca6f94d9b reverting change to dockerfile (#1594)
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
2019-06-21 19:44:55 +10:00
Joshua Fernandes
491012159a cleaning up the build process for docker (#1590)
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
2019-06-21 19:14:10 +10:00
Chris Mckay
28814e7d36 Push builds of master as docker development images (#1200)
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
2019-04-02 09:06:41 +10:00