summaryrefslogtreecommitdiff
path: root/azurelinuxagent/pa/deprovision/default.py
diff options
context:
space:
mode:
authorƁukasz 'sil2100' Zemczak <lukasz.zemczak@ubuntu.com>2017-01-16 10:10:41 +0100
committerusd-importer <ubuntu-server@lists.ubuntu.com>2017-01-17 17:53:13 +0000
commitdd73af563850762aad64e7ed2a9897377830af10 (patch)
tree33f34ccce29a5a11227741dbe6a8fce20deeeaba /azurelinuxagent/pa/deprovision/default.py
parenta05019d9343d0fde153d75a8e61fb6f99d1d3ff3 (diff)
parent558111e33720eb8f1eaacf571cf4fadae2430286 (diff)
downloadvyos-walinuxagent-dd73af563850762aad64e7ed2a9897377830af10.tar.gz
vyos-walinuxagent-dd73af563850762aad64e7ed2a9897377830af10.zip
Import patches-applied version 2.2.2-0ubuntu1 to applied/ubuntu/zesty-proposed
Imported using git-ubuntu import. Changelog parent: a05019d9343d0fde153d75a8e61fb6f99d1d3ff3 Unapplied parent: 558111e33720eb8f1eaacf571cf4fadae2430286 New changelog entries: * New upstream release (LP: #1651128) - d/patches/fix-auto-update.patch, d/patches/lp1623570-adjust-walinuxagent-service-after-and-wants.patch: - Dropped as changes have been applied upstream - Refreshed debian/patches/disable_import_test.patch
Diffstat (limited to 'azurelinuxagent/pa/deprovision/default.py')
-rw-r--r--azurelinuxagent/pa/deprovision/default.py17
1 files changed, 15 insertions, 2 deletions
diff --git a/azurelinuxagent/pa/deprovision/default.py b/azurelinuxagent/pa/deprovision/default.py
index b570c31..a702d3f 100644
--- a/azurelinuxagent/pa/deprovision/default.py
+++ b/azurelinuxagent/pa/deprovision/default.py
@@ -17,6 +17,8 @@
# Requires Python 2.4+ and Openssl 1.0+
#
+import signal
+import sys
import azurelinuxagent.common.conf as conf
from azurelinuxagent.common.exception import ProtocolError
from azurelinuxagent.common.future import read_input
@@ -38,6 +40,7 @@ class DeprovisionHandler(object):
def __init__(self):
self.osutil = get_osutil()
self.protocol_util = get_protocol_util()
+ signal.signal(signal.SIGINT, self.handle_interrupt_signal)
def del_root_password(self, warnings, actions):
warnings.append("WARNING! root password will be disabled. "
@@ -63,8 +66,8 @@ class DeprovisionHandler(object):
def regen_ssh_host_key(self, warnings, actions):
warnings.append("WARNING! All SSH host key pairs will be deleted.")
- actions.append(DeprovisionAction(shellutil.run,
- ['rm -f /etc/ssh/ssh_host_*key*']))
+ actions.append(DeprovisionAction(fileutil.rm_files,
+ ['/etc/ssh/ssh_host_*key*']))
def stop_agent_service(self, warnings, actions):
warnings.append("WARNING! The waagent service will be stopped.")
@@ -74,6 +77,11 @@ class DeprovisionHandler(object):
files_to_del = ['/root/.bash_history', '/var/log/waagent.log']
actions.append(DeprovisionAction(fileutil.rm_files, files_to_del))
+ def del_resolv(self, warnings, actions):
+ warnings.append("WARNING! /etc/resolv.conf will be deleted.")
+ files_to_del = ["/etc/resolv.conf"]
+ actions.append(DeprovisionAction(fileutil.rm_files, files_to_del))
+
def del_dhcp_lease(self, warnings, actions):
warnings.append("WARNING! Cached DHCP leases will be deleted.")
dirs_to_del = ["/var/lib/dhclient", "/var/lib/dhcpcd", "/var/lib/dhcp"]
@@ -109,6 +117,7 @@ class DeprovisionHandler(object):
self.del_lib_dir(warnings, actions)
self.del_files(warnings, actions)
+ self.del_resolv(warnings, actions)
if deluser:
self.del_user(warnings, actions)
@@ -128,4 +137,8 @@ class DeprovisionHandler(object):
for action in actions:
action.invoke()
+ def handle_interrupt_signal(self, frame):
+ print("Deprovision is interrupted.")
+ sys.exit(0)
+