{ "info": { "author": "riag", "author_email": "riag@163.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: BSD License", "License :: Other/Proprietary License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "# pybee\n\n pybee \u63d0\u4f9b\u4e00\u4e9b\u8f85\u52a9\u51fd\u6570\uff0c\u65b9\u4fbf\u4f7f\u7528 Python \u6765\u5199\u7cfb\u7edf\u7ef4\u62a4/\u90e8\u7f72\u811a\u672c, \u4f7f\u7528 Bash \u5199\u7ef4\u62a4/\u90e8\u7f72\u811a\u672c\u5b9e\u5728\u4e0d\u723d\uff1b\u4f8b\u5982\u63d0\u4f9b sed\u3001awk \u5de5\u5177\u5bf9\u5e94\u7684\u529f\u80fd\u51fd\u6570\uff0c\u4f46 pybee \u76ee\u6807\u4e0d\u662f\u7f16\u5199\u4e00\u4e2a python \u7248\u7684 sed/awk \u5de5\u5177\n\n\n\n## \u7f16\u8bd1\n\n### \u5b89\u88c5\u4f9d\u8d56\u5de5\u5177\n\n* python 3.4+\n* poetry\n\n\u6267\u884c\u4e0b\u9762\u547d\u4ee4\u5b89\u88c5\u4f9d\u8d56\u5305\n\n```\npoetry install\n```\n\n### \u7f16\u8bd1\n\n```\npoetry build\n```\n\n### pybee \u6a21\u5757\n pybee \u6a21\u5757\u5c01\u88c5\u4e86\u6216\u8005\u589e\u52a0\u5e38\u89c1\u7cfb\u7edf\u7ef4\u62a4\u9700\u8981\u7684\u51fd\u6570\n\n* pybee.path \u589e\u5f3a os.path \u6a21\u5757\u7684\u4e00\u4e9b\u51fd\u6570\n* pybee.compress \u5c01\u88c5 zip/tar.gz \u538b\u7f29\u51fd\u6570\n* pybee.sed \u63d0\u4f9b sed \u5de5\u5177\u7c7b\u4f3c\u529f\u80fd\u7684\u51fd\u6570 \n* pybee.ask \u5c01\u88c5\u5728 termia \u5e38\u89c1\u4ea4\u4e92\u64cd\u4f5c\u7684\u51fd\u6570\n* pybee.importutil \u63d0\u4f9b\u628a\u4e00\u4e2a py \u6587\u4ef6\u5f53\u4f5c\u6a21\u5757 import \u7684\u51fd\u6570\n\n\u8fd8\u6709\u5176\u4ed6\u6a21\u5757\uff0c\u8fd9\u91cc\u5c31\u4e0d\u4e00\u4e00\u5217\u51fa\n\n### pybee.action \u6a21\u5757\n \u5728 pybee \u6a21\u5757\u7684\u57fa\u7840\u4e0a\u628a\u5e38\u89c1\u7684\u64cd\u4f5c\u5c01\u88c5\u6210 action\uff0c\u4e0b\u9762\u5c31\u662f\u4e00\u4e2a\u5217\u5b50\n\n ```\nimport pybee\n\nac = pybee.action.ActionContext([\n ('SCRIPT_DIR', pybee.path.get_script_path(__file__)),\n ('DIST_DIR', '$CURRENT_DIR/dist'),\n ('OUT_PUT_DIR', '$DIST_DIR/test-demo-portable'),\n])\n\nac.prepare_dir(\n [\n '$DIST_DIR', '$OUT_PUT_DIR',\n '$OUT_PUT_DIR/portable',\n ]\n)\n\nac.check_bin([\n ('gradle','please install gradle', 'GRADLE_BIN'),\n])\n\nac.exec_cmd(\n [\n '$GRADLE_BIN', 'packDist', '-x', 'test'\n ]\n)\n\nac.unzip(\n '$DIST_DIR/test-demo/test-demo.jar',\n '$OUT_PUT_DIR'\n)\n\n\ndef ignore_config_files(src, names):\n return ['project.groovy', ]\n\nac.copy(\n [\n ('$CURRENT_DIR/config', '$OUT_PUT_DIR', {\n 'ignore': ignore_config_files\n }),\n ('$CURRENT_DIR/public', '$OUT_PUT_DIR'),\n ]\n)\n\nac.copy(\n [\n ('run.ps1', '$OUT_PUT_DIR'),\n ('run.sh', '$OUT_PUT_DIR'),\n ('portable.groovy', '$OUT_PUT_DIR/config'),\n ],\n work_dir='$SCRIPT_DIR/portable'\n)\n\nac.zip(\n '$OUT_PUT_DIR',\n '$DIST_DIR/test-demo-portable-{datetime}.zip',\n env_name='DIST_FILE'\n)\n\n\ndef print_success(context):\n print('')\n zip_file = context.get_env('DIST_FILE')\n print('pack successfully, dist file is %s' % zip_file)\n\n\nac.execute(succ_func=print_success)\n ```", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "", "keywords": "", "license": "BSD-4-Clause", "maintainer": "riag", "maintainer_email": "riag@163.com", "name": "pybee", "package_url": "https://pypi.org/project/pybee/", "platform": "", "project_url": "https://pypi.org/project/pybee/", "project_urls": null, "release_url": "https://pypi.org/project/pybee/0.3.2/", "requires_dist": [ "PyFunctional (>=1.2,<2.0)", "hfilesize (>=0.1.0,<0.2.0)", "tqdm (>=4.31,<5.0)", "jinja2 (>=2.10,<3.0)", "click (>=7.0,<8.0)", "psutil (>=5.6,<6.0)" ], "requires_python": ">=3.6,<4.0", "summary": "Provides some useful functions to write maintainer scripts or deployment scripts", "version": "0.3.2" }, "last_serial": 5343347, "releases": { "0.3.2": [ { "comment_text": "", "digests": { "md5": "c45738c2ece5fce0f586df6e6d453b6a", "sha256": "a9385e3c131952ab6b925ad434ae26cefa1aeee230d7e980d116f1ce96ddf0cc" }, "downloads": -1, "filename": "pybee-0.3.2-py3-none-any.whl", "has_sig": false, "md5_digest": "c45738c2ece5fce0f586df6e6d453b6a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 23697, "upload_time": "2019-05-31T15:33:09", "url": "https://files.pythonhosted.org/packages/bc/65/04a1e5efc75a94cc102d28ef07887915c79a281baa64b73ad6e812beda2c/pybee-0.3.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ed60726b7aeeb9ee5b03ace06230d899", "sha256": "6858783e709266dca9cf0071b14a480e662ec8fda11e3b68d5fb4cf176067669" }, "downloads": -1, "filename": "pybee-0.3.2.tar.gz", "has_sig": false, "md5_digest": "ed60726b7aeeb9ee5b03ace06230d899", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 19214, "upload_time": "2019-05-31T15:33:12", "url": "https://files.pythonhosted.org/packages/15/7c/540c186dda457e5fa6e89185774f4884817629efd832aea7d2101bbf0f04/pybee-0.3.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "c45738c2ece5fce0f586df6e6d453b6a", "sha256": "a9385e3c131952ab6b925ad434ae26cefa1aeee230d7e980d116f1ce96ddf0cc" }, "downloads": -1, "filename": "pybee-0.3.2-py3-none-any.whl", "has_sig": false, "md5_digest": "c45738c2ece5fce0f586df6e6d453b6a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 23697, "upload_time": "2019-05-31T15:33:09", "url": "https://files.pythonhosted.org/packages/bc/65/04a1e5efc75a94cc102d28ef07887915c79a281baa64b73ad6e812beda2c/pybee-0.3.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ed60726b7aeeb9ee5b03ace06230d899", "sha256": "6858783e709266dca9cf0071b14a480e662ec8fda11e3b68d5fb4cf176067669" }, "downloads": -1, "filename": "pybee-0.3.2.tar.gz", "has_sig": false, "md5_digest": "ed60726b7aeeb9ee5b03ace06230d899", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 19214, "upload_time": "2019-05-31T15:33:12", "url": "https://files.pythonhosted.org/packages/15/7c/540c186dda457e5fa6e89185774f4884817629efd832aea7d2101bbf0f04/pybee-0.3.2.tar.gz" } ] }