Skip to content

Commit

Permalink
merge from main
Browse files Browse the repository at this point in the history
  • Loading branch information
musitdev committed Feb 18, 2025
2 parents 3609344 + e85bfbf commit 8bb0fb1
Show file tree
Hide file tree
Showing 27 changed files with 948 additions and 382 deletions.
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ ledger_db/
state_merkle_db/
.etc
.movement
.movement-*
.movement*
.idea
.vscode
.data
Expand Down
3 changes: 3 additions & 0 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

121 changes: 121 additions & 0 deletions docker/compose/movement-full-node/docker-compose.follower.backup.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,121 @@
services:
setup:
image: ghcr.io/movementlabsxyz/movement-full-node-setup:${CONTAINER_REV}
container_name: setup
environment:
DOT_MOVEMENT_PATH: /.movement
# needs to have a connection to the movement-celestia-da-light-node
MOVEMENT_DA_LIGHT_NODE_CONNECTION_PROTOCOL: ${MOVEMENT_DA_LIGHT_NODE_CONNECTION_PROTOCOL:?MOVEMENT_DA_LIGHT_NODE_CONNECTION_PROTOCOL is not set}
MOVEMENT_DA_LIGHT_NODE_CONNECTION_HOSTNAME: ${MOVEMENT_DA_LIGHT_NODE_CONNECTION_HOSTNAME:?MOVEMENT_DA_LIGHT_NODE_CONNECTION_HOSTNAME is not set}
MOVEMENT_DA_LIGHT_NODE_CONNECTION_PORT: ${MOVEMENT_DA_LIGHT_NODE_CONNECTION_PORT:?MOVEMENT_DA_LIGHT_NODE_CONNECTION_PORT is not set}
INDEXER_PROCESSOR_POSTGRES_CONNECTION_STRING: postgres://postgres:password@postgres:5432/postgres
AWS_REGION: ${AWS_REGION:?AWS_REGION is not set}
AWS_ACCESS_KEY_ID: ${AWS_ACCESS_KEY_ID}
AWS_SECRET_ACCESS_KEY: ${AWS_SECRET_ACCESS_KEY}
MOVEMENT_SYNC: ${MOVEMENT_SYNC} #:?MOVEMENT_SYNC is not set}
MAYBE_RUN_LOCAL: "false"
MOVEMENT_DA_LIGHT_NODE_HTTP1: ${MOVEMENT_DA_LIGHT_NODE_HTTP1}
RUST_LOG: info,aws_sdk_s3=debug
volumes:
- ${DOT_MOVEMENT_PATH}:/.movement
# mount if exists
- ~/.aws/:/root/.aws:ro

healthcheck:
test: [ "CMD-SHELL", "echo 'health check'" ]
retries: 10
interval: 10s
timeout: 5s

# turn off underlying da light nodes
celestia-light-node:
image: busybox
container_name: celestia-light-node
command: sleep infinity
environment:
- DOT_MOVEMENT_PATH=/.movement
- CELESTIA_RPC_ADDRESS=celestia-light-node:26657
volumes:
- ${DOT_MOVEMENT_PATH}:/.movement
depends_on:
setup:
condition: service_healthy
healthcheck:
test: [ "CMD-SHELL", "echo 'health check'" ]
retries: 3
start_period: 3s
restart: on-failure:3

# turn off celestia-light-node-synced
celestia-light-node-synced:
image: busybox
container_name: celestia-light-node-synced
command: echo "No sync check when following."
environment:
- DOT_MOVEMENT_PATH=/.movement
volumes:
- ${DOT_MOVEMENT_PATH}:/.movement
depends_on:
celestia-light-node:
condition: service_healthy

# turn off movement-celestia-da-light-node
movement-celestia-da-light-node:
image: busybox
container_name: movement-celestia-da-light-node
command: sleep infinity
healthcheck:
test: [ "CMD-SHELL", "echo 'health check'" ]
retries: 3
start_period: 3s

# turn off movement-faucet-service
movement-faucet-service:
image: busybox
container_name: movement-faucet-service
command: sleep infinity
healthcheck:
test: [ "CMD-SHELL", "echo 'health check'" ]
retries: 3
start_period: 3s

movement-snapshot-node:
image: ghcr.io/movementlabsxyz/movement-full-node:${CONTAINER_REV}
container_name: movement-snapshot-node
environment:
- DOT_MOVEMENT_PATH=/.movement
- MOVEMENT_TIMING=info
- SUZUKA_TIMING_LOG=/.movement/movement-timing.log
- RUST_BACKTRACE=1
- SYNC_PATTERN=${SYNC_PATTERN}
- SYNC_BUCKET=${SYNC_BUCKET}
- SYNC_ARCHIVE=${SYNC_ARCHIVE}
entrypoint: /bin/sh
command: |
sh -c '
while true; do
timeout 60s movement-full-node run || echo "Node run timed out"
echo "Taking snapshot..."
movement-full-node backup save-and-push $SYNC_BUCKET $SYNC_PATTERN $SYNC_ARCHIVE || echo "Snapshot failed"
done
'
volumes:
- ${DOT_MOVEMENT_PATH}:/.movement
depends_on:
- movement-celestia-da-light-node
ports:
- "30731:30731"
- "30734:30734"
healthcheck:
test: [ "CMD-SHELL", "nc -zv 0.0.0.0 39731" ]
retries: 10
interval: 10s
timeout: 5s
restart: on-failure:5

