def test_validate_name(): from dvc.exceptions import InvalidArgumentError from dvc.machine import RESERVED_NAMES, validate_name for name in RESERVED_NAMES: with pytest.raises(InvalidArgumentError): validate_name(name)
def _check_before_rename(self): from dvc.machine import validate_name validate_name(self.args.new) all_config = self.config.load_config_to_level(None) if self.args.new in all_config.get("machine", {}): raise ConfigError( "Rename failed. Machine '{}' already exists.".format( self.args.new)) ui.write(f"Rename machine '{self.args.name}' to '{self.args.new}'.")
def run(self): from dvc.machine import validate_name validate_name(self.args.name) if self.args.default: ui.write(f"Setting '{self.args.name}' as a default machine.") with self.config.edit(self.args.level) as conf: if self.args.name in conf["machine"] and not self.args.force: raise ConfigError( "machine '{}' already exists. Use `-f|--force` to " "overwrite it.".format(self.args.name)) conf["machine"][self.args.name] = {"cloud": self.args.cloud} if self.args.default: conf["core"]["machine"] = self.args.name return 0