mirror of
https://github.com/GNS3/gns3-server
synced 2024-11-28 11:18:11 +00:00
Finish to clean up local setting usage. Ref #1460
This commit is contained in:
parent
2cddb2c05a
commit
888c773dc0
@ -442,14 +442,6 @@ class BaseManager:
|
|||||||
return path
|
return path
|
||||||
raise ImageMissingError(orig_path)
|
raise ImageMissingError(orig_path)
|
||||||
|
|
||||||
# For local server we allow using absolute path outside image directory
|
|
||||||
if Config.instance().settings.Server.local is True:
|
|
||||||
log.debug(f"Searching for '{orig_path}'")
|
|
||||||
path = force_unix_path(path)
|
|
||||||
if os.path.exists(path):
|
|
||||||
return path
|
|
||||||
raise ImageMissingError(orig_path)
|
|
||||||
|
|
||||||
# Check to see if path is an absolute path to a valid directory
|
# Check to see if path is an absolute path to a valid directory
|
||||||
path = force_unix_path(path)
|
path = force_unix_path(path)
|
||||||
for directory in valid_directory_prefices:
|
for directory in valid_directory_prefices:
|
||||||
|
@ -30,6 +30,7 @@ pytestmark = pytest.mark.asyncio
|
|||||||
async def test_shutdown_local(app: FastAPI, client: AsyncClient, config: Config) -> None:
|
async def test_shutdown_local(app: FastAPI, client: AsyncClient, config: Config) -> None:
|
||||||
|
|
||||||
os.kill = MagicMock()
|
os.kill = MagicMock()
|
||||||
|
config.settings.Server.local = True
|
||||||
response = await client.post(app.url_path_for("shutdown"))
|
response = await client.post(app.url_path_for("shutdown"))
|
||||||
assert response.status_code == status.HTTP_204_NO_CONTENT
|
assert response.status_code == status.HTTP_204_NO_CONTENT
|
||||||
assert os.kill.called
|
assert os.kill.called
|
||||||
@ -37,7 +38,6 @@ async def test_shutdown_local(app: FastAPI, client: AsyncClient, config: Config)
|
|||||||
|
|
||||||
async def test_shutdown_non_local(app: FastAPI, client: AsyncClient, config: Config) -> None:
|
async def test_shutdown_non_local(app: FastAPI, client: AsyncClient, config: Config) -> None:
|
||||||
|
|
||||||
config.settings.Server.local = False
|
|
||||||
response = await client.post(app.url_path_for("shutdown"))
|
response = await client.post(app.url_path_for("shutdown"))
|
||||||
assert response.status_code == status.HTTP_403_FORBIDDEN
|
assert response.status_code == status.HTTP_403_FORBIDDEN
|
||||||
|
|
||||||
|
@ -29,7 +29,7 @@ async def test_version_output(app: FastAPI, client: AsyncClient) -> None:
|
|||||||
|
|
||||||
response = await client.get(app.url_path_for("get_version"))
|
response = await client.get(app.url_path_for("get_version"))
|
||||||
assert response.status_code == status.HTTP_200_OK
|
assert response.status_code == status.HTTP_200_OK
|
||||||
assert response.json() == {'controller_host': '127.0.0.1', 'local': True, 'version': __version__}
|
assert response.json() == {'controller_host': '127.0.0.1', 'local': False, 'version': __version__}
|
||||||
|
|
||||||
|
|
||||||
async def test_version_input(app: FastAPI, client: AsyncClient) -> None:
|
async def test_version_input(app: FastAPI, client: AsyncClient) -> None:
|
||||||
|
@ -230,6 +230,7 @@ def test_path_relative(vm, fake_iou_bin):
|
|||||||
|
|
||||||
def test_path_invalid_bin(vm, tmpdir, config):
|
def test_path_invalid_bin(vm, tmpdir, config):
|
||||||
|
|
||||||
|
config.settings.Server.images_path = str(tmpdir)
|
||||||
path = str(tmpdir / "test.bin")
|
path = str(tmpdir / "test.bin")
|
||||||
|
|
||||||
with open(path, "w+") as f:
|
with open(path, "w+") as f:
|
||||||
|
@ -106,16 +106,15 @@ def test_get_abs_image_path_non_local(qemu, tmpdir, config):
|
|||||||
|
|
||||||
# If non local we can't use path outside images directory
|
# If non local we can't use path outside images directory
|
||||||
config.settings.Server.images_path = str(tmpdir / "images")
|
config.settings.Server.images_path = str(tmpdir / "images")
|
||||||
config.settings.Server.local = False
|
|
||||||
assert qemu.get_abs_image_path(path1) == path1
|
assert qemu.get_abs_image_path(path1) == path1
|
||||||
with pytest.raises(NodeError):
|
with pytest.raises(NodeError):
|
||||||
qemu.get_abs_image_path(path2)
|
qemu.get_abs_image_path(path2)
|
||||||
with pytest.raises(NodeError):
|
with pytest.raises(NodeError):
|
||||||
qemu.get_abs_image_path("C:\\test2.bin")
|
qemu.get_abs_image_path("C:\\test2.bin")
|
||||||
|
|
||||||
config.settings.Server.images_path = str(tmpdir / "images")
|
# config.settings.Server.images_path = str(tmpdir / "images")
|
||||||
config.settings.Server.local = True
|
# config.settings.Server.local = True
|
||||||
assert qemu.get_abs_image_path(path2) == path2
|
# assert qemu.get_abs_image_path(path2) == path2
|
||||||
|
|
||||||
|
|
||||||
def test_get_abs_image_additional_image_paths(qemu, tmpdir, config):
|
def test_get_abs_image_additional_image_paths(qemu, tmpdir, config):
|
||||||
@ -130,7 +129,6 @@ def test_get_abs_image_additional_image_paths(qemu, tmpdir, config):
|
|||||||
|
|
||||||
config.settings.Server.images_path = str(tmpdir / "images1")
|
config.settings.Server.images_path = str(tmpdir / "images1")
|
||||||
config.settings.Server.additional_images_paths = "/tmp/null24564;" + str(tmpdir / "images2")
|
config.settings.Server.additional_images_paths = "/tmp/null24564;" + str(tmpdir / "images2")
|
||||||
config.settings.Server.local = False
|
|
||||||
|
|
||||||
assert qemu.get_abs_image_path("test1.bin") == path1
|
assert qemu.get_abs_image_path("test1.bin") == path1
|
||||||
assert qemu.get_abs_image_path("test2.bin") == path2
|
assert qemu.get_abs_image_path("test2.bin") == path2
|
||||||
@ -152,7 +150,6 @@ def test_get_abs_image_recursive(qemu, tmpdir, config):
|
|||||||
path2 = force_unix_path(str(path2))
|
path2 = force_unix_path(str(path2))
|
||||||
|
|
||||||
config.settings.Server.images_path = str(tmpdir / "images1")
|
config.settings.Server.images_path = str(tmpdir / "images1")
|
||||||
config.settings.Server.local = False
|
|
||||||
|
|
||||||
assert qemu.get_abs_image_path("test1.bin") == path1
|
assert qemu.get_abs_image_path("test1.bin") == path1
|
||||||
assert qemu.get_abs_image_path("test2.bin") == path2
|
assert qemu.get_abs_image_path("test2.bin") == path2
|
||||||
@ -171,7 +168,6 @@ def test_get_abs_image_recursive_ova(qemu, tmpdir, config):
|
|||||||
path2 = force_unix_path(str(path2))
|
path2 = force_unix_path(str(path2))
|
||||||
|
|
||||||
config.settings.Server.images_path = str(tmpdir / "images1")
|
config.settings.Server.images_path = str(tmpdir / "images1")
|
||||||
config.settings.Server.local = False
|
|
||||||
|
|
||||||
assert qemu.get_abs_image_path("demo/test.ova/test1.bin") == path1
|
assert qemu.get_abs_image_path("demo/test.ova/test1.bin") == path1
|
||||||
assert qemu.get_abs_image_path("test.ova/test2.bin") == path2
|
assert qemu.get_abs_image_path("test.ova/test2.bin") == path2
|
||||||
@ -202,7 +198,6 @@ def test_get_relative_image_path(qemu, tmpdir, config):
|
|||||||
|
|
||||||
config.settings.Server.images_path = str(tmpdir / "images1")
|
config.settings.Server.images_path = str(tmpdir / "images1")
|
||||||
config.settings.Server.additional_images_paths = str(tmpdir / "images2")
|
config.settings.Server.additional_images_paths = str(tmpdir / "images2")
|
||||||
config.settings.Server.local = True
|
|
||||||
|
|
||||||
assert qemu.get_relative_image_path(path1) == "test1.bin"
|
assert qemu.get_relative_image_path(path1) == "test1.bin"
|
||||||
assert qemu.get_relative_image_path("test1.bin") == "test1.bin"
|
assert qemu.get_relative_image_path("test1.bin") == "test1.bin"
|
||||||
@ -210,6 +205,7 @@ def test_get_relative_image_path(qemu, tmpdir, config):
|
|||||||
assert qemu.get_relative_image_path("test2.bin") == "test2.bin"
|
assert qemu.get_relative_image_path("test2.bin") == "test2.bin"
|
||||||
assert qemu.get_relative_image_path("../test1.bin") == "test1.bin"
|
assert qemu.get_relative_image_path("../test1.bin") == "test1.bin"
|
||||||
assert qemu.get_relative_image_path("test3.bin") == "test3.bin"
|
assert qemu.get_relative_image_path("test3.bin") == "test3.bin"
|
||||||
|
with pytest.raises(NodeError):
|
||||||
assert qemu.get_relative_image_path(path4) == path4
|
assert qemu.get_relative_image_path(path4) == path4
|
||||||
assert qemu.get_relative_image_path(path5) == path5
|
assert qemu.get_relative_image_path(path5) == path5
|
||||||
|
|
||||||
|
@ -392,7 +392,6 @@ def run_around_tests(monkeypatch, config, port_manager):
|
|||||||
config.settings.Server.appliances_path = appliances_dir
|
config.settings.Server.appliances_path = appliances_dir
|
||||||
|
|
||||||
config.settings.Server.ubridge_path = os.path.join(tmppath, 'bin', 'ubridge')
|
config.settings.Server.ubridge_path = os.path.join(tmppath, 'bin', 'ubridge')
|
||||||
config.settings.Server.local = True
|
|
||||||
|
|
||||||
# Prevent executions of the VM if we forgot to mock something
|
# Prevent executions of the VM if we forgot to mock something
|
||||||
config.settings.VirtualBox.vboxmanage_path = tmppath
|
config.settings.VirtualBox.vboxmanage_path = tmppath
|
||||||
|
@ -37,7 +37,6 @@ def test_images_directories(tmpdir, config):
|
|||||||
|
|
||||||
config.settings.Server.images_path = str(tmpdir / "images1")
|
config.settings.Server.images_path = str(tmpdir / "images1")
|
||||||
config.settings.Server.additional_images_paths = "/tmp/null24564;" + str(tmpdir / "images2")
|
config.settings.Server.additional_images_paths = "/tmp/null24564;" + str(tmpdir / "images2")
|
||||||
config.settings.Server.local = False
|
|
||||||
|
|
||||||
# /tmp/null24564 is ignored because doesn't exists
|
# /tmp/null24564 is ignored because doesn't exists
|
||||||
res = images_directories("qemu")
|
res = images_directories("qemu")
|
||||||
@ -140,7 +139,6 @@ def test_list_images(tmpdir, config):
|
|||||||
|
|
||||||
config.settings.Server.images_path = str(tmpdir / "images1")
|
config.settings.Server.images_path = str(tmpdir / "images1")
|
||||||
config.settings.Server.additional_images_paths = "/tmp/null24564;" + str(tmpdir / "images2")
|
config.settings.Server.additional_images_paths = "/tmp/null24564;" + str(tmpdir / "images2")
|
||||||
config.settings.Server.local = False
|
|
||||||
|
|
||||||
assert list_images("dynamips") == [
|
assert list_images("dynamips") == [
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user