Louis Auneau
07/28/2023, 8:13 PMLee Littlejohn
07/28/2023, 8:38 PMLee Littlejohn
07/28/2023, 8:39 PMsetup_for_execution
function set your private attribute, which should be your clientLee Littlejohn
07/28/2023, 8:42 PMclass BespokeResource(ConfigurableResource):
config_value: str|None
_client: YourClientType
def setup_for_execution(self, context):
if self.config_value:
self._client = YourClient(config_value)
else:
self._client = YourClient()
Lee Littlejohn
07/28/2023, 8:43 PMLee Littlejohn
07/28/2023, 8:44 PMdef get_client(self):
return self._client
or
def use_client(self, *args):
self._client(*args)
Lee Littlejohn
07/28/2023, 8:47 PM@asset
def my_asset(bespoke_resource: BespokeResource):
your_client = bespoke_resource.get_client()
Louis Auneau
07/31/2023, 2:45 PMLee Littlejohn
07/31/2023, 8:23 PMIAttachDifferentObjectToOpContext
may be helpful - check out how the dagster_aws integration handles the s3 resource for both styles hereLee Littlejohn
07/31/2023, 8:24 PMLee Littlejohn
07/31/2023, 8:25 PMLouis Auneau
07/31/2023, 8:26 PMLee Littlejohn
07/31/2023, 8:27 PM