[OpenStack-docs] Viewing HTML of RST for Developer Docs

Anne Gentle annegentle at justwriteclick.com
Sat Jun 13 00:15:15 UTC 2015


On Fri, Jun 12, 2015 at 6:26 PM, APlimpton <aplimpton at gmail.com> wrote:

> Going for clean start and crossing fingers...
> *I blew away the repo and started over. *
>
> *Clone repo*
> $ git clone git at github.com:openstack/swift.git
> Cloning into 'swift'...
> ...
> Resolving deltas: 100% (28688/28688), done.
>
> *Checkout new branch and set git-review*
> $ cd swift
> $ git checkout -b fix_docs
> $ git-review -s
>
> *Everything looks good, so I go for the tox command and it fails. I see
> that it is stumbling on "pyeclib.ec_iface". Any suggestions appreciated on
> how to correct this. *
>
>
Oh. Yeah. Hm. For project tox environments, your test-requirements.txt is
going to have all the project dependencies. For running project tests.

Apparently the fix back in March, reading
https://review.openstack.org/#/c/163533/, was something like:

edit requirements.txt to have pyeclib>=1.0.3

But, requirements.txt currently has: PyECLib>=1.0.7

In that patch, they did this after editing the requirements.txt:

tox -r -e py27

I'm well beyond my actual knowledge of setting up a swift test environment
so hopefully the swift devs can help you out. But yes, you have to have a
working set of dependencies for the tests and docs to run since often the
Sphinx builds in a dev repo include module classes and the like.

Anne


