Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Test Workflow

  1. Create an Account
    1. Create a new account with the following credentials:
    2. username: testacct
    3. password: password
  2. Sign In
    1. Sign In with new credentials above
    2. You should be redirected to /home after login
  3. Search Services
    1. Search for "Clowder" in the Services Pane
    2. You should see only components of the "Clowder" stack listed
  4. Create a New Stack
    1. Add a new Clowder stack
    2. Do not specify any options
  5. Add Service
    1. Add "PlantCV" to new Clowder stack
    2. This should add both PlantCV and RabbitMQ
    3. RabbitMQ should not be removable
  6. Start Stack
    1. Start the Clowder stack
    2. Status Order: Stopped -> Waiting -> Starting -> Ready
    3. View Logs should be available when services are "waiting," "starting," or "ready"
    4. Endpoint Links should appear once stack is fully "started"
      1. Sign into Clowder, register for an account, and upload a file
      2. This is just to test that persisted data is preserved
  7. Stop Stack
    1. Stop the Clowder stack
    2. Status Order: Ready -> Stopping -> Stopped
  8. Remove Service
    1. Remove "PlantCV" from the Clowder stack
    2. RabbitMQ should now be removable
    3. Remove "RabbitMQ" from the Clowder stack
  9. Delete Stack (retain data)
    1. Delete the Clowder stack
    2. Opt to save the volumes for later (i.e. orphan them, do not delete)
  10. Create a New Stack: DataVerseClowder
    1. This time, specify options: ElasticSearch
    2. Opt to reuse the orphaned volumes from before
  11. Start the new Clowder stack
  12. Sign into Clowder and verify that our account and image is still there
  13. Delete Stack
    1. Delete the Clowder stack
    2. Once again, save its volumes (i.e. orphan them, do not delete)
  14. Delete Volume
    1. Delete the orphaned volume manually

Use Cases

Login View

Create an Account

...

  • On the Services Pane (left-hand side for desktop, or at the top on mobile) you should see a list of services that you can add
  • The input at the top of this list allows the user to filter the list of specs.
  • Search for "Clowder" 
  • The results below should yield all components of the Clowder stack

Add a New Stack of Services

...

  • Click the "Add" button next to "Image Preview Extractor" a service on the Services Pane
  • A wizard should pop up allowing the user to add and configure the new service
  • Requirements Page
    • This page should display a description of the stack that will be added
    • All required services should be listed
    • Any services that require volumes should make this requirement known
    • User must enter a name for the stack before clicking "Next"
      • User cannot click "Next" without entering a name
      • Name must be between 0 and 20 characters
  • Confirmation Page
    • Since this service has no options or volume requirements, the user should be taken directly to confirmation
    • Confirmation Page lists any Services / Volumes that will be added with this operation
    • User can review the total operation before clicking "Confirm"
  • Upon clicking "Confirm" the new stack should appear in the "Stacks" tab of the Content Pane (right-side on desktop, or bottom on mobile)

Add a New Stack of Services: Intermediate

  • Click the "Add" button next to "Kibana" on the Services Pane
  • A wizard should pop up allowing the user to add and configure the new servicestack of services
  • Requirements Page
    • This page should display a description of the stack that will be added
    • All required services should be listed
    • Any services that require volumes should make this requirement known
    • User must enter a name for the stack before clicking "Next"
      • User cannot click "Next" without entering a name
      • Name must be between 0 and 20 characters
  • Volumes Options PageClick the "Add" button next
    • Since If this stack contains a service that require a Volumeoptional services, user should be taken to the Volumes Page
    • User should be shown their volume storage quota
    • User should be shown how adding the necessary volumes will affect their storage quota
      • User may choose to reattach an orphaned volume, of they would like to reuse the data on it
      • Orphaned volumes do not affect projected storage quota, since the are already factored into current usage
    • User may not allocate more space than their quota
      • Quota must be >= current usage + projected usage
    • User must enter a name, size, and unit for each new volume before clicking "Next"
      • Name should be defaulted to a sensible default
      • Size should be defaulted to 10 GB
  • Confirmation Page
    • Since this service has no dependencies, options, or volume requirements, the user should be taken directly to confirmation
    • Confirmation Page lists any Services / Volumes that will be added with this operation
    • User can review the total operation before clicking "Confirm"
  • Upon clicking "Confirm" the new stack should appear in the "Stacks" tab of the Content Pane (right-side on desktop, or bottom on mobile)

Add a New Stack of Services: Complex

    • to
    "DataVerse" on
    • the
    Services Pane
  • A wizard should pop up allowing the user to add and configure the new stack of services
  • Requirements Page
    • This page should display a description of the stack that will be added
    • All required services should be listed
    • Any services that require volumes should make this requirement known
    • User must enter a name for the stack before clicking "Next"
      • User cannot click "Next" without entering a name
      • Name must be between 0 and 20 characters
    • Options Page
    • This page present the user with optional services for this stack
    • Any services that require other services (dependencies) should make their requirements known.
    • User may choose any optional services before clicking "Next"
  • Volumes Page
    • Since If this stack contains multiple one or more services that require a Volume, user should be taken to the Volumes Page
    • User should be shown their volume storage quota
    • User should be shown how adding the necessary volumes will affect their storage quota
      • User may choose to reattach an orphaned volume, of they would like to reuse the data on it
      • Orphaned volumes do not affect projected storage quota, since the are already factored into current usage
    • User may not allocate more space than their quota
      • Quota must be >= current usage + projected usage
    • User must enter a name, size, and unit for each new volume before clicking "Next"
      • Name should be defaulted to a sensible default
      • Size should be defaulted to 10 GB
  • Confirmation Page
    • Since this service has no dependencies, options, or volume requirements, the user should be taken directly to confirmation
    • Confirmation Page lists any Services / Volumes that will be added with this operation
    • User can review the total operation before clicking "Confirm"
  • Upon clicking "Confirm" the new stack should appear in the "Stacks" tab of the Content Pane (right-side on desktop, or bottom on mobile)

View Stack Status

  • User should see their stacks listed in the "Stacks" tab of the Content Pane (right-side on desktop, or bottom on mobile)
    • Clicking the stack name (accordion header) will expand the accordion, showing the status of all services within the stack
    • From here, user should see options to:
      • Start / Stop a stack
      • Add / Remove optional services to/from stack
      • View the volumes attached to a stack

Add Service

  • User should see "Add Service" next to any optional services that have not been added to this stack
  • Clicking "Add Service" should add that service to the stack
  • Any services that the newly-added service requires are automatically added to the stack
  • The new service(s) will be started the with the stack

...