{
"info": {
"author": "Tyler Heucke",
"author_email": "tyler.heucke@dell.com",
"bugtrack_url": null,
"classifiers": [
"Development Status :: 4 - Beta",
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"Natural Language :: English",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: Implementation :: CPython",
"Programming Language :: Python :: Implementation :: PyPy"
],
"description": "OpenSwitch Development Tool\n===========================\n\n.. image:: https://img.shields.io/pypi/v/opx.svg\n :target: https://pypi.python.org/pypi/opx\n\n.. image:: https://img.shields.io/pypi/l/opx.svg\n :target: https://pypi.python.org/pypi/opx\n\n.. image:: https://img.shields.io/pypi/pyversions/opx.svg\n :target: https://pypi.python.org/pypi/opx\n\n.. image:: https://readthedocs.org/projects/opx/badge/?version=latest\n :target: https://opx.readthedocs.io\n\nInstallation\n------------\n\n.. code-block:: bash\n\n $ pip3 install opx\n\nRequirements\n~~~~~~~~~~~~\n\n- `Docker `_\n- `Git `_\n- `Repo `_\n\nGetting Started\n---------------\n\n.. code-block:: bash\n\n # initialize your workspace\n $ opx init\n\n # build all packages\n $ opx build\n\n # assemble an installer\n $ opx assemble\n\n # remove persistent container\n $ opx remove\n\nNew Features (Over `opx-build `_)\n---------------------------------------------------------------------------\n\n* Opinionated defaults\n * Remembers to pull Docker image regularly so you don't have to\n * Sort packages into ``pkg/$repo/`` after building\n * Persistent container (if inside a workspace)\n * One container allowed per workspace\n\n* Publish packages to testing\n\n.. code-block:: bash\n\n $ opx publish opx-logging\n\n* Commands are aliased\n\n.. code-block:: bash\n\n # all run opx build\n $ opx b opx-logging\n $ opx bui opx-logging\n $ opx build opx-logging\n\n\nCommand Line Completion\n-----------------------\n\nRun the command corresponding with your shell. Add to your shell startup file for persistent autocomplete.\n\n.. code-block:: bash\n\n # bash\n $ eval \"$(_OPX_COMPLETE=source-bash opx)\"\n\n # zsh\n $ eval \"$(_OPX_COMPLETE=source-zsh opx)\"\n\n # fish\n $ eval (env _OPX_COMPLETE=source-fish opx)\n\nRoadmap\n-------\n\n* Port ``opx_rel_pkgasm`` from python script to module\n* Port ``opx_get_packages`` from python script to module\n* Port ``opx_bld_basics`` from python script to module\n\nLicense\n-------\n\nOpenSwitch Development Tool is distributed under the terms of the\n`MIT License `_.\n\n\n",
"description_content_type": "",
"docs_url": null,
"download_url": "",
"downloads": {
"last_day": -1,
"last_month": -1,
"last_week": -1
},
"home_page": "https://github.com/open-switch/tools_opx-py",
"keywords": "openswitch,opx",
"license": "MIT",
"maintainer": "",
"maintainer_email": "",
"name": "opx",
"package_url": "https://pypi.org/project/opx/",
"platform": "",
"project_url": "https://pypi.org/project/opx/",
"project_urls": {
"Homepage": "https://github.com/open-switch/tools_opx-py"
},
"release_url": "https://pypi.org/project/opx/1.0.1/",
"requires_dist": [
"attrs",
"beautifultable",
"click",
"click-completion",
"click-log",
"colorama",
"deb-pkg-tools",
"docker",
"dockerpty",
"requests",
"sh"
],
"requires_python": "",
"summary": "OpenSwitch Development Tool",
"version": "1.0.1"
},
"last_serial": 4779691,
"releases": {
"0.0.1": [
{
"comment_text": "",
"digests": {
"md5": "a62eb457a373f53b5595cabf326e61cb",
"sha256": "df33764f662fad84130860f3da5450ea37b34a0f98b3786364b52b5f04e182e7"
},
"downloads": -1,
"filename": "opx-0.0.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "a62eb457a373f53b5595cabf326e61cb",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 6165,
"upload_time": "2018-01-25T08:03:37",
"url": "https://files.pythonhosted.org/packages/46/84/812a2f98e99b9e389772fb0a15b2cd9a8df0de4889f0c9474a5343e164ab/opx-0.0.1-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "e71280de3d52f610f4626f653d02a9df",
"sha256": "d8843cce02cec0217d8632eb8600d4397c4622e2690133d198a92dc4bc4af88f"
},
"downloads": -1,
"filename": "opx-0.0.1.tar.gz",
"has_sig": false,
"md5_digest": "e71280de3d52f610f4626f653d02a9df",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 4488,
"upload_time": "2018-01-25T08:03:39",
"url": "https://files.pythonhosted.org/packages/42/ae/d5e75addce24a77d07da16b7a5f4ae09e311f63bea580617e1235817f21b/opx-0.0.1.tar.gz"
}
],
"0.0.2": [
{
"comment_text": "",
"digests": {
"md5": "1b0ea54ba58f84c35b1a0320c117854a",
"sha256": "6553680fb5191e18cf19084e9a8c3538148681a2dd08bccb906abad95de61b05"
},
"downloads": -1,
"filename": "opx-0.0.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "1b0ea54ba58f84c35b1a0320c117854a",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 11990,
"upload_time": "2018-01-29T18:01:33",
"url": "https://files.pythonhosted.org/packages/38/3a/d1c9c9274cae7a00c9cedfb8df7fc7fb46dedd4a74b9f5b95d49de82c434/opx-0.0.2-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "baac4f49f7fa276f964d15d422ebab7d",
"sha256": "808ce972b848fd9307af3b70578f5a90cc6b03f12b32c09c8a0e20e24236347f"
},
"downloads": -1,
"filename": "opx-0.0.2.tar.gz",
"has_sig": false,
"md5_digest": "baac4f49f7fa276f964d15d422ebab7d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 7295,
"upload_time": "2018-01-29T18:01:34",
"url": "https://files.pythonhosted.org/packages/45/df/7206323b3c70315e589127dbdaee12e21eb5605717e7f6fb84c563400a44/opx-0.0.2.tar.gz"
}
],
"0.0.3": [
{
"comment_text": "",
"digests": {
"md5": "486ac356cf7c6a8a7fd3e03d985be960",
"sha256": "0cdf2e5635d8929c12050f8645b9997ea4714c3781f2fba3fb8170b8fd2dd1a6"
},
"downloads": -1,
"filename": "opx-0.0.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "486ac356cf7c6a8a7fd3e03d985be960",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 12358,
"upload_time": "2018-02-01T21:36:09",
"url": "https://files.pythonhosted.org/packages/63/9a/e3c88b4d7331f7ae8fc82c3b83b5744fa5b11b7b7a227c6c9faf44d23908/opx-0.0.3-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "05513231e084649dc870298d9cfbea19",
"sha256": "4899f7086a200dd1c811cae8e59a4921390201e9d48481ddd3f55d00d12632d7"
},
"downloads": -1,
"filename": "opx-0.0.3.tar.gz",
"has_sig": false,
"md5_digest": "05513231e084649dc870298d9cfbea19",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 7631,
"upload_time": "2018-02-01T21:36:11",
"url": "https://files.pythonhosted.org/packages/d6/d5/4695cf3ddd365c4233a96311ca9991fe58fff0c46822e3f6856e15b68e63/opx-0.0.3.tar.gz"
}
],
"0.0.4": [
{
"comment_text": "",
"digests": {
"md5": "8df35703068d4bb9d773d0369fa8bca9",
"sha256": "796c7129d2eb91719123b4f0e6749292ef7d39fcf6ca4b123f4ee99d61294edc"
},
"downloads": -1,
"filename": "opx-0.0.4-py3-none-any.whl",
"has_sig": false,
"md5_digest": "8df35703068d4bb9d773d0369fa8bca9",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 15578,
"upload_time": "2018-02-15T00:52:53",
"url": "https://files.pythonhosted.org/packages/c1/67/333b3a3f099a4046cd3d36181fae22f35ef7640361f7427d384175094946/opx-0.0.4-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "c9b7f96eecb03d78ada9b949cf1096e5",
"sha256": "4a0259c75b73462b3109f3ca5dbf8745244fe376f70c2d1bf9aac855472eeeaa"
},
"downloads": -1,
"filename": "opx-0.0.4.tar.gz",
"has_sig": false,
"md5_digest": "c9b7f96eecb03d78ada9b949cf1096e5",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 11013,
"upload_time": "2018-02-15T00:52:54",
"url": "https://files.pythonhosted.org/packages/22/97/5ad16888a3a339ae0726221b733c10a015dd4a2a0ec74dc4c593d02c1b00/opx-0.0.4.tar.gz"
}
],
"0.1.0": [
{
"comment_text": "",
"digests": {
"md5": "9a387b50c59ed34d03a1c9845c2defdf",
"sha256": "0ff4505e01a2918c99a4a7cfb3f8a61c293bc3cbebc14019b603c335a8b19f92"
},
"downloads": -1,
"filename": "opx-0.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "9a387b50c59ed34d03a1c9845c2defdf",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 17541,
"upload_time": "2018-03-15T19:00:11",
"url": "https://files.pythonhosted.org/packages/1c/13/9797b8cc4f39b4511e5a29c6eacef5896efb2be3ab1e2026cf13d8e366f0/opx-0.1.0-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "9863c5fe1ad7012ffb809557f87c407b",
"sha256": "baacedb5188f59d0bffd13f85e66df521c45de40c13d511f83d981747ea9b493"
},
"downloads": -1,
"filename": "opx-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "9863c5fe1ad7012ffb809557f87c407b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 13211,
"upload_time": "2018-03-15T19:00:13",
"url": "https://files.pythonhosted.org/packages/96/5e/35ea178ade2043a7421b3e1cb0bf129ad0ef2482a7f8adce768ed236a11c/opx-0.1.0.tar.gz"
}
],
"0.1.1": [
{
"comment_text": "",
"digests": {
"md5": "5eb564ce285306142781c74c903069a7",
"sha256": "88161507a232c25ae5d772d46a688844584a66d27bd818d2722c28cfbdc66fad"
},
"downloads": -1,
"filename": "opx-0.1.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "5eb564ce285306142781c74c903069a7",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 18096,
"upload_time": "2018-03-17T06:32:09",
"url": "https://files.pythonhosted.org/packages/c7/e5/731cd6fd61d7b71ed416fd77d15d33687a22da093c133e89c7350e6fd1a8/opx-0.1.1-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "9a23cc280cb8023fcff9ec6e967d9aae",
"sha256": "c58b39cfb2c6a203fe88acd98af8175c73479ee5beaa2ad302bf089c6a42a7fa"
},
"downloads": -1,
"filename": "opx-0.1.1.tar.gz",
"has_sig": false,
"md5_digest": "9a23cc280cb8023fcff9ec6e967d9aae",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 13656,
"upload_time": "2018-03-17T06:32:10",
"url": "https://files.pythonhosted.org/packages/2c/3c/f9881496ab43f18b484038f7fd16b3bb7e36d2118483d051dbda33e571cc/opx-0.1.1.tar.gz"
}
],
"1.0.0": [
{
"comment_text": "",
"digests": {
"md5": "8b318090fd823e8ec1f9425980746a43",
"sha256": "5b0bf2af3bc7c44620a0c886c6897d017fdcb6d6d34358959f6ec83a0a72931e"
},
"downloads": -1,
"filename": "opx-1.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "8b318090fd823e8ec1f9425980746a43",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 19211,
"upload_time": "2018-03-28T23:35:10",
"url": "https://files.pythonhosted.org/packages/eb/39/9225b960d4ce6062212ba658c2100499acdc4be0ad4c2da73006bbafb0f3/opx-1.0.0-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "19a9a838ac6f7edb7ba6c076798bfe3d",
"sha256": "1ece5fbc8585f3fbdf3f0505e913a315c1e0062deecee79c9758c2a9d10963e9"
},
"downloads": -1,
"filename": "opx-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "19a9a838ac6f7edb7ba6c076798bfe3d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 13756,
"upload_time": "2018-03-28T23:35:12",
"url": "https://files.pythonhosted.org/packages/ca/8d/0c67bc8b76960f6e607b18373c2035e862a948f7650e1623331a8db9421a/opx-1.0.0.tar.gz"
}
],
"1.0.1": [
{
"comment_text": "",
"digests": {
"md5": "f34498ea7667780a92963932e5ff840d",
"sha256": "7badaedd915762ce4dfe35b08a2b0e267e66c6f9f77dbc163b038e7099bb9a45"
},
"downloads": -1,
"filename": "opx-1.0.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "f34498ea7667780a92963932e5ff840d",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 17796,
"upload_time": "2018-03-29T22:26:05",
"url": "https://files.pythonhosted.org/packages/97/09/c3af838409c101388abf1720b6faa6faba131dd98ef5e735e9653ec87416/opx-1.0.1-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "c93c831b9e2f8fb07bc7e81aaaabf574",
"sha256": "28154a935683077e036491b5602d8e0151c4c013f1b4b0908417dcc9dcfce9c3"
},
"downloads": -1,
"filename": "opx-1.0.1.tar.gz",
"has_sig": false,
"md5_digest": "c93c831b9e2f8fb07bc7e81aaaabf574",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 13457,
"upload_time": "2018-03-29T22:26:07",
"url": "https://files.pythonhosted.org/packages/37/b1/7322d352fbd36e766b2ddfccc76abd6708fdee6612ca520a4e7b4220cdc7/opx-1.0.1.tar.gz"
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "f34498ea7667780a92963932e5ff840d",
"sha256": "7badaedd915762ce4dfe35b08a2b0e267e66c6f9f77dbc163b038e7099bb9a45"
},
"downloads": -1,
"filename": "opx-1.0.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "f34498ea7667780a92963932e5ff840d",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 17796,
"upload_time": "2018-03-29T22:26:05",
"url": "https://files.pythonhosted.org/packages/97/09/c3af838409c101388abf1720b6faa6faba131dd98ef5e735e9653ec87416/opx-1.0.1-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "c93c831b9e2f8fb07bc7e81aaaabf574",
"sha256": "28154a935683077e036491b5602d8e0151c4c013f1b4b0908417dcc9dcfce9c3"
},
"downloads": -1,
"filename": "opx-1.0.1.tar.gz",
"has_sig": false,
"md5_digest": "c93c831b9e2f8fb07bc7e81aaaabf574",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 13457,
"upload_time": "2018-03-29T22:26:07",
"url": "https://files.pythonhosted.org/packages/37/b1/7322d352fbd36e766b2ddfccc76abd6708fdee6612ca520a4e7b4220cdc7/opx-1.0.1.tar.gz"
}
]
}