Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
slapos.core
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Labels
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Jobs
Commits
Open sidebar
Rafael Monnerat
slapos.core
Commits
699603e5
Commit
699603e5
authored
1 month ago
by
Jérome Perrin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
cli: make resetLogger a context manager restoring the state
parent
127ff568
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
58 additions
and
48 deletions
+58
-48
slapos/cli/cache_pypi.py
slapos/cli/cache_pypi.py
+3
-3
slapos/cli/cache_url.py
slapos/cli/cache_url.py
+3
-3
slapos/cli/command.py
slapos/cli/command.py
+14
-2
slapos/cli/computer_info.py
slapos/cli/computer_info.py
+11
-12
slapos/cli/computer_list.py
slapos/cli/computer_list.py
+8
-8
slapos/cli/computer_token.py
slapos/cli/computer_token.py
+10
-11
slapos/cli/info.py
slapos/cli/info.py
+2
-2
slapos/cli/list.py
slapos/cli/list.py
+7
-7
No files found.
slapos/cli/cache_pypi.py
View file @
699603e5
...
@@ -86,9 +86,9 @@ def do_lookup(logger, cache_dir, cache_url, signature_certificate_list,
...
@@ -86,9 +86,9 @@ def do_lookup(logger, cache_dir, cache_url, signature_certificate_list,
logger
.
info
(
'Python egg %s version %s'
,
name
,
version
)
logger
.
info
(
'Python egg %s version %s'
,
name
,
version
)
logger
.
info
(
'SHADIR URL: %s/%s
\
n
'
,
cache_dir
,
key
)
logger
.
info
(
'SHADIR URL: %s/%s
\
n
'
,
cache_dir
,
key
)
resetLogger
(
logger
)
with
resetLogger
(
logger
):
for
line
in
pt
.
get_string
(
border
=
True
,
padding_width
=
0
,
vrules
=
prettytable
.
NONE
).
split
(
'
\
n
'
):
for
line
in
pt
.
get_string
(
border
=
True
,
padding_width
=
0
,
vrules
=
prettytable
.
NONE
).
split
(
'
\
n
'
):
logger
.
info
(
line
)
logger
.
info
(
line
)
except
HTTPError
as
e
:
except
HTTPError
as
e
:
if
e
.
code
==
404
:
if
e
.
code
==
404
:
logger
.
info
(
'Object not found in cache.'
)
logger
.
info
(
'Object not found in cache.'
)
...
...
This diff is collapsed.
Click to expand it.
slapos/cli/cache_url.py
View file @
699603e5
...
@@ -84,9 +84,9 @@ def do_lookup(logger, cache_dir, cache_url, signature_certificate_list,
...
@@ -84,9 +84,9 @@ def do_lookup(logger, cache_dir, cache_url, signature_certificate_list,
logger
.
info
(
'Software source URL: %s'
,
url
)
logger
.
info
(
'Software source URL: %s'
,
url
)
logger
.
info
(
'SHADIR URL: %s/%s
\
n
'
,
cache_dir
,
key
)
logger
.
info
(
'SHADIR URL: %s/%s
\
n
'
,
cache_dir
,
key
)
resetLogger
(
logger
)
with
resetLogger
(
logger
):
for
line
in
pt
.
get_string
(
border
=
True
,
padding_width
=
0
,
vrules
=
prettytable
.
NONE
).
split
(
'
\
n
'
):
for
line
in
pt
.
get_string
(
border
=
True
,
padding_width
=
0
,
vrules
=
prettytable
.
NONE
).
split
(
'
\
n
'
):
logger
.
info
(
line
)
logger
.
info
(
line
)
except
HTTPError
as
e
:
except
HTTPError
as
e
:
if
e
.
code
==
404
:
if
e
.
code
==
404
:
logger
.
info
(
'Object not found in cache.'
)
logger
.
info
(
'Object not found in cache.'
)
...
...
This diff is collapsed.
Click to expand it.
slapos/cli/command.py
View file @
699603e5
...
@@ -28,6 +28,7 @@
...
@@ -28,6 +28,7 @@
##############################################################################
##############################################################################
import
argparse
import
argparse
import
contextlib
import
functools
import
functools
import
logging
import
logging
import
os
import
os
...
@@ -36,9 +37,20 @@ import sys
...
@@ -36,9 +37,20 @@ import sys
from
cliff
import
command
from
cliff
import
command
@
contextlib
.
contextmanager
def
resetLogger
(
logger
):
def
resetLogger
(
logger
):
logger
.
propagate
=
False
has_propagate
=
hasattr
(
logger
,
'propagate'
)
# XXX mocked Loggers do not have this
logger
.
addHandler
(
logging
.
StreamHandler
(
sys
.
stdout
))
if
has_propagate
:
propagate
=
logger
.
propagate
logger
.
propagate
=
False
stdout_handler
=
logging
.
StreamHandler
(
sys
.
stdout
)
logger
.
addHandler
(
stdout_handler
)
try
:
yield
finally
:
if
has_propagate
:
logger
.
propagate
=
propagate
logger
.
removeHandler
(
stdout_handler
)
class
Command
(
command
.
Command
):
class
Command
(
command
.
Command
):
...
...
This diff is collapsed.
Click to expand it.
slapos/cli/computer_info.py
View file @
699603e5
...
@@ -58,16 +58,15 @@ class InfoCommand(ClientConfigCommand):
...
@@ -58,16 +58,15 @@ class InfoCommand(ClientConfigCommand):
def
do_info
(
logger
,
conf
,
local
):
def
do_info
(
logger
,
conf
,
local
):
resetLogger
(
logger
)
with
resetLogger
(
logger
):
try
:
try
:
computer
=
local
[
'slap'
].
registerComputer
(
conf
.
reference
).
getInformation
()
computer
=
local
[
'slap'
].
registerComputer
(
conf
.
reference
).
getInformation
()
except
ResourceNotReady
:
except
ResourceNotReady
:
logger
.
warning
(
'Computer does not exist or is not ready yet.'
)
logger
.
warning
(
'Computer does not exist or is not ready yet.'
)
return
(
2
)
return
(
2
)
except
NotFoundError
:
except
NotFoundError
:
logger
.
warning
(
'Computer %s does not exist.'
,
conf
.
reference
)
logger
.
warning
(
'Computer %s does not exist.'
,
conf
.
reference
)
return
(
2
)
return
(
2
)
logger
.
info
(
'Computer Reference: %s'
,
computer
.
_reference
)
logger
.
info
(
'Computer Title : %s'
,
computer
.
_title
)
logger
.
info
(
'Computer Reference: %s'
,
computer
.
_reference
)
logger
.
info
(
'Computer Title : %s'
,
computer
.
_title
)
This diff is collapsed.
Click to expand it.
slapos/cli/computer_list.py
View file @
699603e5
...
@@ -51,11 +51,11 @@ class ListCommand(ClientConfigCommand):
...
@@ -51,11 +51,11 @@ class ListCommand(ClientConfigCommand):
def
do_list
(
logger
,
conf
,
local
):
def
do_list
(
logger
,
conf
,
local
):
resetLogger
(
logger
)
with
resetLogger
(
logger
):
computer_dict
=
local
[
'slap'
].
getComputerDict
()
computer_dict
=
local
[
'slap'
].
getComputerDict
()
if
computer_dict
==
{}:
if
computer_dict
==
{}:
logger
.
info
(
'No existing computer.'
)
logger
.
info
(
'No existing computer.'
)
return
return
logger
.
info
(
'List of Computers:'
)
logger
.
info
(
'List of Computers:'
)
for
title
,
computer
in
six
.
iteritems
(
computer_dict
):
for
title
,
computer
in
six
.
iteritems
(
computer_dict
):
logger
.
info
(
'%s %s'
,
computer
.
_reference
,
title
)
logger
.
info
(
'%s %s'
,
computer
.
_reference
,
title
)
This diff is collapsed.
Click to expand it.
slapos/cli/computer_token.py
View file @
699603e5
...
@@ -54,15 +54,14 @@ class TokenCommand(ClientConfigCommand):
...
@@ -54,15 +54,14 @@ class TokenCommand(ClientConfigCommand):
def
do_token
(
logger
,
conf
,
local
):
def
do_token
(
logger
,
conf
,
local
):
resetLogger
(
logger
)
with
resetLogger
(
logger
):
try
:
try
:
token
=
local
[
'slap'
].
registerToken
().
request
()
token
=
local
[
'slap'
].
registerToken
().
request
()
except
ResourceNotReady
:
except
ResourceNotReady
:
logger
.
warning
(
'Computer does not exist or is not ready yet.'
)
logger
.
warning
(
'Computer does not exist or is not ready yet.'
)
return
(
2
)
return
(
2
)
except
NotFoundError
:
except
NotFoundError
:
logger
.
warning
(
'Computer %s does not exist.'
,
conf
.
reference
)
logger
.
warning
(
'Computer %s does not exist.'
,
conf
.
reference
)
return
(
2
)
return
(
2
)
logger
.
info
(
'Computer token: %s'
,
token
)
logger
.
info
(
'Computer token: %s'
,
token
)
This diff is collapsed.
Click to expand it.
slapos/cli/info.py
View file @
699603e5
...
@@ -70,7 +70,6 @@ class InfoCommand(ClientConfigCommand):
...
@@ -70,7 +70,6 @@ class InfoCommand(ClientConfigCommand):
def
do_info
(
logger
,
conf
,
local
):
def
do_info
(
logger
,
conf
,
local
):
resetLogger
(
logger
)
try
:
try
:
instance
=
local
[
'slap'
].
registerOpenOrder
().
getInformation
(
instance
=
local
[
'slap'
].
registerOpenOrder
().
getInformation
(
partition_reference
=
conf
.
reference
,
partition_reference
=
conf
.
reference
,
...
@@ -126,5 +125,6 @@ def do_info(logger, conf, local):
...
@@ -126,5 +125,6 @@ def do_info(logger, conf, local):
if
conf
.
news
:
if
conf
.
news
:
info
[
'news'
]
=
news
info
[
'news'
]
=
news
logger
.
info
(
json
.
dumps
(
info
,
indent
=
2
))
with
resetLogger
(
logger
):
logger
.
info
(
json
.
dumps
(
info
,
indent
=
2
))
This diff is collapsed.
Click to expand it.
slapos/cli/list.py
View file @
699603e5
...
@@ -52,12 +52,12 @@ class ListCommand(ClientConfigCommand):
...
@@ -52,12 +52,12 @@ class ListCommand(ClientConfigCommand):
def
do_list
(
logger
,
conf
,
local
):
def
do_list
(
logger
,
conf
,
local
):
resetLogger
(
logger
)
# XXX catch exception
# XXX catch exception
instance_dict
=
local
[
'slap'
].
getOpenOrderDict
()
instance_dict
=
local
[
'slap'
].
getOpenOrderDict
()
logger
.
info
(
with
resetLogger
(
logger
):
json
.
dumps
(
logger
.
info
(
{
title
:
instance
.
_software_release_url
json
.
dumps
(
for
(
title
,
instance
)
in
six
.
iteritems
(
instance_dict
)},
{
title
:
instance
.
_software_release_url
sort_keys
=
True
,
for
(
title
,
instance
)
in
six
.
iteritems
(
instance_dict
)},
indent
=
2
))
sort_keys
=
True
,
indent
=
2
))
This diff is collapsed.
Click to expand it.
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