142 lines
5.9 KiB
Python
142 lines
5.9 KiB
Python
import os
|
|
|
|
import yaml
|
|
|
|
CONTAINER_WAIT_INTERVAL = "1m"
|
|
|
|
# TODO: Get object size data from a node config
|
|
SIMPLE_OBJ_SIZE = int(os.getenv("SIMPLE_OBJ_SIZE", "1000"))
|
|
COMPLEX_OBJ_SIZE = int(os.getenv("COMPLEX_OBJ_SIZE", "2000"))
|
|
|
|
MAINNET_BLOCK_TIME = os.getenv("MAINNET_BLOCK_TIME", "1s")
|
|
MAINNET_TIMEOUT = os.getenv("MAINNET_TIMEOUT", "1min")
|
|
MORPH_BLOCK_TIME = os.getenv("MORPH_BLOCK_TIME", "1s")
|
|
NEOFS_CONTRACT_CACHE_TIMEOUT = os.getenv("NEOFS_CONTRACT_CACHE_TIMEOUT", "30s")
|
|
|
|
# Time interval that allows a GC pass on storage node (this includes GC sleep interval
|
|
# of 1min plus 15 seconds for GC pass itself)
|
|
STORAGE_GC_TIME = os.getenv("STORAGE_GC_TIME", "75s")
|
|
|
|
# TODO: we should use hosting instead of these endpoints
|
|
NEOFS_ENDPOINT = os.getenv("NEOFS_ENDPOINT", "s01.neofs.devenv:8080")
|
|
NEO_MAINNET_ENDPOINT = os.getenv("NEO_MAINNET_ENDPOINT", "http://main-chain.neofs.devenv:30333")
|
|
MORPH_ENDPOINT = os.getenv("MORPH_ENDPOINT", "http://morph-chain.neofs.devenv:30333")
|
|
HTTP_GATE = os.getenv("HTTP_GATE", "http://http.neofs.devenv")
|
|
S3_GATE = os.getenv("S3_GATE", "https://s3.neofs.devenv:8080")
|
|
|
|
GAS_HASH = os.getenv("GAS_HASH", "0xd2a4cff31913016155e38e474a2c06d08be276cf")
|
|
|
|
NEOFS_CONTRACT = os.getenv("NEOFS_IR_CONTRACTS_NEOFS")
|
|
|
|
ASSETS_DIR = os.getenv("ASSETS_DIR", "TemporaryDir")
|
|
DEVENV_PATH = os.getenv("DEVENV_PATH", os.path.join("..", "neofs-dev-env"))
|
|
|
|
# Password of wallet owned by user on behalf of whom we are running tests
|
|
WALLET_PASS = os.getenv("WALLET_PASS", "")
|
|
|
|
# Load node parameters
|
|
LOAD_NODES = os.getenv("LOAD_NODES")
|
|
LOAD_NODE_SSH_USER = os.getenv("LOAD_NODE_SSH_USER")
|
|
LOAD_NODE_SSH_PRIVATE_KEY_PATH = os.getenv("LOAD_NODE_SSH_PRIVATE_KEY_PATH")
|
|
|
|
# Configuration of storage nodes
|
|
# TODO: we should use hosting instead of all these variables
|
|
STORAGE_RPC_ENDPOINT_1 = os.getenv("STORAGE_RPC_ENDPOINT_1", "s01.neofs.devenv:8080")
|
|
STORAGE_RPC_ENDPOINT_2 = os.getenv("STORAGE_RPC_ENDPOINT_2", "s02.neofs.devenv:8080")
|
|
STORAGE_RPC_ENDPOINT_3 = os.getenv("STORAGE_RPC_ENDPOINT_3", "s03.neofs.devenv:8080")
|
|
STORAGE_RPC_ENDPOINT_4 = os.getenv("STORAGE_RPC_ENDPOINT_4", "s04.neofs.devenv:8080")
|
|
|
|
STORAGE_CONTROL_ENDPOINT_1 = os.getenv("STORAGE_CONTROL_ENDPOINT_1", "s01.neofs.devenv:8081")
|
|
STORAGE_CONTROL_ENDPOINT_2 = os.getenv("STORAGE_CONTROL_ENDPOINT_2", "s02.neofs.devenv:8081")
|
|
STORAGE_CONTROL_ENDPOINT_3 = os.getenv("STORAGE_CONTROL_ENDPOINT_3", "s03.neofs.devenv:8081")
|
|
STORAGE_CONTROL_ENDPOINT_4 = os.getenv("STORAGE_CONTROL_ENDPOINT_4", "s04.neofs.devenv:8081")
|
|
|
|
STORAGE_WALLET_PATH_1 = os.getenv(
|
|
"STORAGE_WALLET_PATH_1", os.path.join(DEVENV_PATH, "services", "storage", "wallet01.json")
|
|
)
|
|
STORAGE_WALLET_PATH_2 = os.getenv(
|
|
"STORAGE_WALLET_PATH_2", os.path.join(DEVENV_PATH, "services", "storage", "wallet02.json")
|
|
)
|
|
STORAGE_WALLET_PATH_3 = os.getenv(
|
|
"STORAGE_WALLET_PATH_3", os.path.join(DEVENV_PATH, "services", "storage", "wallet03.json")
|
|
)
|
|
STORAGE_WALLET_PATH_4 = os.getenv(
|
|
"STORAGE_WALLET_PATH_4", os.path.join(DEVENV_PATH, "services", "storage", "wallet04.json")
|
|
)
|
|
STORAGE_WALLET_PATH = STORAGE_WALLET_PATH_1
|
|
STORAGE_WALLET_PASS = os.getenv("STORAGE_WALLET_PASS", "")
|
|
|
|
NEOFS_NETMAP_DICT = {
|
|
"s01": {
|
|
"rpc": STORAGE_RPC_ENDPOINT_1,
|
|
"control": STORAGE_CONTROL_ENDPOINT_1,
|
|
"wallet_path": STORAGE_WALLET_PATH_1,
|
|
"UN-LOCODE": "RU MOW",
|
|
},
|
|
"s02": {
|
|
"rpc": STORAGE_RPC_ENDPOINT_2,
|
|
"control": STORAGE_CONTROL_ENDPOINT_2,
|
|
"wallet_path": STORAGE_WALLET_PATH_2,
|
|
"UN-LOCODE": "RU LED",
|
|
},
|
|
"s03": {
|
|
"rpc": STORAGE_RPC_ENDPOINT_3,
|
|
"control": STORAGE_CONTROL_ENDPOINT_3,
|
|
"wallet_path": STORAGE_WALLET_PATH_3,
|
|
"UN-LOCODE": "SE STO",
|
|
},
|
|
"s04": {
|
|
"rpc": STORAGE_RPC_ENDPOINT_4,
|
|
"control": STORAGE_CONTROL_ENDPOINT_4,
|
|
"wallet_path": STORAGE_WALLET_PATH_4,
|
|
"UN-LOCODE": "FI HEL",
|
|
},
|
|
}
|
|
NEOFS_NETMAP = [node["rpc"] for node in NEOFS_NETMAP_DICT.values()]
|
|
|
|
# Paths to CLI executables on machine that runs tests
|
|
NEOGO_EXECUTABLE = os.getenv("NEOGO_EXECUTABLE", "neo-go")
|
|
NEOFS_CLI_EXEC = os.getenv("NEOFS_CLI_EXEC", "neofs-cli")
|
|
NEOFS_AUTHMATE_EXEC = os.getenv("NEOFS_AUTHMATE_EXEC", "neofs-authmate")
|
|
NEOFS_ADM_EXEC = os.getenv("NEOFS_ADM_EXEC", "neofs-adm")
|
|
|
|
MAINNET_WALLET_PATH = os.getenv(
|
|
"MAINNET_WALLET_PATH", os.path.join(DEVENV_PATH, "services", "chain", "node-wallet.json")
|
|
)
|
|
MAINNET_SINGLE_ADDR = os.getenv("MAINNET_SINGLE_ADDR", "NfgHwwTi3wHAS8aFAN243C5vGbkYDpqLHP")
|
|
MAINNET_WALLET_PASS = os.getenv("MAINNET_WALLET_PASS", "one")
|
|
|
|
IR_WALLET_PATH = os.getenv("IR_WALLET_PATH", os.path.join(DEVENV_PATH, "services", "ir", "az.json"))
|
|
IR_WALLET_PASS = os.getenv("IR_WALLET_PASS", "one")
|
|
|
|
S3_GATE_WALLET_PATH = os.getenv(
|
|
"S3_GATE_WALLET_PATH", os.path.join(DEVENV_PATH, "services", "s3_gate", "wallet.json")
|
|
)
|
|
S3_GATE_WALLET_PASS = os.getenv("S3_GATE_WALLET_PASS", "s3")
|
|
|
|
# Config for neofs-adm utility. Optional if tests are running against devenv
|
|
NEOFS_ADM_CONFIG_PATH = os.getenv("NEOFS_ADM_CONFIG_PATH")
|
|
|
|
FREE_STORAGE = os.getenv("FREE_STORAGE", "false").lower() == "true"
|
|
BIN_VERSIONS_FILE = os.getenv("BIN_VERSIONS_FILE")
|
|
|
|
HOSTING_CONFIG_FILE = os.getenv("HOSTING_CONFIG_FILE", ".devenv.hosting.yaml")
|
|
STORAGE_NODE_SERVICE_NAME_REGEX = r"s\d\d"
|
|
|
|
# Generate wallet configs
|
|
# TODO: we should move all info about wallet configs to fixtures
|
|
WALLET_CONFIG = os.path.join(os.getcwd(), "wallet_config.yml")
|
|
with open(WALLET_CONFIG, "w") as file:
|
|
yaml.dump({"password": WALLET_PASS}, file)
|
|
|
|
STORAGE_WALLET_CONFIG = os.path.join(os.getcwd(), "storage_wallet_config.yml")
|
|
with open(STORAGE_WALLET_CONFIG, "w") as file:
|
|
yaml.dump({"password": STORAGE_WALLET_PASS}, file)
|
|
|
|
MAINNET_WALLET_CONFIG = os.path.join(os.getcwd(), "mainnet_wallet_config.yml")
|
|
with open(MAINNET_WALLET_CONFIG, "w") as file:
|
|
yaml.dump({"password": MAINNET_WALLET_PASS}, file)
|
|
|
|
IR_WALLET_CONFIG = os.path.join(os.getcwd(), "ir_wallet_config.yml")
|
|
with open(IR_WALLET_CONFIG, "w") as file:
|
|
yaml.dump({"password": IR_WALLET_PASS}, file)
|