>> The default comes from /etc. You can checkout the `avocado/plugins/run.py` >> for details: >> >> sysinfo_default = settings.get_value('sysinfo.collect', >> 'enabled', >> key_type='bool', >> default=True) >> sysinfo_default = 'on' if sysinfo_default is True else 'off' >> parser.add_argument('--sysinfo', choices=('on', 'off'), >> default=sysinfo_default, help="Enable or disable >> " >> "system information (hardware details, >> profilers, " >> "etc.). Current: %(default)s") >> >> 1. `--sysinfo on` => force-enable >> 2. `--sysinfo off` => force-disable >> 3. no `--sysinfo` => use the value from /etc > > IIUC, the default comes from the source code: > > settings.get_value(..., default=True) > > If the option is missing on config file and there is no --sysinfo option > on command line, the default will be "True", right? > > So, there are 3 ways to use, but the possible values are "on" or "off", > right? Fix-me if I'm wrong, but what is the third option other than, > "on" and "off"? The key_type is still a bool, right? >
1 -> will be always enabled 2 -> will be always disabled 3 -> depends on /etc configuration. If not present there it uses True So the (3) means it reflects the configuration option. If we make it only a bool (present/missing) there would be no way to force-override the /etc configuration. As for the `--disable-$option` mentioned by Cleber, I'd rather go with `on|off|none`.
signature.asc
Description: OpenPGP digital signature