Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 7 additions & 5 deletions bench_fio/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,17 +22,19 @@
network
)


def gather_settings():
settings = defaults.get_default_settings()
defaultsettings = defaults.get_default_settings()
customsettings = parseini.get_settings_from_ini(sys.argv)
#print(customsettings)
# print(customsettings)
if not customsettings:
args = argparsing.check_args(settings)
args = argparsing.check_args(defaultsettings)
customsettings = vars(args)
settings = {**settings, **customsettings}
checks.check_settings(settings)
settings = {**defaultsettings, **customsettings}
checks.check_settings(settings, defaultsettings)
return settings


def main():
checks.check_encoding()
checks.check_if_fio_exists()
Expand Down
1 change: 0 additions & 1 deletion bench_fio/benchlib/argparsing.py
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,6 @@ def get_arguments(settings):
help=f"Override the default test runtime per benchmark"
f"(default: {settings['runtime']})",
type=int,
default=settings["runtime"],
)

ag.add_argument(
Expand Down
7 changes: 6 additions & 1 deletion bench_fio/benchlib/checks.py
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ def check_target_type(target, settings):
return {"file": "filename", "device": "filename", "directory": "directory"}[filetype]


def check_settings(settings):
def check_settings(settings, defaultsettings):
"""Some basic error handling."""

check_fio_version()
Expand All @@ -90,6 +90,11 @@ def check_settings(settings):
print()
sys.exit(9)

if not settings["runtime"] and not settings["size"]:
# if there is no explicit runtime nor size supplied, fallback to
# the default runtime
settings["runtime"] = defaultsettings["runtime"]

if settings["type"] not in ["device", "rbd"] and not settings["size"]:
print()
print("When the target is a file or directory, --size must be specified.")
Expand Down