movement-full-node:
image: ghcr.io/movementlabsxyz/movement-full-node:${CONTAINER_REV}
container_name: movement-full-node
depends_on:
movement-snapshot-node:
condition: service_healthy
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ services:
AWS_REGION: ${AWS_REGION:?AWS_REGION is not set}
AWS_ACCESS_KEY_ID: ${AWS_ACCESS_KEY_ID}
AWS_SECRET_ACCESS_KEY: ${AWS_SECRET_ACCESS_KEY}
MOVEMENT_SYNC: ${MOVEMENT_SYNC:?MOVEMENT_SYNC is not set}
MOVEMENT_SYNC: ${MOVEMENT_SYNC}
MAYBE_RUN_LOCAL: "false"
RUST_LOG: info,aws_sdk_s3=debug
volumes:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
services:
setup:
environment:
MOVEMENT_SYNC: ${MOVEMENT_SYNC:?MOVEMENT_SYNC is not set}
MOVEMENT_SYNC: ${MOVEMENT_SYNC}
AWS_REGION: ${AWS_REGION:?AWS_REGION is not set}
AWS_ACCESS_KEY_ID: ${AWS_ACCESS_KEY_ID}
AWS_SECRET_ACCESS_KEY: ${AWS_SECRET_ACCESS_KEY}
Expand Down
20 changes: 20 additions & 0 deletions docker/compose/movement-full-node/snapshot/docker-compose.push.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
version: "3.8"

services:

movement-backup-db:
image: ghcr.io/movementlabsxyz/movement-full-node:${CONTAINER_REV}
container_name: movement-backup-db
environment:
- DOT_MOVEMENT_PATH=/.movement
- MOVEMENT_TIMING=info
- SUZUKA_TIMING_LOG=/.movement/movement-timing.log
- RUST_BACKTRACE=1
- AWS_REGION=us-west-1
- AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY}
- AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID}
- SYNC_BUCKET=${SYNC_BUCKET}
- SYNC_ARCHIVE=${SYNC_BUCKET}
command: backup push $SYNC_BUCKET $SYNC_ARCHIVE
volumes:
- ${DOT_MOVEMENT_PATH}:/.movement
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
version: "3.8"

services:

movement-restore-db:
image: ghcr.io/movementlabsxyz/movement-full-node:${CONTAINER_REV}
container_name: movement-restore-db
environment:
- DOT_MOVEMENT_PATH=/.movement
- MOVEMENT_TIMING=info
- SUZUKA_TIMING_LOG=/.movement/movement-timing.log
- RUST_BACKTRACE=1
- AWS_REGION=us-west-1
- AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY}
- AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID}
- SYNC_BUCKET=${SYNC_BUCKET}
- SYNC_PATTERN=${SYNC_PATTERN}
command: backup restore $SYNC_BUCKET $SYNC_PATTERN
volumes:
- ${DOT_MOVEMENT_PATH}:/.movement
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
version: "3.8"

services:

movement-backup-db:
image: ghcr.io/movementlabsxyz/movement-full-node:${CONTAINER_REV}
container_name: movement-backup-db
environment:
- DOT_MOVEMENT_PATH=/.movement
- MOVEMENT_TIMING=info
- SUZUKA_TIMING_LOG=/.movement/movement-timing.log
- RUST_BACKTRACE=1
- AWS_REGION=us-west-1
- AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY}
- AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID}
- SYNC_PATTERN=${SYNC_PATTERN}
- SYNC_BUCKET=${SYNC_BUCKET}
- SYNC_ARCHIVE=${SYNC_BUCKET}
command: backup save-and-push $SYNC_BUCKET $SYNC_PATTERN $SYNC_ARCHIVE
volumes:
- ${DOT_MOVEMENT_PATH}:/.movement
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
version: "3.8"

services:

movement-backup-db:
image: ghcr.io/movementlabsxyz/movement-full-node:${CONTAINER_REV}
container_name: movement-backup-db
environment:
- DOT_MOVEMENT_PATH=/.movement
- MOVEMENT_TIMING=info
- SUZUKA_TIMING_LOG=/.movement/movement-timing.log
- RUST_BACKTRACE=1
- AWS_REGION=us-west-1
- AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY}
- AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID}
- MOVEMENT_SYNC=${MOVEMENT_SYNC}
- SYNC_PATTERN=${SYNC_PATTERN}
command: backup save $SYNC_PATTERN
volumes:
- ${DOT_MOVEMENT_PATH}:/.movement
2 changes: 2 additions & 0 deletions networks/movement/movement-full-node/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,8 @@ movement-da-light-node-client = { workspace = true}
aptos-framework-elsa-to-biarritz-rc1-migration = { workspace = true }
movement-signer = { workspace = true }
movement-signer-loader = { workspace = true }
syncador = { workspace = true }
syncup = { workspace = true }

[features]
default = []
Expand Down
Loading

0 comments on commit 8bb0fb1

Please sign in to comment.