diff --git a/backend/moonstream/routes/subscriptions.py b/backend/moonstream/routes/subscriptions.py index 257061d0..9aab7763 100644 --- a/backend/moonstream/routes/subscriptions.py +++ b/backend/moonstream/routes/subscriptions.py @@ -21,6 +21,7 @@ from ..settings import ( MOONSTREAM_APPLICATION_ID, bugout_client as bc, AWS_S3_SMARTCONTRACTS_ABI_BUCKET, + AWS_S3_SMARTCONTRACTS_ABI_PREFIX, ) from ..web3_provider import yield_web3_provider @@ -123,7 +124,7 @@ async def add_subscription_handler( bucket = AWS_S3_SMARTCONTRACTS_ABI_BUCKET result_bytes = abi.encode("utf-8") - result_key = f"v1/{resource.resource_data['address']}/{resource.id}/abi.json" + result_key = f"{AWS_S3_SMARTCONTRACTS_ABI_PREFIX}/{resource.resource_data['address']}/{resource.id}/abi.json" s3_client.put_object( Body=result_bytes, @@ -140,7 +141,7 @@ async def add_subscription_handler( update_resource["bucket"] = AWS_S3_SMARTCONTRACTS_ABI_BUCKET update_resource[ "s3_path" - ] = f"v1/{resource.resource_data['address']}/{resource.id}/abi.json" + ] = f"{AWS_S3_SMARTCONTRACTS_ABI_PREFIX}/{resource.resource_data['address']}/{resource.id}/abi.json" try: updated_resource: BugoutResource = bc.update_resource( @@ -300,7 +301,7 @@ async def update_subscriptions_handler( bucket = AWS_S3_SMARTCONTRACTS_ABI_BUCKET result_bytes = abi.encode("utf-8") - result_key = f"v1/{subscription_resource.resource_data['address']}/{subscription_resource.id}/abi.json" + result_key = f"{AWS_S3_SMARTCONTRACTS_ABI_PREFIX}/{subscription_resource.resource_data['address']}/{subscription_resource.id}/abi.json" s3_client.put_object( Body=result_bytes, @@ -315,7 +316,7 @@ async def update_subscriptions_handler( update["bucket"] = AWS_S3_SMARTCONTRACTS_ABI_BUCKET update[ "s3_path" - ] = f"v1/{subscription_resource.resource_data['address']}/{subscription_resource.id}/abi.json" + ] = f"{AWS_S3_SMARTCONTRACTS_ABI_PREFIX}/{subscription_resource.resource_data['address']}/{subscription_resource.id}/abi.json" try: resource: BugoutResource = bc.update_resource( diff --git a/backend/moonstream/settings.py b/backend/moonstream/settings.py index bc45e128..4cef7ef3 100644 --- a/backend/moonstream/settings.py +++ b/backend/moonstream/settings.py @@ -70,3 +70,9 @@ if AWS_S3_SMARTCONTRACTS_ABI_BUCKET is None: raise ValueError( "AWS_S3_SMARTCONTRACTS_ABI_BUCKET environment variable must be set" ) +AWS_S3_SMARTCONTRACTS_ABI_PREFIX = os.environ.get("AWS_S3_SMARTCONTRACTS_ABI_PREFIX") +if AWS_S3_SMARTCONTRACTS_ABI_PREFIX is None: + raise ValueError( + "AWS_S3_SMARTCONTRACTS_ABI_PREFIX environment variable must be set" + ) +AWS_S3_SMARTCONTRACTS_ABI_PREFIX = AWS_S3_SMARTCONTRACTS_ABI_PREFIX.rstrip("/") diff --git a/backend/sample.env b/backend/sample.env index 81e57942..399f9fcd 100644 --- a/backend/sample.env +++ b/backend/sample.env @@ -8,6 +8,7 @@ export MOONSTREAM_INTERNAL_HOSTED_ZONE_ID="" export MOONSTREAM_ETHEREUM_WEB3_PROVIDER_URI="" export AWS_S3_SMARTCONTRACT_BUCKET="" export AWS_S3_SMARTCONTRACTS_ABI_BUCKET="" +export AWS_S3_SMARTCONTRACTS_ABI_PREFIX="" export BUGOUT_BROOD_URL="https://auth.bugout.dev" export BUGOUT_SPIRE_URL="https://spire.bugout.dev" export HUMBUG_REPORTER_BACKEND_TOKEN=""