Expired
Milestone Sep 7, 2023–Nov 30, 2023

Octez releases are manually tested in realistic simulated network

Follows %TzTraffic deployed on Tznet

Part of a larger objective to "automatically test each new release and protocol in a realistic simulated environment"

Context: Previous milestones lead to:

  • Building a realistic simulated environment : TzTraffic + TzNet
    • TzTraffic: PoC done, improvements coming but now needs specifics from tests to decide new features to implement
    • TzNet : - manual docker-compose based deployment on single node - Kubernetes deployment of nodes + client + baker ok (including scaling), however misses split of baker wallet.
      • now adding prometheus + grafana + teztale etc.

This Milestone focuses on three parts:

  1. Deployment of the "realistic" simulated environment using Kubernetes and GCP
  • TzNet deploys networks from 1 to 400 pods easily tztraffic#20
  • TzNet pods include 1 "yes-node" + 1 "yes-baker" with a "yes wallet" to split stake ~equally tztraffic#21
  • TzNet pods include prometheus + grafana + teztale archiver tztraffic#22 (closed)
  • 1 TzTraffic is deployed on the network and injects operations correctly tztraffic#23
  • 1 Teztale server is deployed and its bdd is backed up after the experiment tztraffic#24
  • Logs, grafana and teztale data is backed up tztraffic#25
  • TzNet is deployable to GCP tztraffic#26
  1. Describe, implement and manually run tests for releases
  • Define release tests metrics and how to display them tztraffic#27
  • Define an as-small-as-possible set of tests that provide defined metrics tztraffic#28
  • Write a general document: What we want to check, how, at what infrastructure cost, with what constraints on release (in particular schedule)? tztraffic#29
  • Write a document for each test, ideally make it executable/automatable ;) tztraffic#30
  • Test previous releases tztraffic#31
  • Test next release tztraffic#32
  • Predict/Assess cost of running each experiment depending of its configuration tztraffic#33
  • Document and publish (at least internally) a tutorial so that Release Management could manually run tests prior to any release with no help from people from the team tztraffic#34
  1. Aggregate and analyze results from experiments/tests
  • Develop grafana dashboard needed for aggregated data tztraffic#35
  • Interact with teztale team to add dashboard for aggregated data if needed tztraffic#36
  • Collect and save data for previous releases for comparison tztraffic#37

Predicted interactions:

  • Release Management
  • Teztale team
  • Devops
  • (Maybe DAL and Decrease Block Time team that work on related experiments)

Predicted follow-up goals:

  • Automate deployment and tests
  • Improve test scenarios, adding failures, heterogeneous behaviors, heterogeneous systems, etc.
  • Automatically test each new protocol in a realistic simulated environment
  • Work items 20
  • Merge requests 1
  • Participants 3
  • Labels 3
Loading
Loading
Loading
Loading
5% complete
5%
Start date
Sep 7, 2023
Sep 7
-
Nov 30 2023
Due date
Nov 30, 2023 (Past due)
20
Work items 20
Open: 19 Closed: 1
None
Total weight
None
1
Merge requests 1
Open: 0 Closed: 0 Merged: 1
0
Releases
None
Reference: nomadic-labs%"Octez releases are manually tested in realistic simulated network"