README.md
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 8.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.)