Skip to content

Commit

Permalink
ci: add test to make sure env vars in .env.example.holesky are valid (#…
Browse files Browse the repository at this point in the history
…286)

* ci: add test to make sure env vars in .env.example.holesky are valid

* ci: add a ping to proxy's health endpoint in test-proxy-startup-with-env-vars script
  • Loading branch information
samlaf authored Feb 12, 2025
1 parent 49cbcc0 commit 703028f
Show file tree
Hide file tree
Showing 6 changed files with 78 additions and 178 deletions.
62 changes: 29 additions & 33 deletions .env.example.holesky
Original file line number Diff line number Diff line change
Expand Up @@ -6,84 +6,80 @@ EIGENDA_PROXY_EIGENDA_SIGNER_PRIVATE_KEY_HEX=
# JSON RPC node endpoint for the Ethereum network used for finalizing DA blobs. See available list here: https://docs.eigenlayer.xyz/eigenda/networks/
EIGENDA_PROXY_EIGENDA_ETH_RPC=https://ethereum-holesky-rpc.publicnode.com

# RPC host of the EigenDA disperser service (e.g., on Holesky this is `disperser-holesky.eigenda.xyz:443`). Full network list available in the documentation.
# RPC URL of the EigenDA disperser service. Mainnet is `disperser.eigenda.xyz:443`).
# Full network list available in the documentation.
EIGENDA_PROXY_EIGENDA_DISPERSER_RPC=disperser-holesky.eigenda.xyz:443

# The deployed EigenDA service manager address. The list can be found here: https://github.com/Layr-Labs/eigenlayer-middleware/?tab=readme-ov-file#current-mainnet-deployment
# The deployed EigenDA service manager address. Mainnet is 0x870679E138bCdf293b7Ff14dD44b70FC97e12fc0
# All deployment addresses can be found here: https://github.com/Layr-Labs/eigenlayer-middleware/?tab=readme-ov-file#current-mainnet-deployment
EIGENDA_PROXY_EIGENDA_SERVICE_MANAGER_ADDR=0xD4A7E1Bd8015057293f0D0A557088c286942e84b

# Custom quorum IDs for writing blobs. Should not include default quorums 0 or 1.
# EIGENDA_PROXY_EIGENDA_CUSTOM_QUORUM_IDS=
EIGENDA_PROXY_EIGENDA_CUSTOM_QUORUM_IDS=

# Directory path to SRS tables
# EIGENDA_PROXY_EIGENDA_TARGET_CACHE_PATH=resources/SRSTables
EIGENDA_PROXY_EIGENDA_TARGET_CACHE_PATH=resources/SRSTables

# The number of Ethereum blocks of confirmation that the DA briging transaction must have before it is assumed by the proxy to be final. The value of `0` indicates that the proxy shouldn't wait for any confirmations
# and 0 indicates that the proxy should wait for finalization.
# EIGENDA_PROXY_EIGENDA_ETH_CONFIRMATION_DEPTH=6
# The number of Ethereum blocks of confirmation that the DA briging transaction must have before it is assumed by the proxy to be final.
# The value of `0` indicates that the proxy shouldn't wait for any confirmations, and 'finalized' indicates that the proxy should wait for finalization.
EIGENDA_PROXY_EIGENDA_CONFIRMATION_DEPTH=6

# Directory path to g1.point file
# EIGENDA_PROXY_EIGENDA_TARGET_KZG_G1_PATH=resources/g1.point
EIGENDA_PROXY_EIGENDA_TARGET_KZG_G1_PATH=resources/g1.point

# Directory path to g2.point.powerOf2 file
# EIGENDA_PROXY_EIGENDA_TARGET_KZG_G2_POWER_OF_2_PATH=resources/g2.point.powerOf2
EIGENDA_PROXY_EIGENDA_TARGET_KZG_G2_POWER_OF_2_PATH=resources/g2.point.powerOf2

# Disable point verification mode. This mode performs IFFT on data before writing and FFT on data after reading. Disabling requires supplying the entire blob for verification against the KZG commitment.
# EIGENDA_PROXY_EIGENDA_DISABLE_POINT_VERIFICATION_MODE=false
EIGENDA_PROXY_EIGENDA_DISABLE_POINT_VERIFICATION_MODE=false

# Disable TLS for gRPC communication with the EigenDA disperser
# EIGENDA_PROXY_EIGENDA_GRPC_DISABLE_TLS=false
EIGENDA_PROXY_EIGENDA_GRPC_DISABLE_TLS=false

# Maximum blob length to be written or read from EigenDA. Determines the number of SRS points loaded into memory for KZG commitments. Example units: '30MiB', '4Kb', '30MB'. Maximum size slightly exceeds 1GB.
# EIGENDA_PROXY_EIGENDA_MAX_BLOB_LENGTH=16MiB
EIGENDA_PROXY_EIGENDA_MAX_BLOB_LENGTH=16MiB

# Blob encoding version to use when writing blobs from the high-level interface
# EIGENDA_PROXY_EIGENDA_PUT_BLOB_ENCODING_VERSION=0
EIGENDA_PROXY_EIGENDA_PUT_BLOB_ENCODING_VERSION=0

# Interval between retries when awaiting network blob finalization
# EIGENDA_PROXY_EIGENDA_STATUS_QUERY_INTERVAL=5s
EIGENDA_PROXY_EIGENDA_STATUS_QUERY_INTERVAL=5s

# Total time to wait for a response from the EigenDA disperser
# EIGENDA_PROXY_EIGENDA_RESPONSE_TIMEOUT=10s
EIGENDA_PROXY_EIGENDA_RESPONSE_TIMEOUT=10s

# Duration to wait for a blob to finalize after being sent for dispersal
# EIGENDA_PROXY_EIGENDA_STATUS_QUERY_TIMEOUT=45m0s

# Color the log output if in terminal mode
# EIGENDA_PROXY_LOG_COLOR=false
EIGENDA_PROXY_EIGENDA_STATUS_QUERY_TIMEOUT=30m0s

# Format the log output. Supported formats: 'text', 'terminal', 'logfmt', 'json', 'json-pretty'
# EIGENDA_PROXY_LOG_FORMAT=text
EIGENDA_PROXY_LOG_FORMAT=text

# The lowest log level that will be output
# EIGENDA_PROXY_LOG_LEVEL=INFO

# Show pid in the log
# EIGENDA_PROXY_LOG_PID=false
EIGENDA_PROXY_LOG_LEVEL=INFO

# Whether to use mem-store for DA logic
# EIGENDA_PROXY_MEMSTORE_ENABLED=false
EIGENDA_PROXY_MEMSTORE_ENABLED=false

# Duration that a blob/commitment pair are allowed to live
# EIGENDA_PROXY_MEMSTORE_EXPIRATION=25m0s
EIGENDA_PROXY_MEMSTORE_EXPIRATION=25m0s

# Metrics listening address
# EIGENDA_PROXY_METRICS_ADDR=0.0.0.0
EIGENDA_PROXY_METRICS_ADDR=0.0.0.0

# Enable the metrics server
# EIGENDA_PROXY_METRICS_ENABLED=false
EIGENDA_PROXY_METRICS_ENABLED=false

# Metrics listening port
# EIGENDA_PROXY_METRICS_PORT=7300
EIGENDA_PROXY_METRICS_PORT=7300

# access key id for S3 storage
# EIGENDA_PROXY_S3_ACCESS_KEY_ID=
EIGENDA_PROXY_S3_ACCESS_KEY_ID=

# access key secret for S3 storage
# EIGENDA_PROXY_S3_ACCESS_KEY_SECRET=
EIGENDA_PROXY_S3_ACCESS_KEY_SECRET=

# bucket name for S3 storage
# EIGENDA_PROXY_S3_BUCKET=
EIGENDA_PROXY_S3_BUCKET=

# endpoint for S3 storage
# EIGENDA_PROXY_S3_ENDPOINT
EIGENDA_PROXY_S3_ENDPOINT=
88 changes: 0 additions & 88 deletions .env.example.mainnet

This file was deleted.

1 change: 1 addition & 0 deletions .envrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
dotenv .env.example.holesky
17 changes: 16 additions & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,23 @@ jobs:
with:
go-version: 1.22

- name: Build App
- name: Check that build succeeds
run: make eigenda-proxy

flags:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3

- name: Set up Go
uses: actions/setup-go@v3
with:
go-version: 1.22

# This checks that the flags in .env.holesky.example are valid and allow the proxy to start
- name: Run flag test
run: ${{ github.workspace }}/scripts/test-proxy-startup-with-env-vars.sh

docker:
runs-on: ubuntu-latest
Expand Down
Loading

0 comments on commit 703028f

Please sign in to comment.