Commit Graph

46 Commits

Author SHA1 Message Date
Youngjoon Lee d923328744
Mix: Use Sphinx instead of mock (#924) 2024-11-29 00:07:08 +09:00
gusto a5243c6af2
Tracing: Otlp metrics (#909)
* Metrics layer configuration in nomos-tracing

* Add metrics layer to tracing service

* Use http/proto for prometheus

* Add metrics layer to integration tests

* Use metrics layer in cfgsync

* Plug metric in node and tests

* Remove old metrics

* Use otlp metrics in mempool
2024-11-07 04:25:20 +02:00
Youngjoon Lee c84a29db31
Use public keys for the mock mix message encoding (#905)
* add node IDs in message

* integrate

* handle variable-lenght messages in nomos-mix-network

* add trait MixMessage

* make tests work

* clippy happy

* remove println!

* remove unnecssary dependency

* remove unnecessary trait bounds

* remove leftover
2024-11-06 10:49:38 +09:00
gusto bebb15f921
Cli: Deserialization and runtime fixes (#854)
* Deserialization and runtime fixes for cli

* Disable dissemination test
2024-10-25 14:56:37 +03:00
gusto 5a2c41574a
Tests: Local debugging setup using grafana (#855)
* Local debug setup for integration tests

* Tests debugging setup readme

* Clippy too smart
2024-10-25 13:39:07 +03:00
gusto 938bcd7926
Nomos tracing crate (#849)
* tmp grafana stack

* Testnet configure otlp tracing

* tmp: Configurable loki and tempo in cfgsync

* Rename nomos-log to nomos-tracing-service

* nomos-tracing crate for tracing layer creation

* Use multiple layers in nomos-tracing-service

* Tracing in tests and testnet

* Tempo volume instead of local host dir
2024-10-24 19:33:04 +03:00
Daniel Sanchez 5a85281ec0
Use tokio 1 in deps (#842) 2024-10-22 16:59:42 +02:00
gusto 03854f4c23
Executor in testnet (#839) 2024-10-22 12:36:06 +03:00
gusto 328398ca68
DA: Use executor in tests (#818)
* Use executor in tests instead of nomos node

* Executor config from node config

* Bring generics to the testing game

* Fill in missing gaps in test

* Implement testnode wrapper

* Use sleep on dispersal service instead

* Fix cfgsync

* Clippy happy

* Clippy happy tests

* Mixnet config in tests for validator

* Tests: General config and multiple nodes (#832)

* Use executor in tests instead of nomos node

* Bring generics to the testing game

* Fill in missing gaps in test

* Clippy happy

* Mixnet config in tests for validator

* Derive different types of configs from general in tests

* Validator and executor in cfgsync

---------

Co-authored-by: danielSanchezQ <3danimanimal@gmail.com>

* Tests executor node mix config (#834)

* Merge branch 'master' into tests-executor-node-mix-config

* add mix configs

---------

Co-authored-by: danielSanchezQ <3danimanimal@gmail.com>
Co-authored-by: Youngjoon Lee <5462944+youngjoon-lee@users.noreply.github.com>
2024-10-21 15:38:56 +03:00
Youngjoon Lee 26ae6c0a5d
CI: Update Rust 1.82 (#831) 2024-10-20 00:17:22 +09:00
gusto d7fe88f30b
Remove graylog and related containers (#804) 2024-10-03 14:36:36 +03:00
gusto 66fc046091
Testnet: Kzgrs config (#797)
* Remove out of place wait_online test param

* Cfgsync crate for testnet startup

* Config dispersal to node hosts

* Remove etcd dep and obsolete bash scripts

* Kzgrs test params in testnet

* Nodes listen on all interfaces
2024-10-02 14:26:39 +03:00
gusto a30a809ea1
CI: Jenkins risczero setup (#770)
* Remove dep

* Use cargo as jenkins user

* Ensure that toolchain directory is setup before installation

* Debian 12 and gcc deps

* Env variables for risc zero dev mode

* Update testnet and base dockerfiles

* Env vars comments
2024-09-26 18:00:47 +03:00
gusto 25270de680
CI: Nighly tests update and docker build gh workflow (#767)
* Github workflow for docker images

* Fix use sections in gh workflow

* Update nightly integration tests
2024-09-25 20:18:56 +03:00
gusto 2148216bda
CI: Rust 1.80 (#684)
* Allow Nonce to be unused (Clippy)

* Rust 1.80 stable
2024-07-31 15:40:32 +03:00
gusto 5c17221d16
Protoc in testnet and integration tests (#682) 2024-07-25 10:06:54 +03:00
gusto b4b24e4678
Rust 1.79 stable (#661)
* Rust 1.79 clippy fix

* Rust 1.79 stable in ci and docker

* Allow unused_var in nomos tests

Clippy struggle to recognize the usage of enumeration variable inside one particular testcase.
2024-06-18 10:53:56 +03:00
gusto 1dbc0c236e
Graylog service for the Testnet (#659)
* Graylog service in docker compose

* Retry graylog connection

* Graylog container configuration

* Add tokio sleep instead of std
2024-06-14 14:22:16 +03:00
gusto 7d6ae1b823
Testnet consensus configuration (#656)
* Update metrics for split mempool

* Update required packages for node in docker

* Expose env and cli params for coin

* Set coin params via env in testnet

* Predefined genesis state

* Chain start time from env vars
2024-05-30 12:46:02 +03:00
Youngjoon Lee e7d591b7bc
Mixnet v1 (#569)
* base

* Remove mixnet client from libp2p network backend (#572)

* Mixnet v1: Remove all mixnet legacies: mixnet crate, mixnode binary, tests, and docker (#573)

* Mixnet v1: Skeleton (#570)

* Use QUIC for libp2p (#580)

* Add Poisson interval function for Mixnet (#575)

* Mixnet network backend skeleton (#586)

* Libp2p stream read/write (#587)

* Emitting packets from mixclient using libp2p stream (#588)

* Handle outputs from mixnode using libp2p stream/gossipsub (#589)

* Refactor poisson (#590)

* Mix client Poisson emission (#591)

* Mix node packet handling (#592)

* Mix Packet / Fragment logic (#593)

* Move FisherYates to `nomos-utils` (#594)

* Mixnet topology (#595)

* Mix client/node unit tests (#596)

* change multiaddr from tcp to udp with quic-v1 (#607)

---------

Co-authored-by: Al Liu <scygliu1@gmail.com>
2024-03-12 15:47:35 +09:00
Youngjoon Lee 98bc66a67c
Expose 18080 for HTTP API in Testnet (#608) 2024-03-12 15:29:51 +09:00
gusto a036b8adc3
Bump rust (#602) 2024-03-01 13:28:05 +02:00
gusto 3f2905817a
Add testnet cli_config and volume (#574)
* Add cli_config and volume

* Grafana config file mode required on linux hosts

* Pin minideb version for openssl compatibility with the build image
2024-01-30 10:04:11 +02:00
gusto 4722b54493
Use chat app as testnet bot (#568) 2024-01-29 11:26:54 +02:00
gusto aa06080baa
Docker compose metrics containers (#564)
* Prometheus container and configuration for testnet

* Add graphana related configuration and container

* Use metrics feature in testnet nodes

* Grafana configuration files and datasources
2024-01-23 18:16:33 +02:00
gusto 15c366c606
Testnet config update for nomos.tech (#553)
* Update http ports for nomos nodes

* Increase DA storage limit
2024-01-05 15:31:05 +02:00
gusto 86ee8ff8c7
Bump to rust 1.75 (#550) 2024-01-02 17:34:41 +02:00
gusto ab68d3e16e
Update rust version in testnet and CI (#535) 2023-11-21 12:30:16 +02:00
gusto 421ea6c0c7
Update testnet related configuration (#524)
* Use value instead of variable in .env.testnet

* Reduce testnet logs verbosity

Debug logs are too verbose for long running node instances. If needed
users could manually adjust configuration in `testnet/*_config.yaml`
files without rebuilding the docker images.
2023-11-10 16:19:52 +02:00
gusto 5c7e0f511f
Update env and config files for testnet (#520) 2023-11-09 12:59:06 +02:00
gusto c14998bb9a
Da voter config for docker compose (#513)
* Readd docker build context

* Configurable da protocol voter

* Do not use private key naming for da voter
2023-11-07 13:52:27 +02:00
omahs e8310e3ea8
Fix typos (#503)
* fix typo

* fix typo

* fix typo

* fix typos

* fix typo
2023-11-03 09:29:40 +01:00
gusto ea1862864b
Docker compose static testnet configuration (#499)
* Add static node network configuration in a new compose file

* Update ports and fix testnet config

* Remove replicas

* Update testnet bootstrap config

* Remove replicas env var in static conf

* Bootstrap node depends on mixnodes

* Scheme version for compose.static.yml

Co-authored-by: Jakub <i+github@always.fail>

* Remove unnecessary context defintion

* Add container names in compose.static.yml

* Simplify compose services build context

---------

Co-authored-by: Jakub <i+github@always.fail>
2023-11-02 15:23:35 +02:00
gusto eeb88b9430
Docker compose consensus layer config (#482)
* Same consensus node list for all nodes

* Extract duplicate code and add debug info

* Update initial net peer list script

* Remove unused envvar
2023-10-30 16:51:40 +02:00
Gusto a3d9799121 Docker bootstrap node as sender receiver 2023-10-18 16:15:03 +03:00
Gusto 56b2830d5a Add Readme for docker testnet 2023-10-17 15:55:01 +03:00
Gusto ddc79f2b0e Use predefined public key for mixnodes 2023-10-17 14:47:40 +03:00
Gusto 98b59edf1a Listen all interfaces in mixnode config 2023-10-17 14:46:41 +03:00
Gusto ae065bac7c Remove python scripts 2023-10-17 14:46:41 +03:00
Gusto b521375ad4 Static mixnet nodes in docker compose 2023-10-17 14:46:41 +03:00
Gusto 474f5f7a19 Rename libp2p node config file in configuration script 2023-10-17 14:46:41 +03:00
Gusto 8275fc7817 Update libp2p node config 2023-10-17 14:46:41 +03:00
Gusto d50b845bf2 Update build command in Docker files 2023-10-17 14:46:41 +03:00
gusto 309e5a29e9
Nomos node config (#423)
* Use tree overlay in nomos node

* Use tree overlay in tests module

* Handle unexpected consensus vote stream end in tally

* Add defaults for retry and delay in mixnet client

* Add missing entries in config.yaml

* Spawn the next leader first (#425)

---------

Co-authored-by: Youngjoon Lee <taxihighway@gmail.com>
Co-authored-by: Al Liu <scygliu1@gmail.com>
2023-10-05 15:16:40 +03:00
Al Liu 4cf57eee74
remove waku from the codebase (#446) 2023-10-02 16:41:08 +08:00
gusto 97c653efe3
Docker compose for small libp2p node network (#364)
* Update rust build image version

* Docker compose file for testnet

* Wrap tcp into dns transport in order to resolve hostnames (#346)

* Docker compose for small libp2p node network

* Install etcdctl to node containers

* Register libp2p nodes on etcd

* Register IP address in KV store

* Interconnect libp2p nodes

* Use delimiter in cli and env variables

* Use docker compose initial env config

* Leave main Dockerfile as is, use new ones in testnet dir

* Remove etcd installation script

* run_mixnet.sh placeholder

* Use .env file for docker compose config

* Ignore local .env file

* Wrap sh envvars used in strings

* Remove mixnode placeholders

* Use default values for envconfig

* Update labels in Dockerfiles

* Sanitize scripts via shellcheck

* Export env for nomos node

* Updated to latest libp2p config

* Pass config to bootstrap node
2023-09-15 17:27:38 +03:00