|
| 1 | +# Codex auto-client |
| 2 | + |
| 3 | +This thing will generate files, upload them, and purchase storage for them in an endless loop. |
| 4 | + |
| 5 | +Can generate random images or random data of a specified size. |
| 6 | + |
| 7 | +## How to run |
| 8 | + |
| 9 | +- dotnet 7.0 and CLI arguments: `dotnet run -- --codex-host=... --codex-port=...` |
| 10 | +- docker and env-vars: `codexstorage/codex-autoclient:sha-88daab3` |
| 11 | + |
| 12 | +## Configuration options |
| 13 | +Options can be configured via CLI option or environment variable. |
| 14 | + |
| 15 | +| CLI option | Environment variable | Description | |
| 16 | +|-------------------------|----------------------|---------------------------------------------------------------------------------------------------------------------| |
| 17 | +| "--codex-host" | "CODEXHOST" | Codex Host address. (default 'http://localhost') | |
| 18 | +| "--codex-port" | "CODEXPORT" | port number of Codex API. (8080 by default) | |
| 19 | +| "--datapath" | "DATAPATH" | Root path where all data files will be saved. | |
| 20 | +| "--purchases" | "PURCHASES" | Number of concurrent purchases. | |
| 21 | +| "--contract-duration" | "CONTRACTDURATION" | contract duration in minutes. (default 6 hours) | |
| 22 | +| "--contract-expiry" | "CONTRACTEXPIRY" | contract expiry in minutes. (default 15 minutes) | |
| 23 | +| "--num-hosts" | "NUMHOSTS" | Number of hosts for contract. (default 5) | |
| 24 | +| "--num-hosts-tolerance" | "NUMTOL" | Number of host tolerance for contract. (default 2) | |
| 25 | +| "--price" | "PRICE" | Price of contract. (default 10) | |
| 26 | +| "--collateral" | "COLLATERAL" | Required collateral. (default 1) | |
| 27 | +| "--filesizemb" | "FILESIZEMB" | When greater than zero, size of file generated and uploaded. When zero, random images are used instead. (default 0) | |
| 28 | + |
| 29 | +## Timing |
| 30 | + |
| 31 | +Configuration: `purchases` controls the number of concurrently running storage requests. |
| 32 | +Configuration: `contract-duration` controls the duration in minutes of each storage request. |
| 33 | +Auto-client will create a new storage request every X minutes, where X is the contract duration divided by the number of purchases. |
| 34 | +(Timing may start to vary when contracts fail or time out.) |
0 commit comments