{ "info": { "author": "StackStorm", "author_email": "info@stackstorm.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Information Technology", "Intended Audience :: System Administrators", "License :: OSI Approved :: Apache Software License", "Operating System :: POSIX :: Linux", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7" ], "description": "StackStorm SDK\n==============\n\n|Build Status| |Join our community Slack|\n\nThis repository contains different utilities and tools which help with\nthe StackStorm integration pack development.\n\nInstallation\n------------\n\nFrom PyPi (latest stable version):\n\n.. code:: bash\n\n pip install st2sdk\n\nFrom git (latest in development version):\n\n.. code:: bash\n\n pip install -e git+https://github.com/StackStorm/st2sdk.git@master#egg=st2sdk\n\nTools\n-----\n\nPack Bootstrap / Scaffolding tool\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nPack bootstrap tool makes it easier to get started with the StackStorm\npack development.\n\nCurrently, the tool creates the correct pack directory structure.\n\nUsage\n^^^^^\n\nRun tool in the non-interactive mode:\n\n.. code:: bash\n\n st2sdk bootstrap \n\nThis will create a pack directory named ```` in the current\nworking directory. This directory will contain all the directories and\nfiles which are needed by pack.\n\nRun tool in the interactive mode:\n\n.. code:: bash\n\n st2sdk bootstrap -i [pack name]\n\nIn the interactive mode, the tool will ask you a couple of questions and\nthe answers will be used to populate pack metadata and other files.\n\nCheck and Lint scripts\n~~~~~~~~~~~~~~~~~~~~~~\n\nThis repository also contains various \u201ccheck\u201d and \u201clint\u201d scripts which\ncan be ran standalone or hooked up to your continuous integration\nsystem. Those scripts validate metadata file syntax, verify that pack\ncontains pack.yaml file, etc.\n\nSome of those scripts require access to the database and network\n(e.g. PyPi to download pack dependencies, etc.) and they also manipulate\nthe file system. You should make sure that you provide a clean\nenvironment on every invocation of those scripts. This can be achieved\nby using a fresh VM, docker container or similar for each run.\n\nAll of those scripts are also hooked up to our Travis CI system and run\non every push to our st2contrib repository.\n\nFor some examples on how to utilize this scripts, please refer to the\nMakefile in st2contrib repository -\nhttps://github.com/StackStorm/st2contrib/blob/master/Makefile\n\nAs you may notice in the Makefile, we have some scripts and\noptimizations in place, so by default for Pull Request we only run\nscripts on changed files and / or pack. This is an important\noptimization because if we ran scripts for all the files and packs (even\nthe ones which haven\u2019t been touched) this would substantially slow down\nthe CI run time for a particular Pull Request and delay the time it\ntakes for user to get feedback about their PR.\n\nIn case you have a lot of custom packs in your repository, you might\nwant to utilize similar approach.\n\nst2-check-validate-yaml-file\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\nThis script verifies that a provided YAML file contains a valid syntax.\nIt\u2019s usually used with action metadata files and other YAML files.\n\nUsage:\n\n.. code:: bash\n\n st2-check-validate-yaml-file \n\nKeep in mind that this script just performs syntax and no semantic\nchecks. If you want to confirm that your action or other metadata file\nis correct, you should also run ``st2-check-register-pack-resources``\nscript which tries to register all the resources in a pack and errors\nout of registration\n\nst2-check-validate-json-file\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\nThis script verified that a provided JSON file contains a valid syntax. It's\nusually used with action metadata files and other YAML files.\n\nUsage:\n\n.. code:: bash\n\n st2-check-validate-json-file \n\nKeep in mind that this script just performs syntax and no semantic checks. If\nyou want to confirm that your action or other metadata file is correct, you\nshould also run ``st2-check-register-pack-resources`` script which tries to register\nall the resources in a pack and errors out of registration of a particular\nresource fails.\n\nst2-check-validate-pack-metadata-exists\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nThis script verifies that a pack contains ``pack.yaml`` metadata file.\n\nUsage:\n\n.. code:: bash\n\n st2-check-validate-pack-metadata-exists \n\nst2-check-register-pack-resources\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\nThis script tries to register all the resources in a particular pack and fails\nif registering a particular resource fails.\n\nUsage:\n\n.. code:: bash\n\n st2-check-register-pack-resources \n\nThis script requires access to a fresh database (MongoDB) on each run. In\naddition to that, it requires all the StackStorm components (st2actions,\nst2common, etc.) to be in ``PYTHONPATH``. You can achieve that by cloning st2\nrepository in a particular directly (e.g. ``/tmp/st2``) and then setting\n``ST2_REPO_PATH`` environment variable to point to that directory when invoking\nthe script.\n\nst2-check-pylint-pack\n^^^^^^^^^^^^^^^^^^^^^\n\nThis script runs ``pylint`` on all the Python files inside a particular pack.\n\nUsage:\n\n.. code:: bash\n\n st2-check-pylint-pack \n\nThis script installs packs regular and test requirements so it needs to run\ninside a virtual environment which is created for purpose of this script.\n\nSimilar to ``st2-check-register-pack-resources`` this script also requires\naccess to StackStorm code-base and st2 components. You can achieve that by\ncloning st2 repository in a particular directly (e.g. ``/tmp/st2``) and then\nsetting ``ST2_REPO_PATH`` environment variable to point to that directory when\ninvoking the script.\n\nst2-check-print-pack-tests-coverage\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\nThis script prints a test coverage for a particular pack. It prints all the\nactions which contains tests and the ones which are missing it.\n\nKeep in mind that this script is for informational purposes only - right now\nit doesn't fail if some action is missing tests.\n\nUsage:\n\n.. code:: bash\n\n st2-check-print-pack-tests-coverage \n\nCopyright, License, and Contributors Agreement\n----------------------------------------------\n\nCopyright 2019 StackStorm, Inc.\n\nLicensed under the Apache License, Version 2.0 (the \u201cLicense\u201d); you may\nnot use this work except in compliance with the License. You may obtain\na copy of the License in the `LICENSE`_ file, or at:\n\nhttp://www.apache.org/licenses/LICENSE-2.0\n\nBy contributing you agree that these contributions are your own (or\napproved by your employer) and you grant a full, complete, irrevocable\ncopyright license to all users and developers of the project, present\nand future, pursuant to the license of the project.\n\n.. |Build Status| image:: https://circleci.com/gh/StackStorm/st2sdk/tree/master.svg?style=shield\n :target: https://circleci.com/gh/StackStorm/st2sdk\n.. |Join our community Slack| image:: https://stackstorm-community.herokuapp.com/badge.svg\n :target: https://stackstorm.com/community-signup\n.. _LICENSE: LICENSE\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://www.stackstorm.com", "keywords": "", "license": "Apache License (2.0)", "maintainer": "", "maintainer_email": "", "name": "st2sdk", "package_url": "https://pypi.org/project/st2sdk/", "platform": "", "project_url": "https://pypi.org/project/st2sdk/", "project_urls": { "Homepage": "http://www.stackstorm.com" }, "release_url": "https://pypi.org/project/st2sdk/0.5.1/", "requires_dist": [ "six (==1.12.0)", "jinja2 (==2.10.1)", "cmd2 (<0.10,>=0.9.i5)" ], "requires_python": "", "summary": "Various tools and utilities which aid with StackStorm pack development.", "version": "0.5.1" }, "last_serial": 5646702, "releases": { "0.2.0": [ { "comment_text": "", "digests": { "md5": "220990b3d152673d0281d0b7c0d339a0", "sha256": "40d7605f0d001e054d67631b36a6fa721b156455692814e73c907c6045653d93" }, "downloads": -1, "filename": "st2sdk-0.2.0.tar.gz", "has_sig": false, "md5_digest": "220990b3d152673d0281d0b7c0d339a0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15044, "upload_time": "2016-06-10T08:33:29", "url": "https://files.pythonhosted.org/packages/9f/82/3dd9bd7ce48e405d1ac78d0098a4fec52f00672a10d5e3505251a7ad7b4f/st2sdk-0.2.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "6476032843607a136962cf16e2ea66f4", "sha256": "fee1087c4aa48d0a2b97f086e676e714cd7b0426211d0eb022c9906a2ca15d38" }, "downloads": -1, "filename": "st2sdk-0.3.1.tar.gz", "has_sig": false, "md5_digest": "6476032843607a136962cf16e2ea66f4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16014, "upload_time": "2018-06-11T10:19:24", "url": "https://files.pythonhosted.org/packages/b7/15/ccf97630609ac0f172fe0e10e83a4b15c03b60acbfc08b70d0ee41065f56/st2sdk-0.3.1.tar.gz" } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "8fd319e123cc73159a7c2f94f0e32cc3", "sha256": "5bbcef42a47e8ace4dfc36e8d4fd5f2b64d5ee27a46ce4a9fe18a2abf0a8be43" }, "downloads": -1, "filename": "st2sdk-0.3.3.tar.gz", "has_sig": false, "md5_digest": "8fd319e123cc73159a7c2f94f0e32cc3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16064, "upload_time": "2018-12-14T10:26:37", "url": "https://files.pythonhosted.org/packages/11/0c/c8865067b54192b37602fb1c28556b6b4d02056ae965f9ab5924dc9037f3/st2sdk-0.3.3.tar.gz" } ], "0.3.4": [ { "comment_text": "", "digests": { "md5": "6da2f61cfaeab9910c51df11cac9d744", "sha256": "a478c5fd35b07470192be74c11e3aacb1859eb632a9995cdfbeb99b0b79d3fae" }, "downloads": -1, "filename": "st2sdk-0.3.4.tar.gz", "has_sig": false, "md5_digest": "6da2f61cfaeab9910c51df11cac9d744", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16074, "upload_time": "2019-01-08T10:23:08", "url": "https://files.pythonhosted.org/packages/ee/61/6a47fca925d0a06c9b6daa05665bc786ecd218b0dfb6d6dad9a53165c946/st2sdk-0.3.4.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "7e11b6194f4a87a9c09ffd7858840cd9", "sha256": "96a9e441b2bffe58f983ee883c47ab467059f0b010aa2f8c36c32291fa16afc1" }, "downloads": -1, "filename": "st2sdk-0.4.0.tar.gz", "has_sig": false, "md5_digest": "7e11b6194f4a87a9c09ffd7858840cd9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16184, "upload_time": "2019-01-10T20:52:30", "url": "https://files.pythonhosted.org/packages/4a/9c/4120fa93e25b23af8a1d201ffe1bdd355707e50d82f93d4b343803fdc745/st2sdk-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "caddae23122c5ffe72a6c11ee3409c94", "sha256": "c225e6bb982f69fb343499794a6027fd18cb7d088038596cd7bf658af96f1e17" }, "downloads": -1, "filename": "st2sdk-0.4.1.tar.gz", "has_sig": false, "md5_digest": "caddae23122c5ffe72a6c11ee3409c94", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16258, "upload_time": "2019-05-07T10:03:10", "url": "https://files.pythonhosted.org/packages/68/3f/0e35f9c572a751d4c316ad4b093aa43c68c7b11c9b956854f2da8b2c3f3a/st2sdk-0.4.1.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "07a0247f2b5a64e7ae00f84ef985c22c", "sha256": "6a69e81680d3f5028ad8643c6c279bbfd254093f6b2af724144c13f46621394c" }, "downloads": -1, "filename": "st2sdk-0.5.0-py2-none-any.whl", "has_sig": false, "md5_digest": "07a0247f2b5a64e7ae00f84ef985c22c", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 23223, "upload_time": "2019-07-28T09:47:36", "url": "https://files.pythonhosted.org/packages/0d/a3/337dab8aeedf9b4b90ca6b0301e48a520e6908c8fef71ed8a8d0f9fc127d/st2sdk-0.5.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a63143262665141edc0b438c6688a62a", "sha256": "922b59882465b1ac041ea5cd177b68601a91d5a908ee5211404dcbed680c832e" }, "downloads": -1, "filename": "st2sdk-0.5.0.tar.gz", "has_sig": false, "md5_digest": "a63143262665141edc0b438c6688a62a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16402, "upload_time": "2019-07-28T09:47:38", "url": "https://files.pythonhosted.org/packages/2d/25/0fdf2e14bb2b8659b04b5f4682e89578d2066542a502dc7a4f4d5ef89506/st2sdk-0.5.0.tar.gz" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "90667563ac7e63dd23fc8ad223001fbe", "sha256": "537049d245e7d07773804156ffa1be15d711f6896da8030db2e81b4cb3efc12b" }, "downloads": -1, "filename": "st2sdk-0.5.1-py3-none-any.whl", "has_sig": false, "md5_digest": "90667563ac7e63dd23fc8ad223001fbe", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 23223, "upload_time": "2019-08-07T19:43:25", "url": "https://files.pythonhosted.org/packages/0d/94/0d2991aec32cd14599fd426d03b8cb8731d756650ae6e534f227a109015f/st2sdk-0.5.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "462f35e362d3690176a9b1d7f61b7c73", "sha256": "75613642f6c504e1b3e5632a9ee46cb45d9759cac44dc19dcd56d60fc5bb0dc7" }, "downloads": -1, "filename": "st2sdk-0.5.1.tar.gz", "has_sig": false, "md5_digest": "462f35e362d3690176a9b1d7f61b7c73", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17392, "upload_time": "2019-08-07T19:43:26", "url": "https://files.pythonhosted.org/packages/5e/e9/13e6639e302d685c4807fb574c6f65bed045131076e00a049dd5cfff1c63/st2sdk-0.5.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "90667563ac7e63dd23fc8ad223001fbe", "sha256": "537049d245e7d07773804156ffa1be15d711f6896da8030db2e81b4cb3efc12b" }, "downloads": -1, "filename": "st2sdk-0.5.1-py3-none-any.whl", "has_sig": false, "md5_digest": "90667563ac7e63dd23fc8ad223001fbe", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 23223, "upload_time": "2019-08-07T19:43:25", "url": "https://files.pythonhosted.org/packages/0d/94/0d2991aec32cd14599fd426d03b8cb8731d756650ae6e534f227a109015f/st2sdk-0.5.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "462f35e362d3690176a9b1d7f61b7c73", "sha256": "75613642f6c504e1b3e5632a9ee46cb45d9759cac44dc19dcd56d60fc5bb0dc7" }, "downloads": -1, "filename": "st2sdk-0.5.1.tar.gz", "has_sig": false, "md5_digest": "462f35e362d3690176a9b1d7f61b7c73", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17392, "upload_time": "2019-08-07T19:43:26", "url": "https://files.pythonhosted.org/packages/5e/e9/13e6639e302d685c4807fb574c6f65bed045131076e00a049dd5cfff1c63/st2sdk-0.5.1.tar.gz" } ] }