Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement the CloudStorage backend #4285

Closed
Tracked by #4044
akolson opened this issue Sep 18, 2023 · 2 comments · Fixed by #4309
Closed
Tracked by #4044

Implement the CloudStorage backend #4285

akolson opened this issue Sep 18, 2023 · 2 comments · Fixed by #4309

Comments

@akolson
Copy link
Member

akolson commented Sep 18, 2023

Overview

To allow storage and access of objects on the cloud in Studio, we need to create a CloudStorage backend class that implements the base Backend class in the appnexus library. The CloudStorage backend should be able to make requests to any Cloud storage service supported by Studio for example GCS, AWS S3, etc.

Description and outcomes

  • Create a new class CloudStorage that implements Backend:
CLASS CloudStorage IMPLEMENTS Backend:
	METHOD make_request(params):
		# make request to cloud storage services(e.g via GCS, AWS S3, etc)

	METHOD connect(params):
		# Implement the connect method for storage service if any

	CLASS METHOD _create_instance(cls)
		# initialize a CloudStorage Backend instance
  • The class should connect to any cloud storage service supported in Studio(if required) by implementing connect().
  • Implement the make_request() method that performs object retrieval requests. It should return the requested object

Accessibility requirements

Not applicable

Acceptance criteria

  1. The CloudStorage backend is created and it implements the Backend class.
  2. The class connects to whichever cloud service(e.g GCS, AWS S3, etc) is used in Studio(if required).
  3. The make_request method is implemented correctly and retrieves stored objects.
  4. Tests are written to validate correctness of the CloudStorage backend logic.
  5. Documentation has been added to the backend class, explaining its purpose, inputs and outputs.

Resources

@akash5100
Copy link
Contributor

I would like to take this issue.

@akolson
Copy link
Member Author

akolson commented Sep 29, 2023

Reassigning this to allow @akash5100 to focus on his GSoC project.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants