#6828 Switch activitystream lib to use Ming instead of pymongo

v1.1.0
closed
General
Cory Johns
2015-08-20
2013-11-01
No

Also make sure appropriate indexes are defined.

Related

Tickets: #4394
Tickets: #4452

Discussion

  • Dave Brondsema

    Dave Brondsema - 2013-11-01
    • Labels: --> activitystreams
     
  • Tim Van Steenburgh

    • status: open --> in-progress
    • assigned_to: Tim Van Steenburgh
     
  • Dave Brondsema

    Dave Brondsema - 2013-11-15
    • Milestone: forge-nov-15 --> forge-nov-29
     
  • Tim Van Steenburgh

    • status: in-progress --> code-review
    • Size: 2 --> 4
     
  • Tim Van Steenburgh

    activitystream:tv/6828
    allura:tv/6828

    For reference, here are my settings from production.ini:

    activitystream.master = mongodb://10.58.1.24:27017
    activitystream.database = activitystream
    activitystream.activity_collection = activities
    activitystream.node_collection = nodes
    activitystream.enabled = true
    activitystream.recording.enabled = true
    

    setup.py has the Ming storage driver installed by default. To fall back to the default (pymongo), comment out these lines in Allura/setup.py:

        [activitystream.storage]
        driver = activitystream.storage.mingstorage:MingStorage
    

    To do functional testing, create a new project and some new users. For now, the home page of the project and users is still their activity page. Trying making at least one of the users watch a project and follow another user. "Do stuff" on the project(s) or with the users to make activities (comments, new artifacts, etc), then confirm that the activities show up on the appropriate timelines. To recap the logic:

    1. If I am looking at my own timeline, I see stuff I've done, and stuff related to people or projects i'm following/watching.
    2. If I'm looking at someone else's timeline, I only see stuff they've done.
    3. If I'm looking at a project timeline, I see stuff related to that project.

    You can switch back and forth between pymongo and ming at will (needs setup.py develop). I ran all the Allura tests using both.

     
  • Cory Johns

    Cory Johns - 2013-11-21
    • QA: Cory Johns
     
  • Cory Johns

    Cory Johns - 2013-11-25

    Fixed tests to handle Ming not being available, as well as setup.py missing the activitystream.storage package, merged, and now waiting on pythontree to be updated.

     
  • Cory Johns

    Cory Johns - 2013-11-26
    • status: code-review --> closed