Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Canread
Gopsutil
提交
c71f9ee5
G
Gopsutil
项目概览
Canread
/
Gopsutil
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
Gopsutil
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
c71f9ee5
编写于
6月 18, 2015
作者:
S
shirou
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #49 from databus23/suse_detection
Add SuSe platform detection
上级
ce904df5
91a97374
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
27 addition
and
2 deletion
+27
-2
host/host_linux.go
host/host_linux.go
+27
-2
未找到文件。
host/host_linux.go
浏览文件 @
c71f9ee5
...
...
@@ -208,7 +208,12 @@ func GetPlatformInformation() (platform string, family string, version string, e
if
err
==
nil
{
version
=
getRedhatishVersion
(
contents
)
}
// TODO: suse detection
}
else
if
common
.
PathExists
(
"/etc/SuSE-release"
)
{
contents
,
err
:=
common
.
ReadLines
(
"/etc/SuSE-release"
)
if
err
==
nil
{
version
=
getSuseVersion
(
contents
)
platform
=
getSusePlatform
(
contents
)
}
// TODO: slackware detecion
}
else
if
common
.
PathExists
(
"/etc/arch-release"
)
{
platform
=
"arch"
...
...
@@ -237,7 +242,7 @@ func GetPlatformInformation() (platform string, family string, version string, e
family
=
"fedora"
case
"oracle"
,
"centos"
,
"redhat"
,
"scientific"
,
"enterpriseenterprise"
,
"amazon"
,
"xenserver"
,
"cloudlinux"
,
"ibm_powerkvm"
:
family
=
"rhel"
case
"suse"
:
case
"suse"
,
"opensuse"
:
family
=
"suse"
case
"gentoo"
:
family
=
"gentoo"
...
...
@@ -276,6 +281,26 @@ func getRedhatishPlatform(contents []string) string {
return
f
[
0
]
}
func
getSuseVersion
(
contents
[]
string
)
string
{
version
:=
""
for
_
,
line
:=
range
contents
{
if
matches
:=
regexp
.
MustCompile
(
`VERSION = ([\d.]+)`
)
.
FindStringSubmatch
(
line
);
matches
!=
nil
{
version
=
matches
[
1
]
}
else
if
matches
:=
regexp
.
MustCompile
(
`PATCHLEVEL = ([\d]+)`
)
.
FindStringSubmatch
(
line
);
matches
!=
nil
{
version
=
version
+
"."
+
matches
[
1
]
}
}
return
version
}
func
getSusePlatform
(
contents
[]
string
)
string
{
c
:=
strings
.
ToLower
(
strings
.
Join
(
contents
,
""
))
if
strings
.
Contains
(
c
,
"opensuse"
)
{
return
"opensuse"
}
return
"suse"
}
func
GetVirtualization
()
(
string
,
string
,
error
)
{
var
system
string
var
role
string
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录