handle SecurityOptions: null in docker response

This commit is contained in:
anthony sottile 2025-09-06 14:40:20 -04:00
parent e70b313c80
commit 2930ea0fcd
2 changed files with 3 additions and 2 deletions

View file

@ -115,7 +115,7 @@ def _is_rootless() -> bool: # pragma: win32 no cover
return (
# docker:
# https://docs.docker.com/reference/api/engine/version/v1.48/#tag/System/operation/SystemInfo
'name=rootless' in info.get('SecurityOptions', ()) or
'name=rootless' in (info.get('SecurityOptions') or ()) or
# podman:
# https://docs.podman.io/en/latest/_static/api.html?version=v5.4#tag/system/operation/SystemInfoLibpod
info['host']['security']['rootless']

View file

@ -89,7 +89,8 @@ def test_docker_user_rootless(info_ret):
(
(0, b'{"SecurityOptions": ["name=cgroupns"]}', b''),
(0, b'{"host": {"security": {"rootless": false}}}', b''),
(0, b'{"respone_from_some_other_container_engine": true}', b''),
(0, b'{"response_from_some_other_container_engine": true}', b''),
(0, b'{"SecurityOptions": null}', b''),
(1, b'', b''),
),
)