mirror of
https://github.com/meta-llama/llama-stack.git
synced 2025-12-03 09:53:45 +00:00
use host networking in linux and bridge in mac
This commit is contained in:
parent
fc4e4a838b
commit
9da36303a7
3 changed files with 14 additions and 5 deletions
|
|
@ -165,10 +165,18 @@ if [[ "$COLLECT_ONLY" == false ]]; then
|
||||||
|
|
||||||
# Set MCP host for in-process MCP server tests
|
# Set MCP host for in-process MCP server tests
|
||||||
# - For library client and server mode: localhost (both on same host)
|
# - For library client and server mode: localhost (both on same host)
|
||||||
# - For docker mode: host.docker.internal (container needs to reach host)
|
# - For docker mode on Linux: localhost (container uses host network, shares network namespace)
|
||||||
|
# - For docker mode on macOS/Windows: host.docker.internal (container uses bridge network)
|
||||||
if [[ "$STACK_CONFIG" == docker:* ]]; then
|
if [[ "$STACK_CONFIG" == docker:* ]]; then
|
||||||
|
if [[ "$(uname)" != "Darwin" ]] && [[ "$(uname)" != *"MINGW"* ]]; then
|
||||||
|
# On Linux with host network mode, container shares host network namespace
|
||||||
|
export LLAMA_STACK_TEST_MCP_HOST="localhost"
|
||||||
|
echo "Setting MCP host: localhost (docker mode with host network)"
|
||||||
|
else
|
||||||
|
# On macOS/Windows with bridge network, need special host access
|
||||||
export LLAMA_STACK_TEST_MCP_HOST="host.docker.internal"
|
export LLAMA_STACK_TEST_MCP_HOST="host.docker.internal"
|
||||||
echo "Setting MCP host: host.docker.internal (docker mode)"
|
echo "Setting MCP host: host.docker.internal (docker mode with bridge network)"
|
||||||
|
fi
|
||||||
else
|
else
|
||||||
export LLAMA_STACK_TEST_MCP_HOST="localhost"
|
export LLAMA_STACK_TEST_MCP_HOST="localhost"
|
||||||
echo "Setting MCP host: localhost (library/server mode)"
|
echo "Setting MCP host: localhost (library/server mode)"
|
||||||
|
|
|
||||||
|
|
@ -89,6 +89,7 @@ async def client_wrapper(endpoint: str, headers: dict[str, str]) -> AsyncGenerat
|
||||||
# sse_client and streamablehttp_client have different signatures, but both
|
# sse_client and streamablehttp_client have different signatures, but both
|
||||||
# are called the same way here, so we cast to Any to avoid type errors
|
# are called the same way here, so we cast to Any to avoid type errors
|
||||||
client = cast(Any, sse_client)
|
client = cast(Any, sse_client)
|
||||||
|
|
||||||
async with client(endpoint, headers=headers) as client_streams:
|
async with client(endpoint, headers=headers) as client_streams:
|
||||||
async with ClientSession(read_stream=client_streams[0], write_stream=client_streams[1]) as session:
|
async with ClientSession(read_stream=client_streams[0], write_stream=client_streams[1]) as session:
|
||||||
await session.initialize()
|
await session.initialize()
|
||||||
|
|
|
||||||
|
|
@ -83,7 +83,7 @@ class TestProviderInitialization:
|
||||||
new_callable=AsyncMock,
|
new_callable=AsyncMock,
|
||||||
):
|
):
|
||||||
# Should not raise any exception
|
# Should not raise any exception
|
||||||
provider = await get_provider_impl(config, mock_deps, policy=[], telemetry_enabled=False)
|
provider = await get_provider_impl(config, mock_deps, policy=[])
|
||||||
assert provider is not None
|
assert provider is not None
|
||||||
|
|
||||||
async def test_initialization_without_safety_api(self, mock_persistence_config, mock_deps):
|
async def test_initialization_without_safety_api(self, mock_persistence_config, mock_deps):
|
||||||
|
|
@ -97,7 +97,7 @@ class TestProviderInitialization:
|
||||||
new_callable=AsyncMock,
|
new_callable=AsyncMock,
|
||||||
):
|
):
|
||||||
# Should not raise any exception
|
# Should not raise any exception
|
||||||
provider = await get_provider_impl(config, mock_deps, policy=[], telemetry_enabled=False)
|
provider = await get_provider_impl(config, mock_deps, policy=[])
|
||||||
assert provider is not None
|
assert provider is not None
|
||||||
assert provider.safety_api is None
|
assert provider.safety_api is None
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue