103 lines
3.9 KiB
Diff
103 lines
3.9 KiB
Diff
From 0dfa49f9703103dd8f978d419555f5a4e8d72caf Mon Sep 17 00:00:00 2001
|
|
From: xuezhixin <xuezhixin@uniontech.com>
|
|
Date: Fri, 10 Nov 2023 15:01:48 +0800
|
|
Subject: [PATCH] =?UTF-8?q?=E6=A3=80=E6=B5=8B=E8=BD=AF=E4=BB=B6=E6=BA=90?=
|
|
=?UTF-8?q?=E4=B8=AD=E7=9A=84=E5=86=85=E6=A0=B8=E7=89=88=E6=9C=AC?=
|
|
MIME-Version: 1.0
|
|
Content-Type: text/plain; charset=UTF-8
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
---
|
|
sysmig_agent/short_task.py | 79 ++++++++++++++++++++++++++++++++++++++
|
|
1 file changed, 79 insertions(+)
|
|
create mode 100644 sysmig_agent/short_task.py
|
|
|
|
diff --git a/sysmig_agent/short_task.py b/sysmig_agent/short_task.py
|
|
new file mode 100644
|
|
index 0000000..1e1a1c8
|
|
--- /dev/null
|
|
+++ b/sysmig_agent/short_task.py
|
|
@@ -0,0 +1,79 @@
|
|
+# SPDX-FileCopyrightText: 2023 UnionTech Software Technology Co., Ltd.
|
|
+# SPDX-License-Identifier: MulanPubL-2.0-or-later
|
|
+
|
|
+# import os
|
|
+# import platform
|
|
+# from share import list_to_json
|
|
+# import sys
|
|
+# import re
|
|
+# import subprocess
|
|
+# import json
|
|
+from sysmig_agent.share import *
|
|
+from flask import Flask, render_template, url_for, redirect, make_response, session, Response
|
|
+import urllib.request
|
|
+from sysmig_agent.agent_request import post_server
|
|
+
|
|
+sys.path.append("..")
|
|
+from connect_sql import DBHelper
|
|
+
|
|
+
|
|
+def os_kernel():
|
|
+ platformInfo = platform.platform()
|
|
+ systemKernelVersion = platformInfo.split('-', -1)
|
|
+ agent_kernel = systemKernelVersion[1]
|
|
+ return agent_kernel
|
|
+
|
|
+
|
|
+
|
|
+def os_repo_kernel():
|
|
+ version_list = []
|
|
+ os_version_ret = platform.dist()
|
|
+ version = os_version_ret[1].split('.', -1)
|
|
+ AGENT_OS = os_version_ret[0] + version[0]
|
|
+ try:
|
|
+ ret = os.popen("yum repolist all|awk '{print $1}'")
|
|
+ except:
|
|
+ ret = os.popen("yum repolist --all|awk '{print $1}'")
|
|
+ kernel_repo = kernel_repo_name = []
|
|
+ str_kernel = ''
|
|
+ for r in ret.readlines():
|
|
+ if not r:
|
|
+ continue
|
|
+ if 'UniontechOS' in r:
|
|
+ kernel_repo.append(r.strip('\n'))
|
|
+ if '8' == version[0]:
|
|
+ for i in range(len(kernel_repo)):
|
|
+ # cmd = 'yum repoquery --nvr kernel --enablerepo ' + kernel_repo[i]
|
|
+ cmd = 'yum repoquery --repo ' + kernel_repo[i] + ' kernel'
|
|
+ ret = str(subprocess.check_output(cmd, shell=True), 'utf-8')[:-1]
|
|
+ # except Exception:
|
|
+ ret = ret.split('\n', -1)
|
|
+ for i in range(len(ret)):
|
|
+ if re.match('kernel', ret[i]):
|
|
+ kernel_version = re.sub('kernel-.*:', '', ret[i])
|
|
+ kernel_version = re.sub('-.*$', '', kernel_version)
|
|
+ version_list.append(kernel_version.strip())
|
|
+ if not str_kernel:
|
|
+ str_kernel = kernel_version.strip()
|
|
+ else:
|
|
+ str_kernel = str_kernel + ',' + kernel_version.strip()
|
|
+ # print(version_list)
|
|
+ elif '7' == version[0]:
|
|
+ for i in range(len(kernel_repo)):
|
|
+ cmd = 'yum list --enablerepo {} kernel'.format(kernel_repo[i])
|
|
+ if '3.10.0' in kernel_repo[i]:
|
|
+ cmd = 'yum list --enablerepo {} --disablerepo UniontechOS-AppStream kernel'.format(kernel_repo[i])
|
|
+ ret = str(subprocess.check_output(cmd, shell=True), 'utf-8')[:-1]
|
|
+ ret = ret.split('\n', -1)
|
|
+ for n in range(len(ret)):
|
|
+ if 'uelc' in ret[n]:
|
|
+ # kernel_version = re.sub('kernel-.* ', '', ret[n])
|
|
+ kernel_version = re.sub('-.*$', '', ret[n])
|
|
+ kernel_version = kernel_version.split(' ',-1)
|
|
+ kernel_version = kernel_version[len(kernel_version)-1]
|
|
+ version_list.append(kernel_version.strip())
|
|
+ if not str_kernel:
|
|
+ str_kernel = kernel_version.strip()
|
|
+ else:
|
|
+ str_kernel = str_kernel + ',' + kernel_version.strip()
|
|
+ return str_kernel
|
|
--
|
|
2.20.1
|
|
|