* 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>
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>
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>
* 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>
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>
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
* 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>
* 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>
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>
* 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>
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>
* 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>
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>
* 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>
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>
* 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>
* 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>
* 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>