From b18137e7efbd90e01eae559430672186813c8bc2 Mon Sep 17 00:00:00 2001 From: Aaron Farntrog Date: Fri, 12 Sep 2025 12:39:57 -0400 Subject: [PATCH 1/2] get the region name from env if available --- .../integrations/strands/session_manager.py | 2 ++ .../test_agentcore_memory_session_manager.py | 18 ++++++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/src/bedrock_agentcore/memory/integrations/strands/session_manager.py b/src/bedrock_agentcore/memory/integrations/strands/session_manager.py index 3cbe3aa..51d179c 100644 --- a/src/bedrock_agentcore/memory/integrations/strands/session_manager.py +++ b/src/bedrock_agentcore/memory/integrations/strands/session_manager.py @@ -2,6 +2,7 @@ import json import logging +import os from datetime import datetime, timezone from typing import TYPE_CHECKING, Any, Optional @@ -64,6 +65,7 @@ def __init__( Defaults to None. **kwargs (Any): Additional keyword arguments. """ + region_name = os.environ.get("AWS_REGION", region_name) self.config = agentcore_memory_config self.memory_client = MemoryClient(region_name=region_name) session = boto_session or boto3.Session(region_name=region_name) diff --git a/tests/bedrock_agentcore/memory/integrations/strands/test_agentcore_memory_session_manager.py b/tests/bedrock_agentcore/memory/integrations/strands/test_agentcore_memory_session_manager.py index 46b68fe..9ba0e91 100644 --- a/tests/bedrock_agentcore/memory/integrations/strands/test_agentcore_memory_session_manager.py +++ b/tests/bedrock_agentcore/memory/integrations/strands/test_agentcore_memory_session_manager.py @@ -99,6 +99,24 @@ def test_init_basic(self, agentcore_config): assert manager.memory_client == mock_client mock_client_class.assert_called_once_with(region_name=None) + def test_init_with_aws_region_env_var(self, agentcore_config): + """Test initialization with AWS_REGION environment variable.""" + with patch("bedrock_agentcore.memory.integrations.strands.session_manager.MemoryClient") as mock_client_class: + mock_client = Mock() + mock_client_class.return_value = mock_client + + with patch("boto3.Session") as mock_boto_session: + mock_session = Mock() + mock_session.client.return_value = Mock() + mock_boto_session.return_value = mock_session + + with patch( + "strands.session.repository_session_manager.RepositorySessionManager.__init__", return_value=None + ): + with patch.dict("os.environ", {"AWS_REGION": "us-east-1"}): + AgentCoreMemorySessionManager(agentcore_config) + mock_client_class.assert_called_once_with(region_name="us-east-1") + def test_events_to_messages(self, session_manager): """Test converting Bedrock events to SessionMessages.""" events = [ From 27b853258bb26f13e56b981074038f56c0114d2c Mon Sep 17 00:00:00 2001 From: Aaron Farntrog Date: Mon, 15 Sep 2025 14:02:19 -0400 Subject: [PATCH 2/2] use region or env region --- .../memory/integrations/strands/session_manager.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/bedrock_agentcore/memory/integrations/strands/session_manager.py b/src/bedrock_agentcore/memory/integrations/strands/session_manager.py index 51d179c..4f69618 100644 --- a/src/bedrock_agentcore/memory/integrations/strands/session_manager.py +++ b/src/bedrock_agentcore/memory/integrations/strands/session_manager.py @@ -65,7 +65,7 @@ def __init__( Defaults to None. **kwargs (Any): Additional keyword arguments. """ - region_name = os.environ.get("AWS_REGION", region_name) + region_name = region_name or os.environ.get("AWS_REGION") self.config = agentcore_memory_config self.memory_client = MemoryClient(region_name=region_name) session = boto_session or boto3.Session(region_name=region_name)