descriptive composition file names (#133)
This commit is contained in:
parent
a50cdda7a5
commit
2c3d473193
47
README.md
47
README.md
@ -6,6 +6,16 @@ Our mandate is:
|
||||
|
||||
➡️ Find out more about our goals, requirements, execution plan, and team culture, in our [Project Description](https://docs.google.com/document/d/16jYL--EWYpJhxT9bakYq7ZBGLQ9SB940Wd1lTDOAbNE).
|
||||
|
||||
## Table of Contents
|
||||
|
||||
- [Testing topics](#testing-topics)
|
||||
- [Repository contents](#repository-contents)
|
||||
- [Running the test cases](#running-the-test-cases)
|
||||
- [Catalog](#catalog)
|
||||
- [Debugging](#debugging)
|
||||
- [Docker images changelog](#docker-images-changelog)
|
||||
- [Team](#team)
|
||||
|
||||
## Testing topics
|
||||
|
||||
These are the topics we are currently centering our testing efforts on. Our testing efforts include fault induction, stress tests, and end-to-end testing.
|
||||
@ -98,12 +108,40 @@ make
|
||||
7. Run a composition for the baseline deals end-to-end test case
|
||||
|
||||
```
|
||||
testground run composition -f ./lotus-soup/_compositions/composition.toml
|
||||
testground run composition -f ./lotus-soup/_compositions/baseline.toml
|
||||
```
|
||||
|
||||
## Catalog
|
||||
|
||||
### Test cases part of `lotus-soup`
|
||||
|
||||
* `deals-e2e` - Deals end-to-end test case. Clients pick a miner at random, start a deal, wait for it to be sealed, and try to retrieve from another random miner who offers back the data.
|
||||
* `drand-halting` - Test case that instructs Drand with a sequence of halt/resume/wait events, while running deals between clients and miners at the same time.
|
||||
* `deals-stress` - Deals stress test case. Clients pick a miner and send multiple deals (concurrently or serially) in order to test how many deals miners can handle.
|
||||
* `paych-stress` - A test case exercising various payment channel stress tests.
|
||||
|
||||
### Compositions part of `lotus-soup`
|
||||
|
||||
* `baseline-docker-5-1.toml` - Runs a `baseline` test (deals e2e test) with a network of 5 clients and 1 miner targeting `local:docker`
|
||||
* `baseline-k8s-10-3.toml` - Runs a `baseline` test (deals e2e test) with a network of 10 clients and 3 miner targeting `cluster:k8s`
|
||||
* `baseline-k8s-3-1.toml` - Runs a `baseline` test (deals e2e test) with a network of 3 clients and 1 miner targeting `cluster:k8s`
|
||||
* `baseline-k8s-3-2.toml` - Runs a `baseline` test (deals e2e test) with a network of 3 clients and 2 miner targeting `cluster:k8s`
|
||||
* `baseline.toml` - Runs a `baseline` test (deals e2e test) with a network of 3 clients and 2 miner targeting `local:exec`
|
||||
* `deals-stress-concurrent-natural-k8s.toml`
|
||||
* `deals-stress-concurrent-natural.toml`
|
||||
* `deals-stress-concurrent.toml`
|
||||
* `deals-stress-serial-natural.toml`
|
||||
* `deals-stress-serial.toml`
|
||||
* `drand-halt.toml`
|
||||
* `local-drand.toml`
|
||||
* `natural.toml`
|
||||
* `paych-stress.toml`
|
||||
* `pubsub-tracer.toml`
|
||||
|
||||
|
||||
## Debugging
|
||||
|
||||
Find commands and how-to guide on how to debug test plans at [DELVING.md](https://github.com/filecoin-project/oni/blob/master/DELVING.md)
|
||||
Find commands and how-to guides on debugging test plans at [DELVING.md](https://github.com/filecoin-project/oni/blob/master/DELVING.md)
|
||||
|
||||
1. Querying the Lotus RPC API
|
||||
|
||||
@ -117,7 +155,7 @@ Find commands and how-to guide on how to debug test plans at [DELVING.md](https:
|
||||
|
||||
* Sector sealing errors
|
||||
|
||||
## `lotus-soup` Docker images history
|
||||
## Docker images changelog
|
||||
|
||||
### oni-buildbase
|
||||
|
||||
@ -131,7 +169,8 @@ Find commands and how-to guide on how to debug test plans at [DELVING.md](https:
|
||||
* `v1` => initial image with 2048 parameters.
|
||||
* `v2` => adds auxiliary tools: `net-tools netcat traceroute iputils-ping wget vim curl telnet iproute2 dnsutils`.
|
||||
|
||||
## Team composition
|
||||
|
||||
## Team
|
||||
|
||||
* [@raulk](https://github.com/raulk) (Captain + TL)
|
||||
* [@nonsense](https://github.com/nonsense) (Testground TG + engineer)
|
||||
|
@ -1,66 +0,0 @@
|
||||
[metadata]
|
||||
name = "lotus-soup"
|
||||
author = ""
|
||||
|
||||
[global]
|
||||
plan = "lotus-soup"
|
||||
case = "deals-e2e"
|
||||
total_instances = 3
|
||||
builder = "docker:go"
|
||||
runner = "cluster:k8s"
|
||||
|
||||
[global.build]
|
||||
selectors = ["testground"]
|
||||
|
||||
[global.run_config]
|
||||
exposed_ports = { pprof = "6060", node_rpc = "1234", miner_rpc = "2345" }
|
||||
|
||||
[global.build_config]
|
||||
push_registry=true
|
||||
go_proxy_mode="remote"
|
||||
go_proxy_url="http://localhost:8081"
|
||||
registry_type="aws"
|
||||
|
||||
[global.run.test_params]
|
||||
clients = "1"
|
||||
miners = "1"
|
||||
genesis_timestamp_offset = "0"
|
||||
balance = "20000000" # These balances will work for maximum 100 nodes, as TotalFilecoin is 2B
|
||||
sectors = "10"
|
||||
mining_mode = "natural"
|
||||
|
||||
[[groups]]
|
||||
id = "bootstrapper"
|
||||
[groups.resources]
|
||||
memory = "512Mi"
|
||||
cpu = "1000m"
|
||||
[groups.instances]
|
||||
count = 1
|
||||
percentage = 0.0
|
||||
[groups.run]
|
||||
[groups.run.test_params]
|
||||
role = "bootstrapper"
|
||||
|
||||
[[groups]]
|
||||
id = "miners"
|
||||
[groups.resources]
|
||||
memory = "1024Mi"
|
||||
cpu = "1000m"
|
||||
[groups.instances]
|
||||
count = 1
|
||||
percentage = 0.0
|
||||
[groups.run]
|
||||
[groups.run.test_params]
|
||||
role = "miner"
|
||||
|
||||
[[groups]]
|
||||
id = "clients"
|
||||
[groups.resources]
|
||||
memory = "1024Mi"
|
||||
cpu = "1000m"
|
||||
[groups.instances]
|
||||
count = 1
|
||||
percentage = 0.0
|
||||
[groups.run]
|
||||
[groups.run.test_params]
|
||||
role = "client"
|
@ -4,7 +4,7 @@
|
||||
|
||||
[global]
|
||||
plan = "lotus-soup"
|
||||
case = "deals-stress-test"
|
||||
case = "deals-stress"
|
||||
total_instances = 9
|
||||
builder = "docker:go"
|
||||
runner = "cluster:k8s"
|
@ -4,7 +4,7 @@
|
||||
|
||||
[global]
|
||||
plan = "lotus-soup"
|
||||
case = "deals-stress-test"
|
||||
case = "deals-stress"
|
||||
total_instances = 6
|
||||
builder = "docker:go"
|
||||
runner = "local:docker"
|
@ -4,7 +4,7 @@
|
||||
|
||||
[global]
|
||||
plan = "lotus-soup"
|
||||
case = "deals-stress-test"
|
||||
case = "deals-stress"
|
||||
total_instances = 6
|
||||
builder = "docker:go"
|
||||
runner = "local:docker"
|
@ -4,7 +4,7 @@
|
||||
|
||||
[global]
|
||||
plan = "lotus-soup"
|
||||
case = "deals-stress-test"
|
||||
case = "deals-stress"
|
||||
total_instances = 6
|
||||
builder = "docker:go"
|
||||
runner = "local:docker"
|
@ -4,7 +4,7 @@
|
||||
|
||||
[global]
|
||||
plan = "lotus-soup"
|
||||
case = "deals-stress-test"
|
||||
case = "deals-stress"
|
||||
total_instances = 6
|
||||
builder = "docker:go"
|
||||
runner = "local:docker"
|
@ -15,7 +15,7 @@ import (
|
||||
"github.com/filecoin-project/oni/lotus-soup/testkit"
|
||||
)
|
||||
|
||||
func dealStressTest(t *testkit.TestEnvironment) error {
|
||||
func dealsStress(t *testkit.TestEnvironment) error {
|
||||
// Dispatch/forward non-client roles to defaults.
|
||||
if t.Role != "client" {
|
||||
return testkit.HandleDefaultRole(t)
|
||||
|
@ -8,10 +8,10 @@ import (
|
||||
)
|
||||
|
||||
var cases = map[string]interface{}{
|
||||
"deals-e2e": testkit.WrapTestEnvironment(dealsE2E),
|
||||
"deals-stress-test": testkit.WrapTestEnvironment(dealStressTest),
|
||||
"drand-halting": testkit.WrapTestEnvironment(dealsE2E),
|
||||
"paych-stress": testkit.WrapTestEnvironment(paych.Stress),
|
||||
"deals-e2e": testkit.WrapTestEnvironment(dealsE2E),
|
||||
"deals-stress": testkit.WrapTestEnvironment(dealsStress),
|
||||
"drand-halting": testkit.WrapTestEnvironment(dealsE2E),
|
||||
"paych-stress": testkit.WrapTestEnvironment(paych.Stress),
|
||||
}
|
||||
|
||||
func main() {
|
||||
|
@ -88,7 +88,7 @@ instances = { min = 1, max = 100, default = 5 }
|
||||
|
||||
|
||||
[[testcases]]
|
||||
name = "deals-stress-test"
|
||||
name = "deals-stress"
|
||||
instances = { min = 1, max = 100, default = 5 }
|
||||
|
||||
[testcases.params]
|
||||
@ -150,4 +150,4 @@ instances = { min = 1, max = 100, default = 5 }
|
||||
|
||||
# ********** Test-case specific **********
|
||||
increments = { type = "int", default = "100", desc = "increments in which to send payment vouchers" }
|
||||
lane_count = { type = "int", default = "256", desc = "lanes to open; vouchers will be distributed across these lanes in round-robin fashion" }
|
||||
lane_count = { type = "int", default = "256", desc = "lanes to open; vouchers will be distributed across these lanes in round-robin fashion" }
|
||||
|
Loading…
Reference in New Issue
Block a user