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

U-DS Data Bucket in marketplace #144

Open
18 tasks done
mike-gangl opened this issue Mar 26, 2024 · 17 comments
Open
18 tasks done

U-DS Data Bucket in marketplace #144

mike-gangl opened this issue Mar 26, 2024 · 17 comments
Assignees
Labels
Feature Feature label used in Unity Project U-CS U-DS

Comments

@mike-gangl
Copy link
Contributor

mike-gangl commented Mar 26, 2024

U-DS Data Bucket in marketplace

Allow users to create a data bucket in a given venue. Eventually this will be 'multiple' buckets, but for now, a single bucket should be created.

Acceptance Criteria

Acceptance criteria required to implement the epic

Work Tickets

Link to work tickets required to implement the epic

Dependencies

Other epics or outside tickets required for this to work

Associated Risks

links to risk issues associated with this epic

  • TBC
@mike-gangl mike-gangl added the Feature Feature label used in Unity Project label Mar 26, 2024
@mike-gangl mike-gangl added the U-CS label Apr 8, 2024
@mike-gangl mike-gangl moved this from Todo to Blocked in Unity Project Board Apr 10, 2024
@mike-gangl
Copy link
Contributor Author

Blocked by unity-sds/unity-cs#373 for now

@mike-gangl
Copy link
Contributor Author

/unity/ds/data/bucket/primary-data-bucket --> needs project/venue name

@mike-gangl mike-gangl moved this from Todo to In Progress in Unity Project Board May 30, 2024
@galenatjpl
Copy link

@ngachung and/or @mike-gangl we think this can be closed. Is there anything left to do on this in your minds?

@galenatjpl
Copy link

@ngachung and/or @mike-gangl ping.

@ngachung
Copy link

@galenatjpl IIRC we kept this open because using a zip of the terraform doesn't work?

@mike-gangl
Copy link
Contributor Author

This is probably REALLY close to being closed, but i wanted to ensure that we had the process for adding the venue bucket to the shared-services system documented, as well as the hooks/triggers to support automated cataloging.

@galenatjpl
Copy link

@mike-gangl @ngachung I'm going to try this now on a new management console, and just see where we are. It looks like we have marketplace integration, and I'll see what happens:
See:
https://github.com/unity-sds/unity-data-services/blob/develop/tf-module/marketplace/s3_bucket_creation.tf
and
https://github.com/unity-sds/unity-marketplace/blob/main/applications/unity-ds/7.7.0/metadata.json

@galenatjpl
Copy link

@mike-gangl @ngachung @brianlee731 @GodwinShen @wphyojpl , I was able to deploy. It seemed to work, and I think this ticket can be closed? Please let me know if you want me to show you what I did to deploy via the MC and Marketplace.

@mike-gangl
Copy link
Contributor Author

mike-gangl commented Sep 25, 2024

I'd like to make sure, to close out this ticket, we add the Validation/ Integration testing.

gherkin:

Feature: Data-Services Bucket via Management Console
  feature to define the validation for the bucket deployment through management console.

@develop @test
Scenario: Check for bucket creation and configuration

  Given access to the venue AWS account 
  And a market_bucket__notification_prefix of stage_out
  And bucket is deployed via the marketplace with specified bucketname #to be referenced in env files
  When I query the buckets via AWS
  Then i can see the bucket in the bucket listing
  And i can query bucket details for bucketname  #to be referenced in env files
  And i can see an SNS event notifications for .json file in the stage_out prefix

The Given section is where the bucket is actually created- this can be defined as a manual test if it cannot be automated by using the @Manual decorator (currently not used next to develop, test).

@mike-gangl
Copy link
Contributor Author

I'd like to make sure, to close out this ticket, we add the Validation/ Integration testing.

gherkin:

Feature: Data-Services Bucket via Management Console
  feature to define the validation for the bucket deployment through management console.

@develop @test
Scenario: Check for bucket creation and configuration

  Given access to the venue AWS account 
  And a market_bucket__notification_prefix of stage_out
  And bucket is deployed via the marketplace with specified bucketname #to be referenced in env files
  When I query the buckets via AWS
  Then i can see the bucket in the bucket listing
  And i can query bucket details for bucketname  #to be referenced in env files
  And i can see an SNS event notifications for .json file in the stage_out prefix

The Given section is where the bucket is actually created- this can be defined as a manual test if it cannot be automated by using the @Manual decorator (currently not used next to develop, test).

As I learn more about gherkin and behave (the python framework that runs the tests), there's a chance we use a before_feature and after_feature hook that would do the bucket creation via marketplace and the bucket deletion (via marketplace). This would allow us to create a number of features for checking things like the setup, add a file to see if a .json notification is sent, etc and then delete the bucket when completed.

@brianlee731
Copy link
Contributor

@ngachung Galen provide status that U-CS completed their respective scope for this ticket. Please proceed with U-DS scope of work.

@galenatjpl
Copy link

This ticket, I think is basically done from a core U-CS and "integration into the marketplace" perspective. There are some remaining items to do (that mostly fall under the purview of the U-DS Team), that are unrelated to the actual integration into the marketplace. See Acceptance criteria section in the description of this issue.

@galenatjpl
Copy link

@ngachung I marked the "Make this bucket available to other services (e.g. Jupyter for read access, SPS for read/write access)" checkbox as complete, since I think the bucket should be accessible to Jupyter and SPS, no problem in this venue. Let me know if you have concerns. I didn't actually test this access out, but I think @LucaCinquini can from SPS somehow? @LucaCinquini let me know if you want to setup such a test.

@brianlee731
Copy link
Contributor

brianlee731 commented Dec 17, 2024

Gherkin Case: unity-monorepo/tests/system-tests/features/data_catalog/managed_service.feature

This test will be executed manually - will not implement via selenium; will require a lot of code change to just test deployment.

@brianlee731 brianlee731 moved this from In Progress to Done in Unity Project Board Dec 17, 2024
@ngachung
Copy link

@galenatjpl I am not convinced that Jupyter read access happens "automatically" after the bucket is deployed.

@galenatjpl
Copy link

@ngachung What I mean, is that usually read access to buckets are allowed under the base IAM roles that a user would have under the exact same account. Since Jupyter is in the same account and region as the bucket, I assume it would work, but I could be wrong, and it should be tested. I think we should ask @mcduffie to test.

@ngachung
Copy link

If it helps, I can confirm it doesn't work. A newly created bucket in unity venue prod is not accessible from Jupyter. Jupyter uses a different IAM role. Somewhat related ticket unity-sds/unity-ads-deployment#177

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature Feature label used in Unity Project U-CS U-DS
Projects
Status: Done
Development

No branches or pull requests

5 participants