Compare commits

..
Author SHA1 Message Date
jonathanface 6f08556937 tightening up
Lint Checks / Run linter (push) Successful in 41s
2024-05-07 19:44:51 +00:00
jonathanface 36fd4533c3 listen addresses format
Lint Checks / Run linter (push) Successful in 1m7s
2024-05-06 19:09:59 +00:00
jonathanface aa2c32be67 csvified env var
Lint Checks / Run linter (push) Successful in 53s
2024-05-06 02:25:54 +00:00
jonathanface ead9c8b18c stringify env varS
Lint Checks / Run linter (push) Successful in 35s
2024-05-06 00:40:04 +00:00
jonathanface 057e0c5372 separated out env vars
Lint Checks / Run linter (push) Successful in 44s
2024-05-06 00:27:47 +00:00
jonathanface a7da7b4f87 add peer static port
Lint Checks / Run linter (push) Successful in 40s
2024-05-05 02:42:00 +00:00
jonathanface 21f7b96eb4 temp testing
Lint Checks / Run linter (push) Successful in 52s
Container Registry Test / Run contaier registry hosting test on kind/k8s (push) Successful in 5m38s
External Stack Test / Run external stack test suite (push) Successful in 7m15s
Database Test / Run database hosting test on kind/k8s (push) Successful in 13m23s
K8s Deploy Test / Run deploy test suite on kind/k8s (push) Successful in 10m18s
Fixturenet-Laconicd-Test / Run Laconicd fixturenet and Laconic CLI tests (push) Successful in 16m23s
2024-05-03 19:53:21 +00:00
dboreham 7d347e84fd Refactor for new external stack directory layout under common parent (#815)
Reviewed-on: #815
Co-authored-by: David Boreham <david@bozemanpass.com>
Co-committed-by: David Boreham <david@bozemanpass.com>
2024-05-03 19:24:42 +00:00
prathamesh 15295ae2d1 Additional env configuration in graph-node stack (#812)
Part of [Deploy v2 and updated v3 sushiswap subgraphs](https://www.notion.so/Deploy-v2-and-updated-v3-sushiswap-subgraphs-e331945fdeea487c890706fc22c6cc94)

Reviewed-on: #812
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-05-03 19:24:42 +00:00
dboreham 9b9da72b9b Fix config dir processing for external stacks (#810)
Reviewed-on: #810
Co-authored-by: David Boreham <david@bozemanpass.com>
Co-committed-by: David Boreham <david@bozemanpass.com>
2024-05-03 19:24:42 +00:00
dboreham 1ccbd415a9 Add external stack support (#806)
Reviewed-on: #806
Co-authored-by: David Boreham <david@bozemanpass.com>
Co-committed-by: David Boreham <david@bozemanpass.com>
2024-05-03 19:24:42 +00:00
telackey 469ff7a086 Skip checks on requests we've already seen (#805)
Reviewed-on: #805
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2024-05-03 19:24:42 +00:00
telackey 82bdf82978 Switch repo to cerc-io org. (#804)
Update stack to track moved repo.

Reviewed-on: #804
Reviewed-by: David Boreham <dboreham@noreply.git.vdb.to>
2024-05-03 19:24:42 +00:00
telackey 6e61aafd6e Add --fqdn-policy option to deploy-webapp-from-registry. (#802)
This add a new option `--fqdn-policy` to the `deploy-webapp-from-registry`.

The default policy, `prohibit` means that `ApplicationDeploymentRequests` which specify a FQDN will be rejected.  The `allow` policy will cause them to be processed.  The `preexisting` policy will only process them if an existing `DnsRecord` exists in the registry with the correct ownership.

The latter would be useful in conjunction with a pre-checking scheme in the UI (eg, that the DNS entry is properly configured, the domain is under the control of the requestor, etc.)  Only after all the checks were successful would the `DnsRecord` be created, allowing for `ApplicationDeploymentRequests` to use it.

Reviewed-on: #802
Reviewed-by: David Boreham <dboreham@noreply.git.vdb.to>
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2024-05-03 19:24:42 +00:00
prathamesh 8b634fc791 Add a laconicd Grafana dashboard to monitoring stack (#799)
Part of https://www.notion.so/Monitoring-and-alerting-for-laconicd-86727c3b4dde4dc993d87d6e29f935fe

- Add a laconicd Grafana dashboard
  - Update fixturenet-laconicd script to expose metrics
- Upgrade Grafana version to avoid errors while saving changes made to a dashboard (see [thread](https://community.grafana.com/t/error-cannot-add-property-ishandled-object-is-not-extensible/109268))
-  Add an alert rule for Ajna watcher

Reviewed-on: #799
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-05-03 19:24:42 +00:00
roysc 0138102f76 fixturenet-plugeth Deneb/Cancun upgrade (#789)
Updates fixturenet-plugeth stack for the Deneb fork based on Geth v1.13.x:

- updates genesis generator tool, and simplifies the config: the default from `ethereum-genesis-generator` can be used for a from-genesis Merged chain.

Reviewed-on: #789
Reviewed-by: jonathanface <jonathanface@noreply.git.vdb.to>
Reviewed-by: Thomas E Lackey <telackey@noreply.git.vdb.to>
2024-05-03 19:24:42 +00:00
prathamesh 11279aab78 Run CI alert steps only on main (#797)
Part of https://www.notion.so/Alerting-for-failing-CI-jobs-d0183b65453947aeab11dbddf989d9c0

- Run CI alert steps only on main to avoid alerts for in-progress PRs
- The Slack alerts will be sent on a CI job failure if
  - A commit is pushed directly to main
  - A PR gets merged into main
  - A scheduled job runs on main

Reviewed-on: #797
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-05-03 19:24:42 +00:00
prathamesh 3ec6f4e913 Add Slack alerts for failures on CI workflows (#793)
Part of https://www.notion.so/Alerting-for-failing-CI-jobs-d0183b65453947aeab11dbddf989d9c0

Reviewed-on: #793
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-05-03 19:24:42 +00:00
prathamesh 637b40d39e Fix laconic registry CLI tests (#792)
Part of https://www.notion.so/Test-registry-cli-in-SO-fixturenet-laconicd-CI-ef1f497678264362931bd12643ba8a17

Reviewed-on: #792
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-05-03 19:24:42 +00:00
prathameshandneeraj f75ad6cdfc Run registry CLI tests as part of laconicd fixturenet tests (#791)
Part of https://www.notion.so/Test-registry-cli-in-SO-fixturenet-laconicd-CI-ef1f497678264362931bd12643ba8a17

Co-authored-by: neeraj <neeraj.rtly@gmail.com>
Reviewed-on: #791
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-05-03 19:24:42 +00:00
telackey 972b7d4a09 revert 5308ab1e4e (#788)
revert Blind commit to fix laconic CLI calls after rename. (#784)

`laconic cns` got renamed to `laconic registry` which breaks all the scripts and commands that use it.

Reviewed-on: #784
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>

Reviewed-on: #788
2024-05-03 19:24:42 +00:00
nabarun 503700bda6 Update ajna-watcher-ts version for using new subgraph (#786)
Part of https://www.notion.so/Run-ajna-finance-subgraph-watcher-87748d78cd7a471b8d71f50d5fdc2657

Reviewed-on: #786
Co-authored-by: Nabarun <nabarun@deepstacksoft.com>
Co-committed-by: Nabarun <nabarun@deepstacksoft.com>
2024-05-03 19:24:42 +00:00
nabarun 2afb94932a Update GQL path for ajna subgraph watcher server (#785)
Part of https://www.notion.so/Run-ajna-finance-subgraph-watcher-87748d78cd7a471b8d71f50d5fdc2657

Reviewed-on: #785
Co-authored-by: Nabarun <nabarun@deepstacksoft.com>
Co-committed-by: Nabarun <nabarun@deepstacksoft.com>
2024-05-03 19:24:42 +00:00
telackey dd3f582d82 Blind commit to fix laconic CLI calls after rename. (#784)
`laconic cns` got renamed to `laconic registry` which breaks all the scripts and commands that use it.

Reviewed-on: #784
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2024-05-03 19:24:41 +00:00
prathamesh b3f1a66e8f Add a Ajna watcher stack (#781)
Part of https://www.notion.so/Generate-ajna-finance-subgraph-watcher-with-codegen-5b80ac149b3f449fb138f5d92cc5485e

Reviewed-on: #781
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-05-03 19:24:41 +00:00
prathamesh ac40462ee2 Remove latest indexed block value from watcher alerts data (#780)
Part of https://www.notion.so/Setup-grafana-SO-stack-for-monitoring-watchers-7e23042c296c4de6b8676f1f604aa03c

Reviewed-on: #780
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-05-03 19:24:41 +00:00
prathamesh 7a9796ffe2 Update subgraph watcher versions and instructions to use deployments (#775)
Part of https://www.notion.so/Setup-watchers-on-sandman-34b5514a10634c6fbf3ec338967c871c

Reviewed-on: #775
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-05-03 19:24:41 +00:00
jonathanface fa5fb38ba8 linted 2024-05-03 19:24:41 +00:00
jonathan@vulcanize.io ced6661cf7 metrics on op-node 2024-05-03 19:24:41 +00:00
jonathan@vulcanize.io 7aa9f10a95 added metrics addr flag 2024-05-03 19:24:41 +00:00
jonathan@vulcanize.io 9446db9c5f metrics 2024-05-03 19:24:41 +00:00
jonathan@vulcanize.io 508112f819 blast testnet, initial commit 2024-05-03 19:24:41 +00:00
jonathan@vulcanize.io b6296fdc66 removed keycloak 2024-05-03 19:24:41 +00:00
jonathan@vulcanize.io 48c19c1e1d adding trustrpc flag to op-node 2024-05-03 19:24:41 +00:00
jonathan@vulcanize.io 44753db277 follow established naming convention 2024-05-03 19:24:41 +00:00
jonathan@vulcanize.io 5af28b9de6 fixed missing rollup 2024-05-03 19:24:41 +00:00
jonathan@vulcanize.io 447e1215ad copy whether absolute path or local 2024-05-03 19:24:41 +00:00
jonathan@vulcanize.io b2838334f2 working state 2024-05-03 19:24:41 +00:00
jonathan@vulcanize.io 2a7a1c46b0 fixed optimum deployment 2024-05-03 19:24:41 +00:00
jonathan@vulcanize.io fbdde91953 tweaking yml 2024-05-03 19:24:41 +00:00
jonathan@vulcanize.io b5ad39f94a minimal build 2024-05-03 19:24:41 +00:00
jonathan@vulcanize.io dc3ab712b0 integration testing, I think 2024-05-03 19:24:41 +00:00
jonathan@vulcanize.io 99f8c02f9c filepath 2024-05-03 19:24:40 +00:00
jonathan@vulcanize.io 91b3fb41f3 keycloak implementation 2024-05-03 19:24:40 +00:00
jonathan@vulcanize.io 7be0f8beac comment format 2024-05-03 19:24:40 +00:00
jonathan@vulcanize.io 814cbdaa9d comment format 2024-05-03 19:24:40 +00:00
jonathan@vulcanize.io bf0027d10f copying genesis.json to /data/blast-data for blast 2024-05-03 19:24:40 +00:00
dboreham 42a1657afc Beginnings of blast stack 2024-05-03 19:24:40 +00:00
jonathanface fe6b15b6a6 undo prev
Lint Checks / Run linter (push) Failing after 1s
2024-04-26 16:44:01 +00:00
jonathanface 8e8e9539bd updating reference branch to main
Lint Checks / Run linter (push) Failing after 1s
2024-04-26 16:42:08 +00:00
jonathanface af1167234c changing image names for lotus
Lint Checks / Run linter (push) Failing after 0s
2024-04-26 15:43:25 +00:00
jonathanface d13892b879 fixing lotus fixturenet config
Lint Checks / Run linter (push) Failing after 1s
2024-04-26 15:40:55 +00:00
jonathanface 277fbae98f build fixes
Lint Checks / Run linter (push) Failing after 0s
2024-04-26 15:09:24 +00:00
jonathanface 9ffa37c686 refactoring lotus deploy
Lint Checks / Run linter (push) Successful in 36s
2024-04-25 20:14:26 +00:00
jonathanface c787cb59ef renaming lotus image
Lint Checks / Run linter (push) Successful in 37s
2024-04-25 20:08:28 +00:00
jonathanface 8deb26414b lotus mainnet build image
Lint Checks / Run linter (push) Failing after 1s
2024-04-25 20:05:29 +00:00
jonathanface bf18317f98 fixed lotus-mainnet dockerfile
Lint Checks / Run linter (push) Successful in 38s
2024-04-25 03:23:04 +00:00
jonathanface 9219fa133f fixed Dockerfiles
Lint Checks / Run linter (push) Successful in 39s
2024-04-25 02:51:52 +00:00
jonathanface 41cec3467f removing git state check
Lint Checks / Run linter (push) Successful in 35s
2024-04-24 18:44:50 +00:00
jonathanface efb07bd8ce lotus fixturenet
Lint Checks / Run linter (push) Successful in 47s
2024-04-19 15:18:27 +00:00
jonathanface dace83c5b2 added external data volume
Lint Checks / Run linter (push) Successful in 42s
2024-04-18 02:04:11 +00:00
jonathanface 253aaf9ca9 updating cerc image dockerfile
Lint Checks / Run linter (push) Successful in 41s
2024-04-16 20:47:45 +00:00
jonathanface 242019ffa5 updating default snapshot url
Lint Checks / Run linter (push) Successful in 38s
2024-04-16 18:23:23 +00:00
jonathanface 9d973844be extraneous containers
Lint Checks / Run linter (push) Successful in 46s
2024-04-16 17:23:30 +00:00
jonathanface 461c298d0a refinement
Lint Checks / Run linter (push) Successful in 35s
2024-04-16 02:36:25 +00:00
jonathanface 71fb7aee5c missing yml
Lint Checks / Run linter (push) Successful in 37s
2024-04-16 02:16:00 +00:00
jonathanface 6baa2e2314 lotus stack
Lint Checks / Run linter (push) Successful in 44s
2024-04-12 17:14:21 +00:00
30 changed files with 270 additions and 63 deletions
@@ -2,15 +2,17 @@ name: Fixturenet-Eth-Plugeth-Arm-Test
on:
push:
branches: 'main'
branches: '*'
paths:
- '!**'
- '.gitea/workflows/triggers/fixturenet-eth-plugeth-arm-test'
pull_request:
paths:
- '.gitea/workflows/triggers/fixturenet-eth-plugeth-arm-test'
schedule: # Note: coordinate with other tests to not overload runners at the same time of day
- cron: '0 11 * * *'
- cron: '2 14 * * *'
# Needed until we can incorporate docker startup into the executor container
env:
DOCKER_HOST: unix:///var/run/dind.sock
jobs:
test:
@@ -2,15 +2,18 @@ name: Fixturenet-Eth-Plugeth-Test
on:
push:
branches: 'main'
paths:
- '.gitea/workflows/triggers/fixturenet-eth-plugeth-test'
pull_request:
branches: '*'
paths:
- '!**'
- '.gitea/workflows/triggers/fixturenet-eth-plugeth-test'
schedule: # Note: coordinate with other tests to not overload runners at the same time of day
- cron: '2 14 * * *'
# Needed until we can incorporate docker startup into the executor container
env:
DOCKER_HOST: unix:///var/run/dind.sock
jobs:
test:
name: "Run an Ethereum plugeth fixturenet test"
@@ -38,6 +41,10 @@ jobs:
run: ./scripts/create_build_tag_file.sh
- name: "Build local shiv package"
run: ./scripts/build_shiv_package.sh
- name: Start dockerd # Also needed until we can incorporate into the executor
run: |
dockerd -H $DOCKER_HOST --userland-proxy=false &
sleep 5
- name: "Run fixturenet-eth tests"
run: ./tests/fixturenet-eth-plugeth/run-test.sh
- name: Notify Vulcanize Slack on CI failure
+11 -4
View File
@@ -2,13 +2,16 @@ name: Fixturenet-Eth-Test
on:
push:
branches: 'main'
paths:
- '.gitea/workflows/triggers/fixturenet-eth-test'
pull_request:
branches: '*'
paths:
- '!**'
- '.gitea/workflows/triggers/fixturenet-eth-test'
# Needed until we can incorporate docker startup into the executor container
env:
DOCKER_HOST: unix:///var/run/dind.sock
jobs:
test:
name: "Run an Ethereum fixturenet test"
@@ -36,6 +39,10 @@ jobs:
run: ./scripts/create_build_tag_file.sh
- name: "Build local shiv package"
run: ./scripts/build_shiv_package.sh
- name: Start dockerd # Also needed until we can incorporate into the executor
run: |
dockerd -H $DOCKER_HOST --userland-proxy=false &
sleep 5
- name: "Run fixturenet-eth tests"
run: ./tests/fixturenet-eth/run-test.sh
- name: Notify Vulcanize Slack on CI failure
@@ -1,3 +1,2 @@
Change this file to trigger running the fixturenet-eth-plugeth-arm-test CI job
1
@@ -1,4 +1,3 @@
Change this file to trigger running the fixturenet-eth-plugeth-test CI job
trigger
trigger
1
@@ -1,4 +1,2 @@
Change this file to trigger running the fixturenet-eth-test CI job
1
1
@@ -5,7 +5,7 @@ services:
hostname: lotus-miner
env_file:
- ../config/fixturenet-lotus/lotus-env.env
image: cerc/lotus:local
image: cerc/lotus-fixturenet:local
volumes:
- ../config/fixturenet-lotus/setup-miner.sh:/docker-entrypoint-scripts.d/setup-miner.sh
- ../config/fixturenet-lotus/fund-account.sh:/fund-account.sh
@@ -26,7 +26,7 @@ services:
environment:
# Use 0.0.0.0 so that calls can be made from outside the container
- LOTUS_API_LISTENADDRESS=/ip4/0.0.0.0/tcp/1234/http
image: cerc/lotus:local
image: cerc/lotus-fixturenet:local
volumes:
- ../config/fixturenet-lotus/setup-node.sh:/docker-entrypoint-scripts.d/setup-node.sh
- lotus_node_1_params:/var/tmp/filecoin-proof-parameters
@@ -42,10 +42,10 @@ services:
- lotus-miner
entrypoint: ["sh", "/docker-entrypoint-scripts.d/setup-node.sh"]
ports:
- "1234"
- "2345"
- "3456"
- "1777"
- "1235"
- "2346"
- "3457"
- "1778"
lotus-node-2:
hostname: lotus-node-2
@@ -54,7 +54,7 @@ services:
environment:
# Use 0.0.0.0 so that calls can be made from outside the container
- LOTUS_API_LISTENADDRESS=/ip4/0.0.0.0/tcp/1234/http
image: cerc/lotus:local
image: cerc/lotus-fixturenet:local
volumes:
- ../config/fixturenet-lotus/setup-node.sh:/docker-entrypoint-scripts.d/setup-node.sh
- lotus_node_2_params:/var/tmp/filecoin-proof-parameters
@@ -70,10 +70,10 @@ services:
- lotus-miner
entrypoint: ["sh", "/docker-entrypoint-scripts.d/setup-node.sh"]
ports:
- "1234"
- "2345"
- "3456"
- "1777"
- "1236"
- "2347"
- "3458"
- "1779"
volumes:
lotus_miner_params:
@@ -0,0 +1,23 @@
volumes:
parameters:
lotus-repo:
lotus_shared:
services:
lotus:
environment:
- LOTUS_API_LISTENADDRESS=/ip4/0.0.0.0/tcp/1234/http
- LOTUS_LIBP2P_LISTENADDRESSES=/ip4/0.0.0.0/tcp/1235,/ip6/::/tcp/1235,/ip4/0.0.0.0/udp/1235/quic-v1,/ip6/::/udp/1235/quic-v1,/ip4/0.0.0.0/udp/1235/quic-v1/webtransport,/ip6/::/udp/1235/quic-v1/webtransport
image: cerc/lotus-mainnet:local
volumes:
- parameters:/var/tmp/filecoin-proof-parameters
- lotus-repo:/var/lib/lotus
- lotus_shared:/root/.lotus
ports:
- "1234"
- "1235"
deploy:
restart_policy:
condition: on-failure
delay: 30s
entrypoint: ["sh", "/docker-lotus-entrypoint.sh"]
@@ -9,7 +9,7 @@ STATUSES=(
"beacon phase0"
"beacon altair"
"beacon bellatrix pre-merge"
"beacon post-merge"
"beacon bellatrix merge"
"block number $MIN_BLOCK_NUM"
)
STATUS=0
@@ -69,13 +69,13 @@ while [ $STATUS -lt ${#STATUSES[@]} ]; do
;;
2)
result=`wget --no-check-certificate --quiet -O - "$LIGHTHOUSE_BASE_URL/eth/v2/beacon/blocks/head" | jq -r '.version'`
if [ ! -z "$result" ] && ([ "$result" == "altair" ] || [ "$result" == "bellatrix" ] || [ "$result" == "capella" ] || [ "$result" == "deneb" ]); then
if [ ! -z "$result" ] && ([ "$result" == "altair" ] || [ "$result" == "bellatrix" ]); then
inc_status
fi
;;
3)
result=`wget --no-check-certificate --quiet -O - "$LIGHTHOUSE_BASE_URL/eth/v2/beacon/blocks/head" | jq -r '.version'`
if [ ! -z "$result" ] && ([ "$result" == "bellatrix" ] || [ "$result" == "capella" ] || [ "$result" == "deneb" ]); then
if [ ! -z "$result" ] && [ "$result" == "bellatrix" ]; then
inc_status
fi
;;
@@ -1,5 +1,5 @@
#####################################
FROM golang:1.19.12-bullseye AS lotus-builder
FROM golang:1.21.7-bullseye AS lotus-builder
MAINTAINER Lotus Development Team
RUN apt-get update && apt-get install -y ca-certificates build-essential clang ocl-icd-opencl-dev ocl-icd-libopencl1 jq libhwloc-dev
@@ -29,7 +29,6 @@ RUN set -eux; \
rustup --version; \
cargo --version; \
rustc --version;
COPY ./ /opt/filecoin
WORKDIR /opt/filecoin
@@ -38,13 +37,13 @@ WORKDIR /opt/filecoin
### make configurable filecoin-ffi build
ARG FFI_BUILD_FROM_SOURCE=0
ENV FFI_BUILD_FROM_SOURCE=${FFI_BUILD_FROM_SOURCE}
RUN ls /opt/filecoin
RUN make clean deps
ARG RUSTFLAGS=""
ARG GOFLAGS=""
#RUN make buildall
#RUN make lotus
RUN make 2k
#####################################
@@ -75,7 +74,7 @@ COPY --from=lotus-builder /opt/filecoin/lotus-shed /usr/local/bin/
#COPY scripts/docker-lotus-entrypoint.sh /
#COPY myscripts/setup-node.sh /docker-entrypoint-scripts.d/setup-node.sh
ARG DOCKER_LOTUS_IMPORT_SNAPSHOT https://snapshots.mainnet.filops.net/minimal/latest
ARG DOCKER_LOTUS_IMPORT_SNAPSHOT https://forest-archive.chainsafe.dev/latest/mainnet/
ENV DOCKER_LOTUS_IMPORT_SNAPSHOT ${DOCKER_LOTUS_IMPORT_SNAPSHOT}
ENV FILECOIN_PARAMETER_CACHE /var/tmp/filecoin-proof-parameters
ENV LOTUS_PATH /var/lib/lotus
@@ -1,12 +1,12 @@
#!/usr/bin/env bash
# Build cerc/lotus
# Build cerc/fixturenet-lotus
source ${CERC_CONTAINER_BASE_DIR}/build-base.sh
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
# Use a release version tag to match the modified Dockerfile replaced in next step
git -C ${CERC_REPO_BASE_DIR}/lotus checkout v1.23.3
git -C ${CERC_REPO_BASE_DIR}/lotus checkout master
# Replace repo's Dockerfile with modified one
cp ${SCRIPT_DIR}/Dockerfile ${CERC_REPO_BASE_DIR}/lotus/Dockerfile
docker build -t cerc/lotus:local ${build_command_args} ${CERC_REPO_BASE_DIR}/lotus
docker build -t cerc/fixturenet-lotus:local ${build_command_args} ${CERC_REPO_BASE_DIR}/lotus
@@ -0,0 +1,124 @@
#####################################
FROM golang:1.21.7-bullseye AS lotus-builder
MAINTAINER Lotus Development Team
RUN apt-get update && apt-get install -y ca-certificates build-essential clang ocl-icd-opencl-dev ocl-icd-libopencl1 jq libhwloc-dev
ENV XDG_CACHE_HOME="/tmp"
### taken from https://github.com/rust-lang/docker-rust/blob/master/1.63.0/buster/Dockerfile
ENV RUSTUP_HOME=/usr/local/rustup \
CARGO_HOME=/usr/local/cargo \
PATH=/usr/local/cargo/bin:$PATH \
RUST_VERSION=1.63.0
RUN set -eux; \
dpkgArch="$(dpkg --print-architecture)"; \
case "${dpkgArch##*-}" in \
amd64) rustArch='x86_64-unknown-linux-gnu'; rustupSha256='5cc9ffd1026e82e7fb2eec2121ad71f4b0f044e88bca39207b3f6b769aaa799c' ;; \
arm64) rustArch='aarch64-unknown-linux-gnu'; rustupSha256='e189948e396d47254103a49c987e7fb0e5dd8e34b200aa4481ecc4b8e41fb929' ;; \
*) echo >&2 "unsupported architecture: ${dpkgArch}"; exit 1 ;; \
esac; \
url="https://static.rust-lang.org/rustup/archive/1.25.1/${rustArch}/rustup-init"; \
wget "$url"; \
echo "${rustupSha256} *rustup-init" | sha256sum -c -; \
chmod +x rustup-init; \
./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch}; \
rm rustup-init; \
chmod -R a+w $RUSTUP_HOME $CARGO_HOME; \
rustup --version; \
cargo --version; \
rustc --version;
COPY ./ /opt/filecoin
WORKDIR /opt/filecoin
ARG FFI_BUILD_FROM_SOURCE=0
ENV FFI_BUILD_FROM_SOURCE=${FFI_BUILD_FROM_SOURCE}
#RUN make clean deps
ARG RUSTFLAGS=""
ARG GOFLAGS=""
RUN make clean deps && \
make lotus lotus-shed lotus-stats && \
install -C ./lotus /usr/local/bin/lotus && \
install -C ./lotus-shed /usr/local/bin/lotus-shed && \
install -C ./lotus-stats /usr/local/bin/lotus-stats
#####################################
FROM ubuntu:20.04 AS lotus-base
MAINTAINER Lotus Development Team
# Base resources
COPY --from=lotus-builder /etc/ssl/certs /etc/ssl/certs
COPY --from=lotus-builder /lib/*/libdl.so.2 /lib/
COPY --from=lotus-builder /lib/*/librt.so.1 /lib/
COPY --from=lotus-builder /lib/*/libgcc_s.so.1 /lib/
COPY --from=lotus-builder /lib/*/libutil.so.1 /lib/
COPY --from=lotus-builder /usr/lib/*/libltdl.so.7 /lib/
COPY --from=lotus-builder /usr/lib/*/libnuma.so.1 /lib/
COPY --from=lotus-builder /usr/lib/*/libhwloc.so.* /lib/
COPY --from=lotus-builder /usr/lib/*/libOpenCL.so.1 /lib/
RUN useradd -r -u 532 -U fc \
&& mkdir -p /etc/OpenCL/vendors \
&& echo "libnvidia-opencl.so.1" > /etc/OpenCL/vendors/nvidia.icd
#####################################
FROM lotus-base AS lotus
MAINTAINER Lotus Development Team
COPY --from=lotus-builder \
/usr/local/bin/lotus \
/usr/local/bin/lotus-shed \
/usr/local/bin/
ENV FILECOIN_PARAMETER_CACHE /var/tmp/filecoin-proof-parameters
ENV LOTUS_PATH /var/lib/lotus
ENV DOCKER_LOTUS_IMPORT_WALLET ""
RUN mkdir /var/lib/lotus /var/tmp/filecoin-proof-parameters
RUN chown fc: /var/lib/lotus /var/tmp/filecoin-proof-parameters
VOLUME /var/lib/lotus
VOLUME /var/tmp/filecoin-proof-parameters
USER fc
EXPOSE 1234
CMD ["-help"]
#####################################
FROM lotus-base AS lotus-all-in-one
# Install netcat for healthcheck
RUN apt-get update && apt-get install -y netcat && apt-get install -y iproute2
ENV FILECOIN_PARAMETER_CACHE /var/tmp/filecoin-proof-parameters
ENV LOTUS_PATH /var/lib/lotus
ARG DOCKER_LOTUS_IMPORT_SNAPSHOT=https://forest-archive.chainsafe.dev/latest/mainnet/
ENV DOCKER_LOTUS_IMPORT_SNAPSHOT=${DOCKER_LOTUS_IMPORT_SNAPSHOT}
COPY --from=lotus-builder /opt/filecoin/lotus /usr/local/bin/
COPY --from=lotus-builder /opt/filecoin/lotus-shed /usr/local/bin/
COPY --from=lotus-builder /opt/filecoin/lotus-stats /usr/local/bin/
COPY scripts/docker-lotus-entrypoint.sh /docker-lotus-entrypoint.sh
RUN chmod +x /docker-lotus-entrypoint.sh
RUN mkdir /var/tmp/filecoin-proof-parameters
RUN mkdir /var/lib/lotus
RUN chown fc: /var/tmp/filecoin-proof-parameters
RUN chown fc: /var/lib/lotus
VOLUME /var/tmp/filecoin-proof-parameters
VOLUME /var/lib/lotus
EXPOSE 1234
EXPOSE 1235
@@ -0,0 +1,14 @@
#!/usr/bin/env bash
# Build cerc/mainnet-lotus
source ${CERC_CONTAINER_BASE_DIR}/build-base.sh
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
git stash
# Use a release version tag to match the modified Dockerfile replaced in next step
git -C ${CERC_REPO_BASE_DIR}/lotus checkout master
# Replace repo's Dockerfile with modified one
cp ${SCRIPT_DIR}/Dockerfile ${CERC_REPO_BASE_DIR}/lotus/Dockerfile
docker build -t cerc/lotus-mainnet:local ${build_command_args} ${CERC_REPO_BASE_DIR}/lotus
@@ -41,7 +41,8 @@ cerc/pocket
cerc/watcher-azimuth
cerc/ipld-eth-state-snapshot
cerc/watcher-gelato
cerc/lotus
cerc/mainnet-lotus
cerc/fixturenet-lotus
cerc/go-opera
cerc/lasso
cerc/reth
+1
View File
@@ -27,6 +27,7 @@ fixturenet-pocket
watcher-azimuth
watcher-gelato
fixturenet-lotus
mainnet-lotus
mainnet-go-opera
lasso
reth
@@ -1,9 +1,9 @@
version: "1.0"
name: erc20-watcher
repos:
- git.vdb.to/cerc-io/go-ethereum@v1.13.14
- git.vdb.to/cerc-io/go-ethereum@v1.11.6-statediff-v5
- git.vdb.to/cerc-io/ipld-eth-db@v5
- git.vdb.to/cerc-io/ipld-eth-server@v5
- git.vdb.to/cerc-io/ipld-eth-server@v1.11.6-statediff-v5
- github.com/dboreham/foundry
- github.com/cerc-io/erc20-watcher-ts
containers:
@@ -1,9 +1,9 @@
version: "1.0"
name: erc721-watcher
repos:
- git.vdb.to/cerc-io/go-ethereum@v1.13.14
- git.vdb.to/cerc-io/go-ethereum@v1.11.6-statediff-v5
- git.vdb.to/cerc-io/ipld-eth-db@v5
- git.vdb.to/cerc-io/ipld-eth-server@v5
- git.vdb.to/cerc-io/ipld-eth-server@v1.11.6-statediff-v5
- github.com/cerc-io/watcher-ts
containers:
- cerc/go-ethereum
@@ -2,9 +2,9 @@ version: "1.0"
name: fixturenet-eth-loaded
description: "Loaded Ethereum Fixturenet"
repos:
- git.vdb.to/cerc-io/go-ethereum@v1.13.14
- git.vdb.to/cerc-io/go-ethereum@v1.11.6-statediff-v5
- git.vdb.to/cerc-io/tx-spammer
- git.vdb.to/cerc-io/ipld-eth-server@v5
- git.vdb.to/cerc-io/ipld-eth-server@v1.11.6-statediff-v5
- git.vdb.to/cerc-io/ipld-eth-db@v5
- git.vdb.to/cerc-io/lighthouse
containers:
@@ -2,7 +2,7 @@ version: "1.2"
name: fixturenet-eth-tx
description: "Ethereum Fixturenet w/ tx-spammer"
repos:
- git.vdb.to/cerc-io/go-ethereum@v1.13.14
- git.vdb.to/cerc-io/go-ethereum@v1.11.6-statediff-v5
- git.vdb.to/cerc-io/tx-spammer
- git.vdb.to/cerc-io/lighthouse
- github.com/dboreham/foundry
@@ -2,7 +2,7 @@ version: "1.1"
name: fixturenet-eth
description: "Ethereum Fixturenet"
repos:
- git.vdb.to/cerc-io/go-ethereum@v1.13.14
- git.vdb.to/cerc-io/go-ethereum@v1.11.6-statediff-v5
- git.vdb.to/cerc-io/lighthouse
- github.com/dboreham/foundry
containers:
@@ -2,8 +2,8 @@ version: "1.0"
name: fixturenet-lotus
description: "A lotus fixturenet"
repos:
- github.com/filecoin-project/lotus
- git.vdb.to/cerc-io/lotus
containers:
- cerc/lotus
- cerc/fixturenet-lotus
pods:
- fixturenet-lotus
@@ -2,7 +2,7 @@ version: "1.0"
name: fixturenet-optimism
description: "Optimism Fixturenet"
repos:
- git.vdb.to/cerc-io/go-ethereum@v1.13.14
- git.vdb.to/cerc-io/go-ethereum@v1.11.6-statediff-v5
- git.vdb.to/cerc-io/lighthouse
- github.com/dboreham/foundry
- github.com/ethereum-optimism/optimism@op-node/v1.3.0
@@ -3,8 +3,7 @@ name: fixturenet-payments
description: "Stack to demonstrate payments between various services"
repos:
# fixturenet repos
- git.vdb.to/cerc-io/plugeth@statediff
- git.vdb.to/cerc-io/plugeth-statediff
- git.vdb.to/cerc-io/go-ethereum@v1.11.6-statediff-v5
- git.vdb.to/cerc-io/lighthouse
- git.vdb.to/cerc-io/ipld-eth-db@v5
# ipld-eth-server with payments -- to be used by ipld-eth-server-payments pod
@@ -25,12 +24,11 @@ repos:
- github.com/cerc-io/erc20-watcher-ts
containers:
# fixturenet images
- cerc/plugeth-statediff
- cerc/plugeth
- cerc/fixturenet-eth-genesis
- cerc/fixturenet-plugeth-plugeth
- cerc/go-ethereum
- cerc/lighthouse
- cerc/lighthouse-cli
- cerc/fixturenet-eth-genesis
- cerc/fixturenet-eth-geth
- cerc/fixturenet-eth-lighthouse
- cerc/ipld-eth-db
- cerc/ipld-eth-server
@@ -48,7 +46,7 @@ containers:
- cerc/ponder
- cerc/watcher-erc20
pods:
- fixturenet-plugeth
- fixturenet-eth
- ipld-eth-server-payments
- ipld-eth-db
- nitro-contracts
@@ -2,7 +2,7 @@ version: "1.0"
name: fixturenet-pocket
description: "A single node pocket chain that can serve relays from the geth-1 node in eth-fixturenet"
repos:
- git.vdb.to/cerc-io/go-ethereum@v1.13.14
- git.vdb.to/cerc-io/go-ethereum@v1.11.6-statediff-v5
- git.vdb.to/cerc-io/lighthouse
- github.com/pokt-network/pocket-core
- github.com/pokt-network/pocket-core-deployments # contains the dockerfile
@@ -13,7 +13,7 @@ repos:
- github.com/sushiswap/subgraphs
containers:
# fixturenet-lotus image
- cerc/lotus
- cerc/lotus-fixturenet
# graph-node image
- cerc/graph-node
# sushiswap contract deployment images
@@ -2,7 +2,7 @@ version: "1.2"
name: mainnet-eth
description: "Ethereum Mainnet"
repos:
- git.vdb.to/cerc-io/go-ethereum@v1.13.14
- git.vdb.to/cerc-io/go-ethereum@v1.11.6-statediff-v5
- git.vdb.to/cerc-io/lighthouse
- github.com/dboreham/foundry
- git.vdb.to/cerc-io/keycloak-reg-api
@@ -0,0 +1,26 @@
# Lotus stack
## Clone required repositories
```
$ laconic-so --stack mainnet-lotus setup-repositories
```
## Build the stack's containers
```
$ laconic-so --stack mainnet-lotus build-containers
```
## Create a deployment of the stack
```
$ laconic-so --stack mainnet-lotus deploy init --map-ports-to-host any-same --output lotus-spec.yml
```
Update the URLs in the generated spec file to use your systems' actual IP addresses.
```
$ laconic-so --stack mainnet-lotus deploy create --deployment-dir lotus-deployment --spec-file lotus-spec.yml
```
## Start the stack
```
$ laconic-so deployment --dir lotus-deployment start
```
Check logs:
```
$ laconic-so deployment --dir lotus-deployment logs
```
@@ -0,0 +1,9 @@
version: "1.0"
name: mainnet-lotus
description: "A lotus stack"
repos:
- git.vdb.to/cerc-io/lotus
containers:
- cerc/mainnet-lotus
pods:
- mainnet-lotus
@@ -1,7 +1,7 @@
version: "1.0"
name: mobymask-v2
repos:
- git.vdb.to/cerc-io/go-ethereum@v1.13.14
- git.vdb.to/cerc-io/go-ethereum@v1.11.6-statediff-v5
- git.vdb.to/cerc-io/lighthouse
- github.com/dboreham/foundry
- github.com/ethereum-optimism/optimism@v1.0.4
@@ -11,7 +11,7 @@ repos:
- github.com/vulcanize/uniswap-v3-info
containers:
## fixturenet-lotus image
- cerc/lotus
- cerc/lotus-fixturenet
## sushiswap images
- cerc/sushiswap-v3-core
- cerc/sushiswap-v3-periphery