Improve netdata remove/purge

This commit is contained in:
VirtuBox
2019-12-09 07:28:38 +01:00
parent 4b45ac0c79
commit c70571f5a6

View File

@@ -767,9 +767,9 @@ class WOStackController(CementBaseController):
# netdata # netdata
if pargs.netdata: if pargs.netdata:
Log.debug(self, "Removing Netdata") if (os.path.exists('/opt/netdata') or
if os.path.isfile('/opt/netdata/usr/' os.path.exists('/etc/netdata')):
'libexec/netdata/netdata-uninstaller.sh'): Log.debug(self, "Removing Netdata")
packages = packages + ['/var/lib/wo/tmp/kickstart.sh'] packages = packages + ['/var/lib/wo/tmp/kickstart.sh']
# wordops dashboard # wordops dashboard
@@ -814,20 +814,28 @@ class WOStackController(CementBaseController):
WOService.stop_service(self, 'mysql') WOService.stop_service(self, 'mysql')
# Netdata uninstaller # Netdata uninstaller
if (set(['/var/lib/wo/tmp/' if '/var/lib/wo/tmp/kickstart.sh' in packages:
'kickstart.sh']).issubset(set(packages))): if os.path.exists(
if WOVar.wo_distro == 'Raspbian': '/usr/libexec/netdata/netdata-uninstaller.sh'):
Log.debug(self, "Uninstalling Netdata from /etc/netdata")
WOShellExec.cmd_exec( WOShellExec.cmd_exec(
self, "bash /usr/" self, "bash /usr/libexec/netdata/netdata-"
"libexec/netdata/" "uninstaller.sh -y -f",
"netdata-uninstaller.sh -y -f",
errormsg='', log=False) errormsg='', log=False)
packages = packages + ["/etc/netdata"]
elif os.path.exists(
'/opt/netdata/usr/libexec/'
'netdata/netdata-uninstaller.sh'):
Log.debug(self, "Uninstalling Netdata from /opt/netdata")
WOShellExec.cmd_exec(
self, "bash /opt/netdata/usr/libexec/netdata/netdata-"
"uninstaller.sh -y -f")
packages = packages + ["/opt/netdata"]
else: else:
WOShellExec.cmd_exec( Log.debug(self, "Netdata uninstaller not found")
self, "bash /opt/netdata/usr/" if WOShellExec.cmd_exec(self, 'mysqladmin ping'):
"libexec/netdata/" WOMysql.execute(
"netdata-uninstaller.sh -y -f", self, "DELETE FROM mysql.user WHERE User = 'netdata';")
errormsg='', log=False)
if (packages): if (packages):
Log.wait(self, "Removing packages ") Log.wait(self, "Removing packages ")
@@ -1079,11 +1087,11 @@ class WOStackController(CementBaseController):
'{0}22222/htdocs/db/anemometer' '{0}22222/htdocs/db/anemometer'
.format(WOVar.wo_webroot) .format(WOVar.wo_webroot)
] ]
# netdata
if pargs.netdata: if pargs.netdata:
Log.debug(self, "Removing Netdata") if (os.path.exists('/opt/netdata') or
if os.path.isfile('/opt/netdata/usr/' os.path.exists('/etc/netdata')):
'libexec/netdata/netdata-uninstaller.sh'): Log.debug(self, "Removing Netdata")
packages = packages + ['/var/lib/wo/tmp/kickstart.sh'] packages = packages + ['/var/lib/wo/tmp/kickstart.sh']
# wordops dashboard # wordops dashboard
@@ -1129,17 +1137,25 @@ class WOStackController(CementBaseController):
WOService.stop_service(self, 'mysql') WOService.stop_service(self, 'mysql')
# Netdata uninstaller # Netdata uninstaller
if (set(['/var/lib/wo/tmp/' if '/var/lib/wo/tmp/kickstart.sh' in packages:
'kickstart.sh']).issubset(set(packages))): if os.path.exists(
if WOVar.wo_distro == 'Raspbian': '/usr/libexec/netdata/netdata-uninstaller.sh'):
WOShellExec.cmd_exec(self, "bash /usr/" Log.debug(self, "Uninstalling Netdata from /etc/netdata")
"libexec/netdata/netdata-" WOShellExec.cmd_exec(
"uninstaller.sh -y -f", self, "bash /usr/libexec/netdata/netdata-"
errormsg='', log=False) "uninstaller.sh -y -f",
errormsg='', log=False)
packages = packages + ["/etc/netdata"]
elif os.path.exists(
'/opt/netdata/usr/libexec/'
'netdata/netdata-uninstaller.sh'):
Log.debug(self, "Uninstalling Netdata from /opt/netdata")
WOShellExec.cmd_exec(
self, "bash /opt/netdata/usr/libexec/netdata/netdata-"
"uninstaller.sh -y -f")
packages = packages + ["/opt/netdata"]
else: else:
WOShellExec.cmd_exec(self, "bash /opt/netdata/usr/" Log.debug(self, "Netdata uninstaller not found")
"libexec/netdata/netdata-"
"uninstaller.sh -y -f")
if WOShellExec.cmd_exec(self, 'mysqladmin ping'): if WOShellExec.cmd_exec(self, 'mysqladmin ping'):
WOMysql.execute( WOMysql.execute(
self, "DELETE FROM mysql.user WHERE User = 'netdata';") self, "DELETE FROM mysql.user WHERE User = 'netdata';")