Skip to content

Commit

Permalink
Merge branch 'compatible' into lk86/push-daemon-images
Browse files Browse the repository at this point in the history
  • Loading branch information
lk86 authored Mar 10, 2023
2 parents 196d2a4 + 6f53f32 commit 9703587
Show file tree
Hide file tree
Showing 34 changed files with 1,102 additions and 608 deletions.
76 changes: 41 additions & 35 deletions automation/terraform/modules/kubernetes/testnet/locals.tf
Original file line number Diff line number Diff line change
Expand Up @@ -8,25 +8,7 @@ provider "helm" {
locals {
mina_helm_repo = "https://coda-charts.storage.googleapis.com"

peers = var.additional_peers

daemon = {
runtimeConfig = var.runtime_config
image = var.mina_image
useCustomEntrypoint = var.use_custom_entrypoint
customEntrypoint = var.custom_entrypoint
privkeyPass = var.block_producer_key_pass
seedPeers = local.peers
logLevel = var.log_level
logSnarkWorkGossip = var.log_snark_work_gossip
logPrecomputedBlocks = var.log_precomputed_blocks
logTxnPoolGossip = var.log_txn_pool_gossip
uploadBlocksToGCloud = var.upload_blocks_to_gcloud
seedPeersURL = var.seed_peers_url
exposeGraphql = var.expose_graphql
cpuRequest = var.cpu_request
memRequest= var.mem_request
}
# peers = var.additional_peers

healthcheck_vars = {
enabled = var.healthcheck_enabled
Expand All @@ -38,41 +20,60 @@ locals {
seed_vars = {
testnetName = var.testnet_name
mina = {
runtimeConfig = local.daemon.runtimeConfig
runtimeConfig = var.runtime_config
image = var.mina_image
useCustomEntrypoint = var.use_custom_entrypoint
customEntrypoint = var.custom_entrypoint
privkeyPass = var.block_producer_key_pass
// TODO: Change this to a better name
seedPeers = local.peers
seedPeers = var.additional_peers
logLevel = var.log_level
logSnarkWorkGossip = var.log_snark_work_gossip
logTxnPoolGossip = var.log_txn_pool_gossip
ports = {
client = "8301"
graphql = "3085"
metrics = "8081"
p2p = var.seed_port
p2p = var.seed_external_port
}
seedPeersURL = var.seed_peers_url
# seedPeersURL = var.seed_peers_url
uploadBlocksToGCloud = var.upload_blocks_to_gcloud
exposeGraphql = var.expose_graphql
}

healthcheck = local.healthcheck_vars

seedConfigs = [
for index, config in var.seed_configs : {
name = config.name
class = config.class
libp2pSecret = config.libp2p_secret
libp2pSecretPassword = config.libp2p_secret_pw
# privateKeySecret = config.private_key_secret
externalPort = config.external_port
# externalPort = config.external_port
externalIp = config.external_ip
enableArchive = config.enableArchive
archiveAddress = config.archiveAddress
}
]

healthcheck = local.healthcheck_vars

}

daemon = {
runtimeConfig = var.runtime_config
image = var.mina_image
useCustomEntrypoint = var.use_custom_entrypoint
customEntrypoint = var.custom_entrypoint
# privkeyPass = var.block_producer_key_pass
seedPeers = var.additional_peers
logLevel = var.log_level
logSnarkWorkGossip = var.log_snark_work_gossip
logPrecomputedBlocks = var.log_precomputed_blocks
logTxnPoolGossip = var.log_txn_pool_gossip
uploadBlocksToGCloud = var.upload_blocks_to_gcloud
# seedPeersURL = var.seed_peers_url
exposeGraphql = var.expose_graphql
cpuRequest = var.cpu_request
memRequest= var.mem_request
}

block_producer_vars = {
Expand Down Expand Up @@ -109,7 +110,10 @@ locals {
runWithUserAgent = config.run_with_user_agent
runWithBots = config.run_with_bots
enableGossipFlooding = config.enable_gossip_flooding
privateKeySecret = config.private_key_secret
keypairName = config.keypair_name
# privateKey = config.private_key
# publicKey = config.private_key
privateKeyPW = config.privkey_password
# libp2pSecret = config.libp2p_secret
enablePeerExchange = config.enable_peer_exchange
isolated = config.isolated
Expand All @@ -125,9 +129,9 @@ locals {
image = var.mina_image
useCustomEntrypoint = var.use_custom_entrypoint
customEntrypoint = var.custom_entrypoint
seedPeers = local.peers
runtimeConfig = local.daemon.runtimeConfig
seedPeersURL = var.seed_peers_url
seedPeers = var.additional_peers
runtimeConfig = var.runtime_config
# seedPeersURL = var.seed_peers_url
}
healthcheck = local.healthcheck_vars
archive = item
Expand Down Expand Up @@ -166,10 +170,12 @@ locals {
mina = local.daemon
healthcheck = local.healthcheck_vars

coordinatorName = "snark-coordinator-${lower(substr(snark.snark_worker_public_key,-6,-1))}"
workerName = "snark-worker-${lower(substr(snark.snark_worker_public_key,-6,-1))}"
# coordinatorName = "snark-coordinator-${lower(substr(snark.snark_worker_public_key,-6,-1))}"
coordinatorName = snark.snark_coordinator_name
# workerName = "snark-worker-${lower(substr(snark.snark_worker_public_key,-6,-1))}"
workerName = "${snark.snark_coordinator_name}-worker"
workerReplicas = snark.snark_worker_replicas
coordinatorHostName = "snark-coordinator-${lower(substr(snark.snark_worker_public_key,-6,-1))}.${var.testnet_name}"
coordinatorHostName = "${snark.snark_coordinator_name}.${var.testnet_name}"
coordinatorRpcPort = 8301
coordinatorHostPort = snark.snark_coordinators_host_port
publicKey =snark.snark_worker_public_key
Expand Down Expand Up @@ -204,6 +210,6 @@ locals {
makeReportEveryMins = var.make_report_every_mins
makeReportDiscordWebhookUrl = var.make_report_discord_webhook_url
makeReportAccounts = var.make_report_accounts
seedPeersURL = var.seed_peers_url
seedPeersURL = var.additional_peers
}
}
85 changes: 48 additions & 37 deletions automation/terraform/modules/kubernetes/testnet/variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -146,11 +146,6 @@ variable "mem_request" {

# Seed Vars

variable "seed_port" {
type = string
default = "10001"
}

variable "seed_region" {
type = string
default = "us-west1"
Expand All @@ -161,12 +156,34 @@ variable "seed_zone" {
default = "us-west1-a"
}

variable "seed_discovery_keypairs" {
type = list(any)
default = [
"CAESQNf7ldToowe604aFXdZ76GqW/XVlDmnXmBT+otorvIekBmBaDWu/6ZwYkZzqfr+3IrEh6FLbHQ3VSmubV9I9Kpc=,CAESIAZgWg1rv+mcGJGc6n6/tyKxIehS2x0N1Uprm1fSPSqX,12D3KooWAFFq2yEQFFzhU5dt64AWqawRuomG9hL8rSmm5vxhAsgr",
"CAESQKtOnmYHQacRpNvBZDrGLFw/tVB7V4I14Y2xtGcp1sEsEyfcsNoFi7NnUX0T2lQDGQ31KvJRXJ+u/f9JQhJmLsI=,CAESIBMn3LDaBYuzZ1F9E9pUAxkN9SryUVyfrv3/SUISZi7C,12D3KooWB79AmjiywL1kMGeKHizFNQE9naThM2ooHgwFcUzt6Yt1"
]
# variable "seed_discovery_keypairs" {
# type = list(any)
# default = [
# "CAESQNf7ldToowe604aFXdZ76GqW/XVlDmnXmBT+otorvIekBmBaDWu/6ZwYkZzqfr+3IrEh6FLbHQ3VSmubV9I9Kpc=,CAESIAZgWg1rv+mcGJGc6n6/tyKxIehS2x0N1Uprm1fSPSqX,12D3KooWAFFq2yEQFFzhU5dt64AWqawRuomG9hL8rSmm5vxhAsgr",
# "CAESQKtOnmYHQacRpNvBZDrGLFw/tVB7V4I14Y2xtGcp1sEsEyfcsNoFi7NnUX0T2lQDGQ31KvJRXJ+u/f9JQhJmLsI=,CAESIBMn3LDaBYuzZ1F9E9pUAxkN9SryUVyfrv3/SUISZi7C,12D3KooWB79AmjiywL1kMGeKHizFNQE9naThM2ooHgwFcUzt6Yt1"
# ]
# }

variable "seed_external_port" {
type = string
default = "10001"
}

variable "seed_configs" {
type = list(
object({
name = string,
class = string,
libp2p_secret = string,
libp2p_secret_pw = string
# external_port = number,
external_ip = string,
# private_key_secret = string,
enableArchive = bool,
archiveAddress = string
})
)
default = []
}

# Block Producer Vars
Expand All @@ -176,16 +193,19 @@ variable "log_level" {
default = "Trace"
}

variable "block_producer_key_pass" {
type = string
}
# variable "block_producer_key_pass" {
# type = string
# }

variable "block_producer_configs" {
type = list(
object({
name = string,
class = string,
private_key_secret = string,
keypair_name = string,
# private_key = string,
# public_key = string,
privkey_password = string,
external_port = number,
libp2p_secret = string,
enable_gossip_flooding = bool,
Expand All @@ -200,31 +220,22 @@ variable "block_producer_configs" {
default = []
}

variable "seed_configs" {
type = list(
object({
name = string,
class = string,
libp2p_secret = string,
external_port = number,
external_ip = string,
# private_key_secret = string,
enableArchive = bool,
archiveAddress = string
})
)
default = []
}


variable "plain_node_configs" {
default = null
}

# Snark Worker Vars

variable "snark_coordinators" {
type = list(any)
type = list(
object({

snark_coordinator_name = string,
snark_worker_replicas = number
snark_worker_fee = number
snark_worker_public_key = string
snark_coordinators_host_port = number
}))
default = []
}

Expand Down Expand Up @@ -337,7 +348,7 @@ variable "upload_blocks_to_gcloud" {
default = false
}

variable "seed_peers_url" {
type = string
default = ""
}
# variable "seed_peers_url" {
# type = string
# default = ""
# }
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,13 @@ resource "kubernetes_ingress" "testnet_graphql_ingress" {

spec {
rule {
host = "${local.graphql_ingress_dns}"
host = local.graphql_ingress_dns
http {
dynamic "path" {
for_each = concat(
[local.seed_config.name],
[for config in var.block_producer_configs : config.name],
var.snark_worker_replicas > 0 ? [local.snark_coordinator_name] : []
var.snark_coordinator_config != null ? [var.snark_coordinator_config.name] : []
)

content {
Expand Down
29 changes: 18 additions & 11 deletions automation/terraform/modules/o1-integration/inputs.tf
Original file line number Diff line number Diff line change
Expand Up @@ -50,18 +50,23 @@ variable "runtime_config" {
type = string
}

variable "snark_worker_replicas" {
type = number
}

variable "snark_worker_fee" {
type = string
}

variable "snark_worker_public_key" {
type = string
default = "4vsRCVadXwWMSGA9q81reJRX3BZ5ZKRtgZU7PtGsNq11w2V9tUNf4urZAGncZLUiP4SfWqur7AZsyhJKD41Ke7rJJ8yDibL41ePBeATLUnwNtMTojPDeiBfvTfgHzbAVFktD65vzxMNCvvAJ"
# variable "snark_worker_public_key" {
# type = string
# default = "4vsRCVadXwWMSGA9q81reJRX3BZ5ZKRtgZU7PtGsNq11w2V9tUNf4urZAGncZLUiP4SfWqur7AZsyhJKD41Ke7rJJ8yDibL41ePBeATLUnwNtMTojPDeiBfvTfgHzbAVFktD65vzxMNCvvAJ"
# }

variable "snark_coordinator_config" {
description = "configurations for the snark coordinator and its workers"
type = object({
name = string,
public_key = string,
worker_nodes = number
})
default = null
}

variable "log_precomputed_blocks" {
Expand Down Expand Up @@ -110,10 +115,12 @@ variable "block_producer_configs" {
type = list(
object({
name = string,
id = string,
public_key = string,
private_key = string,
keypair_secret = string,
keypair = object({
keypair_name = string
public_key = string
private_key = string,
privkey_password = string
}),
libp2p_secret = string
})
)
Expand Down
26 changes: 14 additions & 12 deletions automation/terraform/modules/o1-integration/locals.tf
Original file line number Diff line number Diff line change
Expand Up @@ -3,27 +3,29 @@ locals {
snark_worker_host_port = 10001
block_producer_starting_host_port = 10010

seed_peer = {
multiaddr = "/dns4/seed.${var.testnet_name}/tcp/10401/p2p/12D3KooWCoGWacXE4FRwAX8VqhnWVKhz5TTEecWEuGmiNrDt2XLf",
peerid = "2D3KooWCoGWacXE4FRwAX8VqhnWVKhz5TTEecWEuGmiNrDt2XLf",
private_key_secretbox = "{\"box_primitive\":\"xsalsa20poly1305\",\"pw_primitive\":\"argon2i\",\"nonce\":\"7YSQmeRbo4fGd2nYh9aS4WzNWzSXsFmmkTqKy93\",\"pwsalt\":\"9QsEJdSkFbF8PUwLPo2ZLHpgT7ja\",\"pwdiff\":[134217728,6],\"ciphertext\":\"7o8WU4cBiuUqGPaF2fNA815XqhZM5j95dhns5zztCiSehb3xVzTUSbCj1nDXG5rAteu67pvMnaGbQ57cQw1HEPB2DDdrtAAWbCt7qYjmP6cNm2L7H9DC8NKHs1LYuWvthfjDvxBDHnVidpRCyqtMBg9TPWtMPkZy1UCVRFokAA5HaA2xkh4WFgy2SCVrAeWNP5BeUGq9u779KcM9BAtg9n6rqbKDTybX4h1aSZ9qA72tg1LHzENfHLAgzJXZQcxhjvw6b8H51m9rVhwFTKPCRRCNXfcyQqjEpH4fm\"}",
secret = "seed-discovery-keys",
port = 10401
}
# seed_peer = {
# multiaddr = "/dns4/seed.${var.testnet_name}/tcp/10401/p2p/12D3KooWCoGWacXE4FRwAX8VqhnWVKhz5TTEecWEuGmiNrDt2XLf",
# peerid = "12D3KooWCoGWacXE4FRwAX8VqhnWVKhz5TTEecWEuGmiNrDt2XLf",
# private_key_secretbox = "{\"box_primitive\":\"xsalsa20poly1305\",\"pw_primitive\":\"argon2i\",\"nonce\":\"7YSQmeRbo4fGd2nYh9aS4WzNWzSXsFmmkTqKy93\",\"pwsalt\":\"9QsEJdSkFbF8PUwLPo2ZLHpgT7ja\",\"pwdiff\":[134217728,6],\"ciphertext\":\"7o8WU4cBiuUqGPaF2fNA815XqhZM5j95dhns5zztCiSehb3xVzTUSbCj1nDXG5rAteu67pvMnaGbQ57cQw1HEPB2DDdrtAAWbCt7qYjmP6cNm2L7H9DC8NKHs1LYuWvthfjDvxBDHnVidpRCyqtMBg9TPWtMPkZy1UCVRFokAA5HaA2xkh4WFgy2SCVrAeWNP5BeUGq9u779KcM9BAtg9n6rqbKDTybX4h1aSZ9qA72tg1LHzENfHLAgzJXZQcxhjvw6b8H51m9rVhwFTKPCRRCNXfcyQqjEpH4fm\"}",
# secret = "seed-discovery-keys",
# port = 10401
# }

seed_external_port = 10001

seed_config = {
name = "seed",
class = "seed",
libp2p_secret = local.seed_peer.secret,
external_port = 10401,
node_port = null,
libp2p_secret = "seed-discovery-keys",
libp2p_secret_pw = "naughty blue worm"
external_ip = null,
private_key_secret = null,
# private_key_secret = null,
enableArchive = false,
archiveAddress = null
}


snark_coordinator_name = "snark-coordinator-${lower(substr(var.snark_worker_public_key, -6, -1))}"
#snark_coordinator_name = "snark-coordinator-${lower(substr(var.snark_worker_public_key, -6, -1))}"

default_archive_node = {
image = var.mina_archive_image
Expand Down
Loading

0 comments on commit 9703587

Please sign in to comment.