{ "info": { "author": "Jay Luker", "author_email": "jay_luker@harvard.edu", "bugtrack_url": null, "classifiers": [], "description": "## mh-selenium\n\nSelenium stuff for DCE Matterhorn\n\n## Getting started\n\n1. Create & activate a virtualenv: `virtualenv venv && source venv/bin/activate`\n2. `pip install dce-mh-selenium`\n3. `mh_driver --help` for commands and `mh_driver [cmd] --help` for command options\n\n## Example process\n\nThe following sequence of commands shows an example of how to upload some media\nto the Matterhorn inbox, create symlinks to populate the inbox selection menu\nin the **Upload Recording** UI, execute a number of uploads\n\n**Note**: The initial inbox upload/symlink commands will prompt for the ssh \nlogin password. Obvs in an automated testing scenario you will need have either \na passphraseless ssh key or AWS instance profiles set up.\n\n#### 1. Upload the initial media to the inbox\n\n`mh_driver inbox put -H [admin ip] -f path/to/presenter.mp4`\n\nUse an s3 url for files > 1g:\n\n`mh_driver inbox put -H [admin ip] -f https://s3.amazonaws.com/my-bucket/presenter.mp4`\n\n#### 2. Create symlinks\n\nThis will create 10 inbox symlinks to each of the previously uploaded files, \ni.e., 10 identical presenter/presentation copies. Each copy will be named using\nthe sequence integer: `presenter_1.mp4`, `presenter_2.mp4`, etc.\n\n`mh_driver inbox symlink -H [admin ip] -f presenter.mp4 -c 10`\n`mh_driver inbox symlink -H [admin ip] -f presentation.mp4 -c 10`\n\n#### 3. Check inbox contents (optional)\n\n`mh_driver inbox list -H [admin ip]`\n\n#### 4. Run the selenium upload tasks\n\nThe `uname` and `passwd` values here correspond to the Matthorn admin interface \nlogin.\n\n```\n for i in `seq 1 10`; do mh_driver upload -u [uname] -p [passwd] --inbox --presenter presenter_${i}.mp4 --presentation presentation_${i}.mp4 [admin base_url] ; done\n```\n\nThis *should* result in 10 processing workflows. The flakiness of Selenium + MH \nmakes this not guaranteed.\n\n#### 5. (later) execute the trim tasks\n\nIn a happy world you'll have a set of 10 of workflows that process their \nrespective copies of the uploaded media and then pause/hold at the `editor` \noperation waiting for a human to intervene. We don't need stinking humans; we \nhave Selenium!\n\n`mh_driver trim -u [uname] -p [passwd] [admin base_url]`\n\n\n## Troubleshooting\n\n### Known issues\n\n#### UnexpectedAlertPresentException: Alert Text: Could not resume Workflow: error\n\nCheck that Matterhron nodes, particularly admin, are not in maintenance state.\n\n## Resources\n\n* python selenium docs: https://selenium-python.readthedocs.org/index.html\n\n\n\ndce-mh-selenium change log\n==========================\n\n0.1.0 (2015-09-14)\n------------------\n\nInitial release!\n\n0.2.0 (2015-11-30)\n------------------\n\nUpdated default inbox paths\n\n0.3.0 (2015-11-30)\n------------------\n\nAllow \"upload\" from s3. disallow upload from local for files > 1g.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/harvard-dce/mh-selenium", "keywords": null, "license": "Apache 2.0", "maintainer": null, "maintainer_email": null, "name": "dce-mh-selenium", "package_url": "https://pypi.org/project/dce-mh-selenium/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/dce-mh-selenium/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/harvard-dce/mh-selenium" }, "release_url": "https://pypi.org/project/dce-mh-selenium/0.3.0/", "requires_dist": null, "requires_python": null, "summary": "Selenium tasks and page objects for DCE Matterhorn", "version": "0.3.0" }, "last_serial": 1840314, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "2f170a19783ac140e3ed8c268dca2419", "sha256": "15a549587973437d6d92addd2831850a557b4f445cf250a759fe26b9f003e7f0" }, "downloads": -1, "filename": "dce_mh_selenium-0.1.0-py2-none-any.whl", "has_sig": false, "md5_digest": "2f170a19783ac140e3ed8c268dca2419", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 11685, "upload_time": "2015-09-14T19:20:31", "url": "https://files.pythonhosted.org/packages/b5/2b/71af4ac643a52dd86f630518c66d6e8f7a8c2b69d299f832d67276a03b03/dce_mh_selenium-0.1.0-py2-none-any.whl" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "3f8082bef94466661a4902212418df2d", "sha256": "128341005e6bfe039c87c01ff5b8cc3fc845750cc9f4416574ffcc367e2c758a" }, "downloads": -1, "filename": "dce_mh_selenium-0.2.0-py2-none-any.whl", "has_sig": false, "md5_digest": "3f8082bef94466661a4902212418df2d", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 11942, "upload_time": "2015-11-30T15:41:47", "url": "https://files.pythonhosted.org/packages/fa/b3/584c7d4b19ffd4c772b4967fde1490ed2101b9969bf39fc80786e3828d75/dce_mh_selenium-0.2.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d512cc1d544501bc093dba5008db4d44", "sha256": "832704d56d6a6fafd347b032d2d10a5ec603afe92d479dd4f2470c785a05588b" }, "downloads": -1, "filename": "dce-mh-selenium-0.2.0.tar.gz", "has_sig": false, "md5_digest": "d512cc1d544501bc093dba5008db4d44", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8040, "upload_time": "2015-11-30T15:01:11", "url": "https://files.pythonhosted.org/packages/c8/a5/96e644337f51fd322c32328a94ec0b220266d2c7d3de28c79863c36edf58/dce-mh-selenium-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "ddb5bda5db8023adcb86de264645c2b0", "sha256": "6a2d33c3eba42b6b044c765c6881dc38a04c17c7870a689c022edb5a37573480" }, "downloads": -1, "filename": "dce-mh-selenium-0.2.1.tar.gz", "has_sig": false, "md5_digest": "ddb5bda5db8023adcb86de264645c2b0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9304, "upload_time": "2015-11-30T15:56:07", "url": "https://files.pythonhosted.org/packages/a1/c7/e0f6e8fdefbfc6e19bdb4dc51bdd7d0f842d5fc840432035f3ba828abd49/dce-mh-selenium-0.2.1.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "a93d4425f348317430ecf929a4c5da17", "sha256": "3c1fb3b74abf611000d8cb57dda3abca0cb3e7272d6125c1d5e3b4fe98436a23" }, "downloads": -1, "filename": "dce-mh-selenium-0.3.0.tar.gz", "has_sig": false, "md5_digest": "a93d4425f348317430ecf929a4c5da17", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9563, "upload_time": "2015-11-30T20:55:07", "url": "https://files.pythonhosted.org/packages/ad/d1/e4e3554be2ca5ca140e864a749edf34292a022aa84ab27a35a3a9eb74cbe/dce-mh-selenium-0.3.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a93d4425f348317430ecf929a4c5da17", "sha256": "3c1fb3b74abf611000d8cb57dda3abca0cb3e7272d6125c1d5e3b4fe98436a23" }, "downloads": -1, "filename": "dce-mh-selenium-0.3.0.tar.gz", "has_sig": false, "md5_digest": "a93d4425f348317430ecf929a4c5da17", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9563, "upload_time": "2015-11-30T20:55:07", "url": "https://files.pythonhosted.org/packages/ad/d1/e4e3554be2ca5ca140e864a749edf34292a022aa84ab27a35a3a9eb74cbe/dce-mh-selenium-0.3.0.tar.gz" } ] }