Skip to content

Commit

Permalink
Drop support for Debian <= 7
Browse files Browse the repository at this point in the history
  • Loading branch information
Bastian Blank committed Aug 29, 2022
1 parent 12b18fb commit 33bdb69
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 42 deletions.
33 changes: 10 additions & 23 deletions azurelinuxagent/common/osutil/debian.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,27 +13,32 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#
# Requires Python 2.6+ and Openssl 1.0+
# Requires Python 3.7+ and Openssl 1.0+
#

import azurelinuxagent.common.utils.shellutil as shellutil
from azurelinuxagent.common.osutil.default import DefaultOSUtil


class DebianOSBaseUtil(DefaultOSUtil):
class DebianOSUtil(DefaultOSUtil):

def __init__(self):
super(DebianOSBaseUtil, self).__init__()
super().__init__()
self.jit_enabled = True
self.service_name = self.get_service_name()

@staticmethod
def get_service_name():
return "walinuxagent"

def restart_ssh_service(self):
return shellutil.run("systemctl --job-mode=ignore-dependencies try-reload-or-restart ssh", chk_err=False)

def stop_agent_service(self):
return shellutil.run("service azurelinuxagent stop", chk_err=False)
return shellutil.run("systemctl stop {0}".format(self.service_name), chk_err=False)

def start_agent_service(self):
return shellutil.run("service azurelinuxagent start", chk_err=False)
return shellutil.run("systemctl start {0}".format(self.service_name), chk_err=False)

def start_network(self):
pass
Expand All @@ -46,21 +51,3 @@ def restore_rules_files(self, rules_files=""):

def get_dhcp_lease_endpoint(self):
return self.get_endpoint_from_leases_path('/var/lib/dhcp/dhclient.*.leases')


class DebianOSModernUtil(DebianOSBaseUtil):

def __init__(self):
super(DebianOSModernUtil, self).__init__()
self.jit_enabled = True
self.service_name = self.get_service_name()

@staticmethod
def get_service_name():
return "walinuxagent"

def stop_agent_service(self):
return shellutil.run("systemctl stop {0}".format(self.service_name), chk_err=False)

def start_agent_service(self):
return shellutil.run("systemctl start {0}".format(self.service_name), chk_err=False)
9 changes: 3 additions & 6 deletions azurelinuxagent/common/osutil/factory.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
from .bigip import BigIpOSUtil
from .clearlinux import ClearLinuxUtil
from .coreos import CoreOSUtil
from .debian import DebianOSBaseUtil, DebianOSModernUtil
from .debian import DebianOSUtil
from .default import DefaultOSUtil
from .devuan import DevuanOSUtil
from .freebsd import FreeBSDOSUtil
Expand Down Expand Up @@ -84,7 +84,7 @@ def _get_osutil(distro_name, distro_code_name, distro_version, distro_full_name)
return AlpineOSUtil()

if distro_name == "kali":
return DebianOSBaseUtil()
return DebianOSUtil()

if distro_name in ("flatcar", "coreos") or distro_code_name in ("flatcar", "coreos"):
return CoreOSUtil()
Expand All @@ -98,10 +98,7 @@ def _get_osutil(distro_name, distro_code_name, distro_version, distro_full_name)
return SUSEOSUtil()

if distro_name == "debian":
if "sid" in distro_version or Version(distro_version) > Version("7"):
return DebianOSModernUtil()

return DebianOSBaseUtil()
return DebianOSUtil()

# Devuan support only works with v4+
# Reason is that Devuan v4 (Chimaera) uses python v3.9, in which the
Expand Down
18 changes: 5 additions & 13 deletions tests/common/osutil/test_factory.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
from azurelinuxagent.common.osutil.bigip import BigIpOSUtil
from azurelinuxagent.common.osutil.clearlinux import ClearLinuxUtil
from azurelinuxagent.common.osutil.coreos import CoreOSUtil
from azurelinuxagent.common.osutil.debian import DebianOSBaseUtil, DebianOSModernUtil
from azurelinuxagent.common.osutil.debian import DebianOSUtil
from azurelinuxagent.common.osutil.devuan import DevuanOSUtil
from azurelinuxagent.common.osutil.default import DefaultOSUtil
from azurelinuxagent.common.osutil.factory import _get_osutil
Expand Down Expand Up @@ -134,8 +134,8 @@ def test_get_osutil_it_should_return_kali(self):
distro_code_name="",
distro_version="",
distro_full_name="")
self.assertTrue(isinstance(ret, DebianOSBaseUtil))
self.assertEqual(ret.get_service_name(), "waagent")
self.assertTrue(isinstance(ret, DebianOSUtil))
self.assertEqual(ret.get_service_name(), "walinuxagent")

def test_get_osutil_it_should_return_coreos(self):
ret = _get_osutil(distro_name="coreos",
Expand Down Expand Up @@ -173,19 +173,11 @@ def test_get_osutil_it_should_return_suse(self):
self.assertTrue(isinstance(ret, SUSE11OSUtil))
self.assertEqual(ret.get_service_name(), "waagent")

def test_get_osutil_it_should_return_debian(self):
ret = _get_osutil(distro_name="debian",
distro_code_name="",
distro_full_name="",
distro_version="7")
self.assertTrue(isinstance(ret, DebianOSBaseUtil))
self.assertEqual(ret.get_service_name(), "waagent")

ret = _get_osutil(distro_name="debian",
distro_code_name="",
distro_full_name="",
distro_version="8")
self.assertTrue(isinstance(ret, DebianOSModernUtil))
distro_version="")
self.assertTrue(isinstance(ret, DebianOSUtil))
self.assertEqual(ret.get_service_name(), "walinuxagent")

def test_get_osutil_it_should_return_devuan(self):
Expand Down

0 comments on commit 33bdb69

Please sign in to comment.