8000 Refactor(chart, sequencer): restructure sequencer chart, adjust configs by quasystaty1 · Pull Request #1193 · astriaorg/astria · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Refactor(chart, sequencer): restructure sequencer chart, adjust configs #1193

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 55 commits into from
Jun 27, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
55 commits
Select commit Hold shift + click to select a range
251ac59
chore(chart)!: update default cometbft config vals
joroshiba Jun 10, 2024
33a50fa
Chore(charts): enable cometbft values configurations
quasystaty1 Jun 12, 2024
b1686cf
Add cometbft value configurations
quasystaty1 Jun 13, 2024
f3aefd4
Chore(chart): restructure sequencer chart, configure genesis values
quasystaty1 Jun 18, 2024
02e9df7
adjust dev values
quasystaty1 Jun 18, 2024
be3e0fe
Add configurible genesis base fees
quasystaty1 Jun 18, 2024
da701ce
WIP
SuperFluffy Jun 19, 2024
9853ecf
impl serde for all denom types, provide snapshot tests
SuperFluffy Jun 19, 2024
d1166fd
sequencer: genesis serde in terms of core types
SuperFluffy Jun 19, 2024
c547123
check that the genesis file contains only addresses with configured p…
SuperFluffy Jun 20, 2024
1e06384
update all tests that use a genesis, initialize the base prefix globally
SuperFluffy Jun 20, 2024
f478f2d
update address construction where necessary, stateless checks on all …
SuperFluffy Jun 20, 2024
99a302f
remove unused code
SuperFluffy Jun 20, 2024
6b4d44f
reject storage reads with incorrect addresses
SuperFluffy Jun 20, 2024
27f802b
use plain addresses as storage keys, not hex
SuperFluffy Jun 20, 2024
ca1c336
remove chain id derived address construction
SuperFluffy Jun 20, 2024
9c0e8ba
remove unused dep
SuperFluffy Jun 20, 2024
b271e79
clippy
SuperFluffy Jun 20, 2024
784713f
clippy
SuperFluffy Jun 20, 2024
92642ed
more clippy
SuperFluffy Jun 20, 2024
abef0b5
address review comments
quasystaty1 Jun 21, 2024
5effea6
make address prefixes configurable on bridge withdrawer
SuperFluffy Jun 21, 2024
8ff0b74
make address prefixes configurable on comnposer
SuperFluffy Jun 21, 2024
89c2663
make astria-prefix const private
SuperFluffy Jun 21, 2024
8ab6f1c
remove bridge withdrawer dependence on core const
SuperFluffy Jun 21, 2024
f9e6f2d
remove sequencer dependence on core const
SuperFluffy Jun 21, 2024
8fe9bea
remove sequencer0client dependence on core const
SuperFluffy Jun 21, 2024
00dc001
make prefix configurable for all astria cli commands that construct a…
SuperFluffy Jun 21, 2024
9cb111b
use address bytes without prefix to construct storage keys; provide s…
SuperFluffy Jun 21, 2024
124fb72
fix tests
SuperFluffy Jun 21, 2024
6d64504
fix racy sequencer address prefix setter
SuperFluffy Jun 21, 2024
b18dd44
add subcommand to construct bech32m addresses from hex bytes and prefix
SuperFluffy Jun 21, 2024
8d9188a
nit: fix spacing
quasystaty1 Jun 21, 2024
0f7226e
Merge branch 'main' into quasystaty1/updated-chart-params
quasystaty1 Jun 21, 2024
2a21afa
lint fixes
quasystaty1 Jun 21, 2024
af0bcdc
merge fixes
quasystaty1 Jun 21, 2024
3c67150
WIP: update charts
SuperFluffy Jun 21, 2024
4f8c670
bump evm chart
SuperFluffy Jun 24, 2024
1707947
add address prefixes to values.yaml
SuperFluffy Jun 24, 2024
956bc96
fix incorrectly named field in genesis
SuperFluffy Jun 24, 2024
997d0a1
increase geth resources
quasystaty1 Jun 24, 2024
ea51423
fix evm-rollup charts
SuperFluffy Jun 24, 2024
ec240aa
Merge branch 'superfluffy/bech32-aware-sequencer' of github.com:astri…
quasystaty1 Jun 24, 2024
8b6df30
fix genesis file
quasystaty1 Jun 24, 2024
93098e6
fix secret provider template
quasystaty1 Jun 25, 2024
d6183eb
Merge branch 'main' of github.com:astriaorg/astria into quasystaty1/u…
quasystaty1 Jun 27, 2024
6d4e9b3
Merge branch 'main' of github.com:astriaorg/astria into quasystaty1/u…
quasystaty1 Jun 27, 2024
4c8cc95
fix deployment
quasystaty1 Jun 27, 2024
19eb634
Merge branch 'main' into quasystaty1/updated-chart-params
quasystaty1 Jun 27, 2024
87edd14
bump chart version, fix conflicts
quasystaty1 Jun 27, 2024
485778d
resolve conflicts
quasystaty1 Jun 27, 2024
3a67c19
remove old snapshots
quasystaty1 Jun 27, 2024
f42f5c3
Update charts/sequencer/files/cometbft/config/genesis.json
quasystaty1 Jun 27, 2024
0e11c98
Update charts/sequencer/values.yaml
quasystaty1 Jun 27, 2024
5744f03
astria-geth devTag update
quasystaty1 Jun 27, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion charts/evm-rollup/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ type: application
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.20.2
version: 0.20.3

# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
Expand Down
6 changes: 3 additions & 3 deletions charts/evm-rollup/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ images:
geth:
repo: ghcr.io/astriaorg/astria-geth
tag: 0.11.0
devTag: pr-30
devTag: latest
conductor:
repo: ghcr.io/astriaorg/conductor
tag: "0.17.0"
Expand Down Expand Up @@ -332,8 +332,8 @@ resources:
memory: 1Gi
geth:
requests:
cpu: 4
memory: 16Gi
cpu: 16
memory: 32Gi

storage:
enabled: false
Expand Down
2 changes: 1 addition & 1 deletion charts/sequencer/Chart.lock
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@ dependencies:
repository: file://../sequencer-relayer
version: 0.8.5
digest: sha256:66ce8c4cd8500a63282f7ab112682f8cd50c2253a0b046ec41e0c637c9b66bd9
generated: "2024-06-10T13:21:58.112283375+01:00"
generated: "2024-06-12T20:19:19.560729+03:00"
5 changes: 2 additions & 3 deletions charts/sequencer/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,7 @@ type: application
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.16.0

version: 0.16.2
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
Expand All @@ -32,7 +31,7 @@ dependencies:
maintainers:
- name: wafflesvonmaple
url: astria.org
- name: steezeburger
- name: quasystaty1
url: astria.org
- name: joroshiba
url: astria.org
88 changes: 44 additions & 44 deletions charts/sequencer/files/cometbft/config/config.toml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ version = "0.38.6"
proxy_app = "tcp://127.0.0.1:{{ .Values.ports.sequencerABCI }}"

# A custom human readable name for this node
moniker = "{{ .Values.config.moniker }}"
moniker = "{{ .Values.moniker }}"

# Database backend: goleveldb | cleveldb | boltdb | rocksdb | badgerdb
# * goleveldb (github.com/syndtr/goleveldb - most popular implementation)
Expand All @@ -45,19 +45,19 @@ db_backend = "goleveldb"
# Database directory
db_dir = "data"

# Output level for logging, including package level options
log_level = "info"
# Output level for logging, including package level options, defaults to info
log_level = "{{ .Values.cometbft.config.logLevel }}"

# Output format: 'plain' (colored text) or 'json'
log_format = "plain"
# Output format: 'plain' (colored text) or 'json', default to plain
log_format = "{{ .Values.cometbft.config.logFormat }}"

##### additional base config options #####

# Path to the JSON file containing the initial validator set and other meta data
genesis_file = "config/genesis.json"

