subiquity/system_setup/models/wslconfbase.py

52 lines
1.6 KiB
Python
Raw Normal View History

2021-07-02 08:26:21 +00:00
# Copyright 2015 Canonical, Ltd.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
import logging
import attr
log = logging.getLogger('system_setup.models.wsl_configuration_base')
2021-07-02 08:26:21 +00:00
@attr.s
class WSLConfigurationBase(object):
2021-07-02 08:26:21 +00:00
custom_path = attr.ib()
custom_mount_opt = attr.ib()
gen_host = attr.ib()
gen_resolvconf = attr.ib()
class WSLConfigurationBaseModel(object):
""" Model representing basic wsl configuration
2021-07-02 08:26:21 +00:00
"""
def __init__(self):
self._wslconfbase = None
# TODO WSL: Load settings from system
2021-07-02 08:26:21 +00:00
def apply_settings(self, result):
2021-07-02 08:26:21 +00:00
d = {}
d['custom_path'] = result.custom_path
d['custom_mount_opt'] = result.custom_mount_opt
d['gen_host'] = result.gen_host
d['gen_resolvconf'] = result.gen_resolvconf
self._wslconfbase = WSLConfigurationBase(**d)
2021-07-02 08:26:21 +00:00
@property
def wslconfbase(self):
return self._wslconfbase
2021-07-02 08:26:21 +00:00
def __repr__(self):
return "<WSL Conf Base: {}>".format(self.wslconfbase)