Files
pr-agent/pr_agent/secret_providers/__init__.py

25 lines
1.0 KiB
Python
Raw Normal View History

2023-08-24 16:33:51 +03:00
from pr_agent.config_loader import get_settings
def get_secret_provider():
2024-02-01 08:31:11 +02:00
if not get_settings().get("CONFIG.SECRET_PROVIDER"):
return None
provider_id = get_settings().config.secret_provider
if provider_id == 'google_cloud_storage':
try:
from pr_agent.secret_providers.google_cloud_storage_secret_provider import \
GoogleCloudStorageSecretProvider
2023-08-24 16:33:51 +03:00
return GoogleCloudStorageSecretProvider()
2024-02-01 08:31:11 +02:00
except Exception as e:
raise ValueError(f"Failed to initialize google_cloud_storage secret provider {provider_id}") from e
elif provider_id == 'aws_secrets_manager':
try:
from pr_agent.secret_providers.aws_secrets_manager_provider import \
AWSSecretsManagerProvider
return AWSSecretsManagerProvider()
except Exception as e:
raise ValueError(f"Failed to initialize aws_secrets_manager secret provider {provider_id}") from e
2024-02-01 08:31:11 +02:00
else:
raise ValueError("Unknown SECRET_PROVIDER")