# Path to the JSON file containing the private key to use as a validator in the consensus protocol
priv_validator_key_file = "/secrets/{{ .Values.config.cometBFT.secrets.privValidatorKey.filename }}"
priv_validator_key_file = "/secrets/{{ .Values.cometbft.secrets.privValidatorKey.filename }}"

# Path to the JSON file containing the last sign state of a validator
priv_validator_state_file = "data/priv_validator_state.json"
Expand All @@ -67,7 +67,7 @@ priv_validator_state_file = "data/priv_validator_state.json"
priv_validator_laddr = ""

# Path to the JSON file containing the private key to use for node authentication in the p2p protocol
node_key_file = "/secrets/{{ .Values.config.cometBFT.secrets.nodeKey.filename }}"
node_key_file = "/secrets/{{ .Values.cometbft.secrets.nodeKey.filename }}"

# Mechanism to connect to the ABCI application: socket | grpc
abci = "socket"
Expand All @@ -87,7 +87,7 @@ filter_peers = false
[rpc]

# TCP or UNIX socket address for the RPC server to listen on
laddr = "tcp://0.0.0.0:{{ .Values.ports.cometBFTRPC }}"
laddr = "tcp://0.0.0.0:{{ .Values.ports.cometbftRpc }}"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Potentially could allow this to be 127.0.0.1 if we allow rpc to be disabled?


# A list of origins a cross-domain request can be executed from
# Default value '[]' disables cors support
Expand All @@ -111,7 +111,7 @@ grpc_laddr = ""
# 0 - unlimited.
# Should be < {ulimit -Sn} - {MaxNumInboundPeers} - {MaxNumOutboundPeers} - {N of wal, db and other open files}
# 1024 - 40 - 10 - 50 = 924 = ~900
grpc_max_open_connections = 900
grpc_max_open_connections = {{ .Values.cometbft.config.grpc.maxOpenConnections }}

# Activate unsafe RPC commands like /dial_seeds and /unsafe_flush_mempool
unsafe = false
Expand All @@ -123,17 +123,17 @@ unsafe = false
# 0 - unlimited.
# Should be < {ulimit -Sn} - {MaxNumInboundPeers} - {MaxNumOutboundPeers} - {N of wal, db and other open files}
# 1024 - 40 - 10 - 50 = 924 = ~900
max_open_connections = 900
max_open_connections = {{ .Values.cometbft.config.rpc.maxOpenConnections }}

# Maximum number of unique clientIDs that can /subscribe
# If you're using /broadcast_tx_commit, set to the estimated maximum number
# of broadcast_tx_commit calls per block.
max_subscription_clients = 100
max_subscription_clients = {{ .Values.cometbft.config.rpc.maxSubscriptionClients }}

# Maximum number of unique queries a given client can /subscribe to
# If you're using GRPC (or Local RPC client) and /broadcast_tx_commit, set to
# the estimated # maximum number of broadcast_tx_commit calls per block.
max_subscriptions_per_client = 5
max_subscriptions_per_client = {{ .Values.cometbft.config.rpc.maxSubscriptionsPerClient }}

# Experimental parameter to specify the maximum number of events a node will
# buffer, per subscription, before returning an error and closing the
Expand Down Expand Up @@ -169,10 +169,10 @@ experimental_close_on_slow_client = false
timeout_broadcast_tx_commit = "10s"

# Maximum size of request body, in bytes
max_body_bytes = 1000000
max_body_bytes = 1_000_000

# Maximum size of request header, in bytes
max_header_bytes = 1048576
max_header_bytes = 1_048_576

# The path to a file containing certificate that is used to create the HTTPS server.
# Might be either absolute path or path related to CometBFT's config directory.
Expand All @@ -198,18 +198,18 @@ pprof_laddr = ""
[p2p]

# Address to listen for incoming connections
laddr = "{{ .Values.config.cometBFT.p2p.laddr }}:{{ .Values.ports.cometBFTP2P }}"
laddr = "{{ .Values.cometbft.config.p2p.laddr }}:{{ .Values.ports.cometbftP2P }}"