> $ tox -e py27
> py27 create: /Users/ap/openstack/swift/.tox/py27
> py27 installdeps: -r/Users/ap/openstack/swift/requirements.txt,
> -r/Users/ap/openstack/swift/test-requirements.txt
> py27 develop-inst: /Users/ap/openstack/swift
> py27 installed:
> Babel==1.3,cffi==1.1.2,coverage==3.7.1,debtcollector==0.5.0,dnspython==1.12.0,docutils==0.12,eventlet==0.17.4,flake8==2.0,futures==3.0.3,greenlet==0.4.7,hacking==0.8.1,iso8601==0.1.10,Jinja2==2.7.3,MarkupSafe==0.23,mccabe==0.3,mock==1.0.1,msgpack-python==0.4.6,netaddr==0.7.14,netifaces==0.10.4,nose==1.3.7,nosehtmloutput==0.0.5,nosexcover==1.0.10,oslo.config==1.12.1,oslo.i18n==1.7.0,oslo.serialization==1.6.0,oslo.utils==1.6.0,oslosphinx==3.0.0,PasteDeploy==1.5.2,pbr==0.11.0,pep8==1.4.5,prettytable==0.7.2,pycparser==2.14,pyflakes==0.7.3,Pygments==2.0.2,python-keystoneclient==1.6.0,python-swiftclient==2.4.0,pytz==2015.4,requests==2.7.0,simplejson==3.7.3,six==1.9.0,Sphinx==1.1.3,stevedore==1.5.0,-e
> git+git at github.com:
> openstack/swift.git at 0e22371cd0f9559277ce99d62b43ae0dd8a272fb
> #egg=swift-fix_docs,wheel==0.24.0,wrapt==1.10.4,xattr==0.7.5
> py27 runtests: PYTHONHASHSEED='203172541'
> py27 runtests: commands[0] | nosetests test/unit
> Failure: ImportError (No module named pyeclib.ec_iface) ... ERROR
>
> ======================================================================
> ERROR: Failure: ImportError (No module named pyeclib.ec_iface)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
>   File
> "/Users/ap/openstack/swift/.tox/py27/lib/python2.7/site-packages/nose/loader.py",
> line 418, in loadTestsFromName
>     addr.filename, addr.module)
>   File
> "/Users/ap/openstack/swift/.tox/py27/lib/python2.7/site-packages/nose/importer.py",
> line 47, in importFromPath
>     return self.importFromDir(dir_path, fqname)
>   File
> "/Users/ap/openstack/swift/.tox/py27/lib/python2.7/site-packages/nose/importer.py",
> line 94, in importFromDir
>     mod = load_module(part_fqname, fh, filename, desc)
>   File "/Users/ap/openstack/swift/test/unit/__init__.py", line 40, in
> <module>
>     from swift.common import storage_policy
>   File "/Users/ap/openstack/swift/swift/common/storage_policy.py", line
> 22, in <module>
>     from pyeclib.ec_iface import ECDriver, ECDriverError, VALID_EC_TYPES
> ImportError: No module named pyeclib.ec_iface
>
> Name                        Stmts   Miss Branch BrMiss  Cover   Missing
> -----------------------------------------------------------------------
> swift                          14      6      0      0    57%   28-34, 41
> swift.common                    0      0      0      0   100%
> swift.common.exceptions       144     48     26     26    56%   23-24, 27,
> 37, 87-88, 187, 215-226, 229-262
> swift.common.http              77      5      0      0    94%   24, 34,
> 44, 54, 64
> swift.common.ring               3      0      0      0   100%
> swift.common.ring.builder     593    538    304    302     6%   41-45,
> 65-114, 121-125, 131-133, 146-181, 184, 193, 224, 236-241, 244, 256-274,
> 307-323, 338-341, 353-358, 377-419, 449-500, 521-574, 587-602, 610-611,
> 621-625, 634-636, 646-655, 685-734, 741-745, 753-762, 773-782, 792-953,
> 976-1173, 1177, 1230-1243, 1251-1253, 1264, 1272-1274, 1284-1319,
> 1326-1327, 1339-1365
> swift.common.ring.ring        231    196    116    116    10%   38-44,
> 48-55, 65-85, 89-99, 115-127, 130, 145-152, 155-193, 196-209, 214, 219,
> 224-226, 235, 238-246, 257-261, 275-277, 308-309, 325-427
> swift.common.ring.utils       251    227    132    132     6%   30-35,
> 123-130, 141-147, 176-188, 195, 202-206, 213-217, 224-230, 241-256,
> 297-386, 399-407, 420-428, 436-441, 448-481, 485-496, 503-521, 528-557,
> 565-573, 578
> swift.common.swob             714    496    277    277    22%   123, 127,
> 139, 142, 156-162, 165-171, 187, 190, 206-209, 212, 227, 230-235, 238,
> 241-246, 249, 252, 255-261, 270-272, 275-280, 283, 286-291, 294, 297, 300,
> 303-305, 308, 320, 323-330, 344-349, 352-357, 371-374, 377-380, 393-394,
> 397, 411-412, 415-419, 432, 435-440, 460-464, 467, 506-531, 534-542,
> 572-642, 652-657, 660, 682, 685-714, 723-733, 736, 745, 748-751, 764-766,
> 769-770, 781-791, 825-826, 840-889, 894-900, 908-917, 922-925, 930,
> 941-943, 947, 952, 955, 963-972, 978-984, 993-1004, 1013-1014, 1037,
> 1053-1079, 1083, 1087, 1091-1099, 1122-1149, 1166-1169, 1176-1214,
> 1217-1316, 1322-1324, 1333-1339, 1343, 1365-1373, 1379-1380, 1389-1405
> swift.common.utils           1751   1432    718    696    14%   48-49,
> 115, 125-134, 159, 181-198, 217-231, 245-263, 275, 284-292, 296-298,
> 315-335, 348-358, 362, 366-369, 382-391, 395, 409-411, 427-428, 439-444,
> 453-455, 458, 464-471, 481-498, 508-526, 536-548, 559-560, 566-579,
> 584-594, 599, 610-619, 628-634, 643-646, 655-667, 679-685, 738-754, 757,
> 760, 763, 766, 769, 773, 777-780, 784-789, 792-794, 797-799, 802-804, 819,
> 830-838, 863, 873-878, 892-908, 926-940, 964-987, 999-1002, 1016-1019,
> 1022, 1025-1030, 1045-1046, 1049, 1052-1053, 1061, 1067-1068, 1071-1077,
> 1080, 1083, 1086, 1089, 1092, 1095, 1098, 1101, 1104, 1110-1118, 1121-1128,
> 1131-1147, 1152, 1155, 1158, 1161, 1164, 1167, 1171-1172, 1188, 1200-1216,
> 1226-1232, 1235-1237, 1251-1253, 1257-1258, 1262, 1266-1267, 1271, 1275,
> 1279, 1282, 1288-1290, 1299, 1302, 1305-1331, 1340-1341, 1358-1359,
> 1378-1379, 1382-1418, 1448-1564, 1583-1589, 1598-1610, 1620-1647,
> 1663-1695, 1705-1706, 1715-1732, 1744, 1757-1768, 1790-1814, 1829-1860,
> 1872, 1884-1891, 1904-1906, 1916-1922, 1934-1937, 1949, 1953-1957,
> 1974-2010, 2024-2031, 2048-2073, 2083-2092, 2100-2103, 2121-2165,
> 2189-2211, 2218, 2221-2222, 2244-2251, 2254-2257, 2263-2264, 2273-2280,
> 2283, 2286-2292, 2300-2305, 2309-2314, 2324, 2344-2386, 2410-2442,
> 2463-2492, 2497-2503, 2510-2518, 2528-2541, 2552-2576, 2580-2585,
> 2600-2605, 2614-2616, 2633-2635, 2645-2650, 2662, 2676-2681, 2690-2693,
> 2701-2703, 2712-2715, 2724, 2727, 2730-2733, 2744-2754, 2766-2768,
> 2775-2781, 2788-2794, 2806-2808, 2811-2814, 2817-2824, 2827-2836,
> 2840-2881, 2888-2896, 2910-2949, 2960-2972, 2982-3001, 3018-3032,
> 3039-3049, 3065-3071, 3081-3095, 3104-3107, 3119-3144, 3167-3170,
> 3187-3195, 3203-3213, 3217-3221, 3228, 3236-3237, 3244-3249, 3252-3281,
> 3284-3311, 3327-3344, 3357-3362, 3373-3395, 3434-3458, 3473-3477,
> 3492-3511, 3530-3540, 3586-3621
> -----------------------------------------------------------------------
> TOTAL                        3778   2948   1573   1549    16%
> ----------------------------------------------------------------------
> Ran 1 test in 0.001s
>
> FAILED (errors=1)
> ERROR: InvocationError: '/Users/ap/openstack/swift/.tox/py27/bin/nosetests
> test/unit'
> ________________________________________________________________ summary
> _________________________________________________________________
> ERROR:   py27: commands failed
>
>
>
>
> Thanks,
> Amanda
>
>
>
>
>
>
> On Fri, Jun 12, 2015 at 3:28 PM, Anne Gentle <
> annegentle at justwriteclick.com> wrote:
>
>>
>>
>> On Fri, Jun 12, 2015 at 4:48 PM, APlimpton <aplimpton at gmail.com> wrote:
>>
>>> Hi,
>>>
>>> I wanted to clone a project repo (Swift), make a couple of small changes
>>> to the developer docs and then view the HTML to be sure everything is set
>>> correctly with text editor etc. I started out following the HowTo and
>>> HowTo/FirstTimers instuctions, cloned the repo locally on my laptop, made
>>> the changes and am ready to look at the local build.
>>>
>>> However there are no instructions on how to do that. I see a Building
>>> Output Locally section on the How To
>>> <https://wiki.openstack.org/wiki/Documentation/HowTo>wiki --- but that
>>> is for openstack-manuals. When I tried the instructions, just is case they
>>> somehow work, I got a large chunk of errors. (mostly about packages and
>>> modules that are not installed)
>>>
>>
>> All projects have a tox -e docs command. We've been pretty insistent
>> lately.
>>
>> So our instructions at
>> https://wiki.openstack.org/wiki/Documentation/HowTo#Building_Output_Locally
>> should work.
>>
>> On Mac, do all this first:
>>
>> Because Sphinx builds have dependent requirements it is best to work with
>> in a virtual environment. Fortunately the project already has tox set up so
>> that you can create a virtualenv that contains the required dependencies.
>> To use it, do this on a Mac or Ubuntu machine with Python and pip already
>> installed:
>>
>> Clone the swift repo.
>>
>> Change directories into swift.
>>
>> Run this:
>>
>> tox -e py27
>>
>>
>> When you get a congratulations message, run this:
>>
>> Mac/Ubuntu:
>>
>> source .tox/py27/bin/activate
>>
>>
>> Then run:
>>
>> tox -e docs
>>
>> Let us know how it goes! On the wiki, feel free to reverse-order those
>> instructions and make them more generic.
>>
>> Thanks,
>>
>> Anne
>>
>>
>>> Switching to the Developer's Guide
>>> <http://docs.openstack.org/infra/manual/developers.html> was not
>>> helpful as they don't cover the docs part.
>>>
>>> One of the devs at work suggested using "python ./setup.py build_sphinx"
>>> That also results in numerous errors.
>>>
>>> The best guess I'm hearing now is that I should get a VM, install the
>>> project on it and then do the clone etc al.
>>>
>>> How is this actually supposed to work?
>>>
>>> Thanks,
>>> Amanda
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> OpenStack-docs mailing list
>>> OpenStack-docs at lists.openstack.org
>>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-docs
>>>
>>>
>>
>>
>> --
>> Anne Gentle
>> Rackspace
>> Principal Engineer
>> www.justwriteclick.com
>>
>
>


-- 
Anne Gentle
Rackspace
Principal Engineer
www.justwriteclick.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-docs/attachments/20150612/630c67ed/attachment-0001.html>


More information about the OpenStack-docs mailing list