Goals
- The app store will provide an application store for CDAP users to quickly and efficiently add capabilities into the platform.
- The app store will also expand capabilities within the community by allowing users to publish capabilities for other CDAP users to experience.
Checklist
- User stories documented(Todd)
- Requirements documented(Todd)
- Requirements Reviewed
- Mockups Built
- Design Built
- Design Accepted
User Stories
- As a CDAP User I want a plus button on the navbar so that I can an add new capabilities from anywhere in the platform
- As a CDAP User I want to be able to add new Datasets from the application store with pre configured fields so that I can easily write applications with schemas already defined for popular technologies, like omniture.
- As a CDAP User I want to be able to add new artifacts from the app store into the system to speed up development and improve the overall developer experience.
- As a Hydrator User I want to be able to add plugins from the app store to expand the capabilities of my pipeline.
- As a Hydrator User from within the Hydrator Studio I want to be able to add new pipelines or applications from within Hydrator, and upon adding, remain in the Hydrator context.
- As a CDAP user I want to be able to add examples from the app store.
- As a CDAP user from within the app store I want to be able to know what I've added into the platform and have those special cased when browsing the app store.
Use Cases
Scenario 1
[1] I'm in hydrator studio, in CDAP 4.0
[2] I click the + button
[3] From the app store I choose pipeline, and add "SFDC Lead dump"
[4] I return to the hydrator context, and it's in the pipeline studio, AND NOT deployed as an app
Scenario 2
[1] In CDAP, and I click the + button
[2] From the app store I choose pipeline, and add "SFDC Lead dump"
[3] Hydrator is opened and it's in the pipeline studio, AND NOT deployed as an app
Scenario 3
[1] In CDAP, and I click the + button
[2] From the app store I choose application, "Stock Market Trainer"
[3] I will see the option "clone in hydrator".
[4] If I click "clone in hydrator" hydrator is opened and it's in the pipeline studio, AND NOT deployed as an app
Scenario 4
[1] In CDAP, and I click the + button
[2] From the app store I choose application, "Stock Market Trainer"
[3] I will see the option "clone in hydrator".
[4] If I click add, the app will be deployed and I will see in detailed pipeline view.
Scenario 5
[1] In CDAP, and I click the + button
[2] From the app store I choose plugin, "SFDC Source"
[3] The plugin is added as a resource
Scenario 6
[1] In hydrator studio, and I click the + button
[2] From the app store I choose plugin, "SFDC Source"
[3] The plugin is added and will show up on in the plugin library for immediate use
Requirements
- The app store should be accessible from anywhere within CDAP.
- The app store should support adding:
- Datasets
- Artifacts
- Applications (including custom applications/examples)
- Pipelines
- Plugins
- The app store should provide context when browsing to know if I've already added an entity.
- The app store should special case if a newer version of an entity I added is available.
- The app store should instantiate the new entity wizard where applicable.
- The app store should have rules for contribution and allow user submissions.
- The app store should be browsable independently of the product, from the website.
- The app store on the website should link to localhost and the cdap port to indicate "open in cdap" to add entities.
- The app store should be supported by default in both Distributed and Standalone, with the option to be disabled.