# Address to advertise to peers for them to dial. If empty, will use the same
# port as the laddr, and will introspect on the listener to figure out the
# address. IP and port are required. Example: 159.89.10.97:26656
external_address = "{{ .Values.config.cometBFT.p2p.externalAddress }}"
external_address = "{{ .Values.cometbft.config.p2p.externalAddress }}"

# Comma separated list of seed nodes to connect to
seeds = "{{ join "," .Values.config.cometBFT.p2p.seeds }}"
seeds = "{{ join "," .Values.cometbft.config.p2p.seeds }}"

# Comma separated list of nodes to keep persistent connections to
persistent_peers = "{{ join "," .Values.config.cometBFT.p2p.persistentPeers }}"
persistent_peers = "{{ join "," .Values.cometbft.config.p2p.persistentPeers }}"

# Path to address book
addr_book_file = "config/addrbook.json"
Expand All @@ -219,16 +219,16 @@ addr_book_file = "config/addrbook.json"
addr_book_strict = true

# Maximum number of inbound peers
max_num_inbound_peers = 40
max_num_inbound_peers = {{ .Values.cometbft.config.p2p.maxInboundPeers }}

# Maximum number of outbound peers to connect to, excluding persistent peers
max_num_outbound_peers = 10
max_num_outbound_peers = {{ .Values.cometbft.config.p2p.maxOutboundPeers }}

# List of node IDs, to which a connection will be (re)established ignoring any existing limits
unconditional_peer_ids = "{{ join "," .Values.config.cometBFT.p2p.unconditionalPeers }}"
unconditional_peer_ids = "{{ join "," .Values.cometbft.config.p2p.unconditionalPeers }}"

# Maximum pause when redialing a persistent peer (if zero, exponential backoff is used)
persistent_peers_max_dial_period = "0s"
persistent_peers_max_dial_period = "{{ .Values.cometbft.config.p2p.persistentPeersMaxDialPeriod }}"

# Time to wait before flushing messages out on the connection
flush_throttle_timeout = "100ms"
Expand All @@ -237,10 +237,10 @@ flush_throttle_timeout = "100ms"
max_packet_msg_payload_size = 1024

# Rate at which packets can be sent, in bytes/second
send_rate = 5120000
send_rate = {{ .Values.cometbft.config.p2p.sendRate }}

# Rate at which packets can be received, in bytes/second
recv_rate = 5120000
recv_rate = {{ .Values.cometbft.config.p2p.recvRate }}

# Set true to enable the peer-exchange reactor
pex = true
Expand All @@ -249,17 +249,17 @@ pex = true
# peers. If another node asks it for addresses, it responds and disconnects.
#
# Does not work if the peer-exchange reactor is disabled.
seed_mode = {{ .Values.config.cometBFT.p2p.seedMode }}
seed_mode = "{{ .Values.cometbft.config.p2p.seedMode }}"

# Comma separated list of peer IDs to keep private (will not be gossiped to other peers)
private_peer_ids = "{{ join "," .Values.config.cometBFT.p2p.privatePeers }}"
private_peer_ids = "{{ join "," .Values.cometbft.config.p2p.privatePeers }}"

# Toggle to disable guard against peers connecting from the same ip.
allow_duplicate_ip = false
allow_duplicate_ip = "{{ .Values.cometbft.config.p2p.allowDuplicateIp }}"

# Peer connection configuration.
handshake_timeout = "20s"
dial_timeout = "3s"
handshake_timeout = "{{ .Values.cometbft.config.p2p.handshakeTimeout }}"
dial_timeout = "{{ .Values.cometbft.config.p2p.dialTimeout }}"

#######################################################
### Mempool Configuration Option ###
Expand Down Expand Up @@ -297,15 +297,15 @@ broadcast = true
wal_dir = ""

# Maximum number of transactions in the mempool
size = 5000
size = {{ .Values.cometbft.config.mempool.size }}

# Limit the total size of all txs in the mempool.
# This only accounts for raw transactions (e.g. given 1MB transactions and
# max_txs_bytes=5MB, mempool will only accept 5 transactions).
max_txs_bytes = 1073741824
max_txs_bytes = {{ .Values.cometbft.config.mempool.maxTxsBytes}}

# Size of the cache (used to filter transactions we saw earlier) in transactions
cache_size = 10000
cache_size = {{ .Values.cometbft.config.mempool.cacheSize}}

# Do not remove invalid transactions from the cache (default: false)
# Set to true if it's not possible for any invalid transaction to become valid
Expand All @@ -314,7 +314,7 @@ keep-invalid-txs-in-cache = false

# Maximum size of a single transaction.
# NOTE: the max size of a tx transmitted over the network is {max_tx_bytes}.
max_tx_bytes = 1048576
max_tx_bytes = {{ .Values.cometbft.config.mempool.maxTxBytes}}

# Maximum size of a batch of transactions to send to a peer
# Including space needed by encoding (one varint per transaction).
Expand Down Expand Up @@ -393,21 +393,21 @@ version = "v0"
wal_file = "data/cs.wal/wal"

# How long we wait for a proposal block before prevoting nil
timeout_propose = "3s"
timeout_propose = "{{ .Values.cometbft.config.consensus.timeoutPropose }}"
# How much timeout_propose increases with each round
timeout_propose_delta = "500ms"
timeout_propose_delta = "{{ .Values.cometbft.config.consensus.timeoutProposeDelta }}"
# How long we wait after receiving +2/3 prevotes for “anything” (ie. not a single block or nil)
timeout_prevote = "1s"
timeout_prevote = "{{ .Values.cometbft.config.consensus.timeoutPrevote }}"
# How much the timeout_prevote increases with each round
timeout_prevote_delta = "500ms"
timeout_prevote_delta = "{{ .Values.cometbft.config.consensus.timeoutPrevoteDelta }}"
# How long we wait after receiving +2/3 precommits for “anything” (ie. not a single block or nil)
timeout_precommit = "1s"
timeout_precommit = "{{ .Values.cometbft.config.consensus.timeoutPrecommit }}"
# How much the timeout_precommit increases with each round
timeout_precommit_delta = "500ms"
timeout_precommit_delta = "{{ .Values.cometbft.config.consensus.timeoutPrecommitDelta }}"
# How long we wait after committing a block, before starting on the new
# height (this gives us a chance to receive some more precommits, even
# though we already have +2/3).
timeout_commit = "2s"
timeout_commit = "{{ .Values.cometbft.config.consensus.timeoutCommit }}"

# How many blocks to look back to check existence of the node's consensus votes before joining consensus
# When non-zero, the node will panic upon restart
Expand Down Expand Up @@ -453,16 +453,16 @@ discard_abci_responses = false
# - When "kv" is chosen "tx.height" and "tx.hash" will always be indexed.
# 3) "psql" - the indexer services backed by PostgreSQL.
# When "kv" or "psql" is chosen "tx.height" and "tx.hash" will always be indexed.
{{- if .Values.config.cometBFT.psql.enabled }}
{{- if .Values.cometbft.config.psql.enabled }}
indexer = "psql"
{{- else }}
indexer = "kv"
{{- end }}

# The PostgreSQL connection configuration, the connection format:
# postgresql://<user>:<password>@<host>:<port>/<db>?<opts>
{{- if .Values.config.cometBFT.psql.enabled }}
psql-conn = "{{ .Values.config.cometBFt.psql.conn }}"
{{- if .Values.cometbft.config.psql.enabled }}
psql-conn = "{{ .Values.cometbft.config.psql.conn }}"
{{- else }}
psql-conn = ""
{{- end }}
Expand All @@ -486,4 +486,4 @@ prometheus_listen_addr = ":26660"
max_open_connections = 3

# Instrumentation namespace
namespace = "cometbft"
namespace = "{{ .Values.cometbft.config.instrumentation.namespace }}"
Loading
0