Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
J
jumpserver
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
ops
jumpserver
Commits
bad397e2
Commit
bad397e2
authored
Jan 30, 2018
by
ibuler
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[Update] 修复获取资产信息异常bug
parent
0f15a94b
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
14 additions
and
15 deletions
+14
-15
tasks.py
apps/assets/tasks.py
+14
-15
No files found.
apps/assets/tasks.py
View file @
bad397e2
...
@@ -36,9 +36,8 @@ def set_assets_hardware_info(result, **kwargs):
...
@@ -36,9 +36,8 @@ def set_assets_hardware_info(result, **kwargs):
result_raw
=
result
[
0
]
result_raw
=
result
[
0
]
assets_updated
=
[]
assets_updated
=
[]
for
hostname
,
info
in
result_raw
.
get
(
'ok'
,
{})
.
items
():
for
hostname
,
info
in
result_raw
.
get
(
'ok'
,
{})
.
items
():
if
info
and
info
.
get
(
'setup'
):
info
=
info
.
get
(
'setup'
,
{})
.
get
(
'ansible_facts'
,
{})
info
=
info
[
'setup'
][
'ansible_facts'
]
if
not
info
:
else
:
logger
.
error
(
"Get asset info failed: {}"
.
format
(
hostname
))
logger
.
error
(
"Get asset info failed: {}"
.
format
(
hostname
))
continue
continue
...
@@ -46,31 +45,31 @@ def set_assets_hardware_info(result, **kwargs):
...
@@ -46,31 +45,31 @@ def set_assets_hardware_info(result, **kwargs):
if
not
asset
:
if
not
asset
:
continue
continue
___vendor
=
info
[
'ansible_system_vendor'
]
___vendor
=
info
.
get
(
'ansible_system_vendor'
,
'Unknown'
)
___model
=
info
[
'ansible_product_version'
]
___model
=
info
.
get
(
'ansible_product_version'
,
'Unknown'
)
___sn
=
info
[
'ansible_product_serial'
]
___sn
=
info
.
get
(
'ansible_product_serial'
,
'Unknown'
)
for
___cpu_model
in
info
[
'ansible_processor'
]
:
for
___cpu_model
in
info
.
get
(
'ansible_processor'
,
[])
:
if
___cpu_model
.
endswith
(
'GHz'
)
or
___cpu_model
.
startswith
(
"Intel"
):
if
___cpu_model
.
endswith
(
'GHz'
)
or
___cpu_model
.
startswith
(
"Intel"
):
break
break
else
:
else
:
___cpu_model
=
'Unknown'
___cpu_model
=
'Unknown'
___cpu_model
=
___cpu_model
[:
64
]
___cpu_model
=
___cpu_model
[:
64
]
___cpu_count
=
info
[
'ansible_processor_count'
]
___cpu_count
=
info
.
get
(
'ansible_processor_count'
,
'Unknown'
)
___cpu_cores
=
info
.
get
(
'ansible_processor_cores'
,
None
)
or
len
(
info
.
get
(
'ansible_processor'
,
[]))
___cpu_cores
=
info
.
get
(
'ansible_processor_cores'
,
None
)
or
len
(
info
.
get
(
'ansible_processor'
,
[]))
___memory
=
'
%
s
%
s'
%
capacity_convert
(
'{} MB'
.
format
(
info
[
'ansible_memtotal_mb'
]
))
___memory
=
'
%
s
%
s'
%
capacity_convert
(
'{} MB'
.
format
(
info
.
get
(
'ansible_memtotal_mb'
)
))
disk_info
=
{}
disk_info
=
{}
for
dev
,
dev_info
in
info
[
'ansible_devices'
]
.
items
():
for
dev
,
dev_info
in
info
.
get
(
'ansible_devices'
,
{})
.
items
():
if
disk_pattern
.
match
(
dev
)
and
dev_info
[
'removable'
]
==
'0'
:
if
disk_pattern
.
match
(
dev
)
and
dev_info
[
'removable'
]
==
'0'
:
disk_info
[
dev
]
=
dev_info
[
'size'
]
disk_info
[
dev
]
=
dev_info
[
'size'
]
___disk_total
=
'
%
s
%
s'
%
sum_capacity
(
disk_info
.
values
())
___disk_total
=
'
%
s
%
s'
%
sum_capacity
(
disk_info
.
values
())
___disk_info
=
json
.
dumps
(
disk_info
)
___disk_info
=
json
.
dumps
(
disk_info
)
___platform
=
info
[
'ansible_system'
]
___platform
=
info
.
get
(
'ansible_system'
,
'Unknown'
)
___os
=
info
[
'ansible_distribution'
]
___os
=
info
.
get
(
'ansible_distribution'
,
'Unknown'
)
___os_version
=
info
[
'ansible_distribution_version'
]
___os_version
=
info
.
get
(
'ansible_distribution_version'
,
'Unknown'
)
___os_arch
=
info
[
'ansible_architecture'
]
___os_arch
=
info
.
get
(
'ansible_architecture'
,
'Unknown'
)
___hostname_raw
=
info
[
'ansible_hostname'
]
___hostname_raw
=
info
.
get
(
'ansible_hostname'
,
'Unknown'
)
for
k
,
v
in
locals
()
.
items
():
for
k
,
v
in
locals
()
.
items
():
if
k
.
startswith
(
'___'
):
if
k
.
startswith
(
'___'
):
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment