Bolt Task Automation
====================
.. image:: https://github.com/abantos/bolt/actions/workflows/python-verify-library.yml/badge.svg
:target: https://github.com/abantos/bolt/actions/workflows/python-verify-library.yml
:alt: Verify Python Library
Bolt is a task runner inspired by `grunt <http://gruntjs.com/>`_ and written in
`python <http://www.python.org>`_ that helps you automate any task in your project
whether it is executed in your development environment or in your CI/CD pipeline.
Bolt gives you the power to specify how tasks should be executed, and it takes
care of the rest. And it is as simple as describing and configuring your tasks
in the ``boltfile.py``.
.. code-block:: python
# boltfile.py
import bolt
config = {
'pip': {
'command': 'install',
'options': {
'r': './requirements.txt'
}
},
'delete-pyc': {
'sourcedir': './src',
'recursive': True
},
'nose': {
'directory': './tests',
'options': {
'with-xunit': True,
'xunit-file': './logs/unit_test_log.xml'
}
}
}
bolt.register_task('run-tests', ['pip', 'delete-pyc', 'nose'])
.. code-block:: bash
# in your favorite shell
bolt pip
# to install requirements
bolt nose
# executes unit tests
bolt run-tests
# installs requirements, deletes .pyc files, and runs unit tests
Why Use Bolt?
-------------
Let's face it, you want to automate everything, but doing so becomes a burden;
especially, if you are working on a cross-platform application. You may find
your-self switching CI/CD systems and going through the pain of
rewriting your pipelines to the specific domain languages they use. Python
is cross-platform and any pipline will allow you to execute a command. This
makes Bolt ideal to create reusable tasks that can execute in any environment
indpendently of tools. And, It's fun!
How Can I Get Started?
----------------------
You can start by installing bolt and following the examples in the
`Getting Started <https://bolt-task-automation.readthedocs.io/en/latest/using/getting_started.html>`_
guide. Once you become familiar with Bolt, you can look at other topics in
`Using Bolt <https://bolt-task-automation.readthedocs.io/en/latest/using_bolt.html>`_\ ,
to learn about the different features it provides.
This is Great! I want to Help!
------------------------------
Help is highly appreciated! If you want to contribute to the project, make sure
to read our `guidelines <https://bolt-task-automation.readthedocs.io/en/latest/contribute.html>`_.
If you are a tool developer, and you want to provide Bolt support in your
library or application don't hesitate asking for help. We want to build a great
community around Bolt, and we will help you in any way we can.
Make sure you read the `bolt documentation <http://bolt-task-automation.readthedocs.io>`_.
Raw data
{
"_id": null,
"home_page": "https://github.com/abantos/bolt",
"name": "bolt-ta",
"maintainer": "",
"docs_url": "https://pythonhosted.org/bolt-ta/",
"requires_python": "",
"maintainer_email": "",
"keywords": "automation task tool development",
"author": "Isaac Rodriguez",
"author_email": "oss.abantos@outlook.com",
"download_url": "https://files.pythonhosted.org/packages/ac/5e/8c623f6d7ce2740529ddafe69b400c2889f137a9119d6d0a31ceda5efb0e/bolt-ta-0.3.5.tar.gz",
"platform": null,
"description": "\nBolt Task Automation\n====================\n\n\n.. image:: https://github.com/abantos/bolt/actions/workflows/python-verify-library.yml/badge.svg\n :target: https://github.com/abantos/bolt/actions/workflows/python-verify-library.yml\n :alt: Verify Python Library\n\n\nBolt is a task runner inspired by `grunt <http://gruntjs.com/>`_ and written in\n`python <http://www.python.org>`_ that helps you automate any task in your project\nwhether it is executed in your development environment or in your CI/CD pipeline.\nBolt gives you the power to specify how tasks should be executed, and it takes\ncare of the rest. And it is as simple as describing and configuring your tasks\nin the ``boltfile.py``.\n\n.. code-block:: python\n\n # boltfile.py\n\n import bolt\n\n config = {\n 'pip': {\n 'command': 'install',\n 'options': {\n 'r': './requirements.txt'\n }\n },\n 'delete-pyc': {\n 'sourcedir': './src',\n 'recursive': True\n },\n 'nose': {\n 'directory': './tests',\n 'options': {\n 'with-xunit': True,\n 'xunit-file': './logs/unit_test_log.xml'\n }\n }\n }\n\n bolt.register_task('run-tests', ['pip', 'delete-pyc', 'nose'])\n\n.. code-block:: bash\n\n # in your favorite shell\n\n bolt pip\n # to install requirements\n\n bolt nose\n # executes unit tests\n\n bolt run-tests\n # installs requirements, deletes .pyc files, and runs unit tests\n\nWhy Use Bolt?\n-------------\n\nLet's face it, you want to automate everything, but doing so becomes a burden;\nespecially, if you are working on a cross-platform application. You may find\nyour-self switching CI/CD systems and going through the pain of\nrewriting your pipelines to the specific domain languages they use. Python\nis cross-platform and any pipline will allow you to execute a command. This\nmakes Bolt ideal to create reusable tasks that can execute in any environment\nindpendently of tools. And, It's fun!\n\nHow Can I Get Started?\n----------------------\n\nYou can start by installing bolt and following the examples in the\n`Getting Started <https://bolt-task-automation.readthedocs.io/en/latest/using/getting_started.html>`_\nguide. Once you become familiar with Bolt, you can look at other topics in\n`Using Bolt <https://bolt-task-automation.readthedocs.io/en/latest/using_bolt.html>`_\\ ,\nto learn about the different features it provides.\n\nThis is Great! I want to Help!\n------------------------------\n\nHelp is highly appreciated! If you want to contribute to the project, make sure\nto read our `guidelines <https://bolt-task-automation.readthedocs.io/en/latest/contribute.html>`_.\nIf you are a tool developer, and you want to provide Bolt support in your\nlibrary or application don't hesitate asking for help. We want to build a great\ncommunity around Bolt, and we will help you in any way we can.\n\nMake sure you read the `bolt documentation <http://bolt-task-automation.readthedocs.io>`_.\n\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A task runner written in Python",
"version": "0.3.5",
"project_urls": {
"Homepage": "https://github.com/abantos/bolt"
},
"split_keywords": [
"automation",
"task",
"tool",
"development"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "060dce61b9fa981c74779e3ece13e4fdf5107d2ebd7d3d17569a48342bba0990",
"md5": "22c890c3e85b0410753ff4f0cc995ea1",
"sha256": "9d7de1b0260d351635ce5248e51bbdb58f040b26c2025aff2261954f1b9cddc2"
},
"downloads": -1,
"filename": "bolt_ta-0.3.5-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "22c890c3e85b0410753ff4f0cc995ea1",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 21940,
"upload_time": "2023-10-17T11:27:16",
"upload_time_iso_8601": "2023-10-17T11:27:16.150268Z",
"url": "https://files.pythonhosted.org/packages/06/0d/ce61b9fa981c74779e3ece13e4fdf5107d2ebd7d3d17569a48342bba0990/bolt_ta-0.3.5-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "ac5e8c623f6d7ce2740529ddafe69b400c2889f137a9119d6d0a31ceda5efb0e",
"md5": "1d65c91ef8c28aa4b239c1eecdc038f5",
"sha256": "ce178409ec28d39108195c8de54dc8715cc5ed068479fbd71b673336fa087ad0"
},
"downloads": -1,
"filename": "bolt-ta-0.3.5.tar.gz",
"has_sig": false,
"md5_digest": "1d65c91ef8c28aa4b239c1eecdc038f5",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 21164,
"upload_time": "2023-10-17T11:27:17",
"upload_time_iso_8601": "2023-10-17T11:27:17.909198Z",
"url": "https://files.pythonhosted.org/packages/ac/5e/8c623f6d7ce2740529ddafe69b400c2889f137a9119d6d0a31ceda5efb0e/bolt-ta-0.3.5.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-10-17 11:27:17",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "abantos",
"github_project": "bolt",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"lcname": "bolt-ta"
}