migalabs / armiarma

Armiarma is a Libp2p open-network crawler with a current focus on Ethereum's CL network
https://monitoreth.io
MIT License
36 stars 13 forks source link

Update Go version and related dependencies to latest changes #71

Closed cortze closed 4 months ago

cortze commented 4 months ago

Motivation

The crawler has fallen into the darkness of needing urgently new updates, as it has been without any kind of update last year. Even after a few attempts at doing so, there were pretty nasty turnarounds to fix the tricky Ethereum secp256k1 keys and Libp2p's new formats/structs that didn't really work.

Thus, here we are, trying to make every as whiny as possible.

Description

This PR aims to catch up with the latest versions of most of the dependencies, including the upgrade of the go version to a more recent one (one that supports Generics 🤫 )

Tasks

Proof of Success

So fat it manually compiles without problem:

$ make build
go get
go build -o "./build/armiarma"
$ docker compose build eth_crawler
WARN[0000] The "CRAWLER_SSE_PORT" variable is not set. Defaulting to a blank string.
[+] Building 39.8s (18/18) FINISHED                                                                                                                                                              docker:default
 => [eth_crawler internal] load build definition from Dockerfile                                                                                                                                           0.0s
 => => transferring dockerfile: 643B                                                                                                                                                                       0.0s
 => [eth_crawler] resolve image config for docker.io/docker/dockerfile:1                                                                                                                                   1.0s
 => CACHED [eth_crawler] docker-image://docker.io/docker/dockerfile:1@sha256:ac85f380a63b13dfcefa89046420e1781752bab202122f8f50032edf31be0021                                                              0.0s
 => [eth_crawler internal] load metadata for docker.io/library/debian:buster-slim                                                                                                                          1.0s
 => [eth_crawler internal] load metadata for docker.io/library/golang:1.21-alpine                                                                                                                          0.9s
 => [eth_crawler internal] load .dockerignore                                                                                                                                                              0.0s
 => => transferring context: 145B                                                                                                                                                                          0.0s
 => [eth_crawler builder 1/8] FROM docker.io/library/golang:1.21-alpine@sha256:d7c6083c5400694f7a17b07c4fad8db9115c0e8e3cf62f781cb29cc890a64e8e                                                            0.0s
 => [eth_crawler internal] load build context                                                                                                                                                              0.5s
 => => transferring context: 42.28MB                                                                                                                                                                       0.4s
 => [eth_crawler stage-1 1/3] FROM docker.io/library/debian:buster-slim@sha256:4620251e86cea652ef2746c8abef2fcc3ea54abb5f014bfbf841159d805cd1fd                                                            0.0s
 => CACHED [eth_crawler builder 2/8] RUN apk add --no-cache git                                                                                                                                            0.0s
 => CACHED [eth_crawler builder 3/8] RUN apk add --no-cache make                                                                                                                                           0.0s
 => [eth_crawler builder 4/8] COPY ./ /armiarma                                                                                                                                                            0.5s
 => [eth_crawler builder 5/8] WORKDIR /armiarma                                                                                                                                                            0.6s
 => [eth_crawler builder 6/8] RUN make dependencies                                                                                                                                                        0.9s
 => [eth_crawler builder 7/8] RUN make build                                                                                                                                                              34.3s
 => CACHED [eth_crawler stage-1 2/3] RUN mkdir /crawler                                                                                                                                                    0.0s
 => [eth_crawler stage-1 3/3] COPY --from=builder /armiarma/build/ /crawler                                                                                                                                0.1s
 => [eth_crawler] exporting to image                                                                                                                                                                       0.2s
 => => exporting layers                                                                                                                                                                                    0.2s
 => => writing image sha256:cbd0c849c951abe484f1e4eff667b385d56954948230fe80c75a55e7b39d3bae                                                                                                               0.0s
 => => naming to docker.io/library/armiarma:latest

Local-Dashboard:

image

image