lunchbox


Namelunchbox JSON
Version 0.3.3 PyPI version JSON
download
home_page
SummaryA library of various tools for common python tasks
upload_time2023-01-29 20:08:30
maintainer
docs_urlNone
author
requires_python>=3.7
licenseMIT
keywords tool tools general slack enforce
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <p>
    <a href="https://www.linkedin.com/in/alexandergbraun" rel="nofollow noreferrer">
        <img src="https://www.gomezaparicio.com/wp-content/uploads/2012/03/linkedin-logo-1-150x150.png"
             alt="linkedin" width="30px" height="30px"
        >
    </a>
    <a href="https://github.com/theNewFlesh" rel="nofollow noreferrer">
        <img src="https://tadeuzagallo.com/GithubPulse/assets/img/app-icon-github.png"
             alt="github" width="30px" height="30px"
        >
    </a>
    <a href="https://pypi.org/user/the-new-flesh" rel="nofollow noreferrer">
        <img src="https://cdn.iconscout.com/icon/free/png-256/python-2-226051.png"
             alt="pypi" width="30px" height="30px"
        >
    </a>
    <a href="http://vimeo.com/user3965452" rel="nofollow noreferrer">
        <img src="https://cdn1.iconfinder.com/data/icons/somacro___dpi_social_media_icons_by_vervex-dfjq/500/vimeo.png"
             alt="vimeo" width="30px" height="30px"
        >
    </a>
    <a href="http://www.alexgbraun.com" rel="nofollow noreferrer">
        <img src="https://i.ibb.co/fvyMkpM/logo.png"
             alt="alexgbraun" width="30px" height="30px"
        >
    </a>
</p>


# Introduction
Lunchbox is a library of various tools for common python tasks.

See [documentation](https://theNewFlesh.github.io/lunchbox/) for details.

# Installation
### Python
`pip install lunchbox`

### Docker
1. Install [docker-desktop](https://docs.docker.com/desktop/)
2. `docker pull thenewflesh/lunchbox:latest`

### Docker For Developers
1. Install [docker-desktop](https://docs.docker.com/desktop/)
2. Ensure docker-desktop has at least 4 GB of memory allocated to it.
4. `git clone git@github.com:theNewFlesh/lunchbox.git`
5. `cd lunchbox`
6. `chmod +x bin/lunchbox`
7. `bin/lunchbox start`

The service should take a few minutes to start up.

Run `bin/lunchbox --help` for more help on the command line tool.

# Production CLI

Lunchbox comes with a command line interface defined in command.py.

Its usage pattern is: `lunchbox COMMAND [ARGS] [-h --help]`

### Commands
| Command         | Description                                                              | Args                  |
| --------------- | -------------------------------------------------------------------------| --------------------- |
| slack           | Posts a slack message to a given channel                                 | url, channel, message |
| bash-completion | Prints BASH completion code to be written to a _lunchbox completion file |                       |
| zsh-completion  | Prints ZSH completion code to be written to a _lunchbox completion file  |                       |

# Development CLI
bin/lunchbox is a command line interface (defined in cli.py) that works with
any version of python 2.7 and above, as it has no dependencies.

Its usage pattern is: `bin/lunchbox COMMAND [-a --args]=ARGS [-h --help] [--dryrun]`

### Commands

| Command              | Description                                                         |
| -------------------- | ------------------------------------------------------------------- |
| build-package        | Build production version of repo for publishing                     |
| build-prod           | Publish pip package of repo to PyPi                                 |
| build-publish        | Run production tests first then publish pip package of repo to PyPi |
| build-test           | Build test version of repo for prod testing                         |
| docker-build         | Build image of lunchbox                                             |
| docker-build-prod    | Build production image of lunchbox                                  |
| docker-container     | Display the Docker container id of lunchbox                         |
| docker-coverage      | Generate coverage report for lunchbox                               |
| docker-destroy       | Shutdown lunchbox container and destroy its image                   |
| docker-destroy-prod  | Shutdown lunchbox production container and destroy its image        |
| docker-image         | Display the Docker image id of lunchbox                             |
| docker-prod          | Start lunchbox production container                                 |
| docker-push          | Push lunchbox production image to Dockerhub                         |
| docker-remove        | Remove lunchbox Docker image                                        |
| docker-restart       | Restart lunchbox container                                          |
| docker-start         | Start lunchbox container                                            |
| docker-stop          | Stop lunchbox container                                             |
| docs                 | Generate sphinx documentation                                       |
| docs-architecture    | Generate architecture.svg diagram from all import statements        |
| docs-full            | Generate documentation, coverage report, diagram and code           |
| docs-metrics         | Generate code metrics report, plots and tables                      |
| library-add          | Add a given package to a given dependency group                     |
| library-graph-dev    | Graph dependencies in dev environment                               |
| library-graph-prod   | Graph dependencies in prod environment                              |
| library-install-dev  | Install all dependencies into dev environment                       |
| library-install-prod | Install all dependencies into prod environment                      |
| library-list-dev     | List packages in dev environment                                    |
| library-list-prod    | List packages in prod environment                                   |
| library-lock-dev     | Resolve dev.lock file                                               |
| library-lock-prod    | Resolve prod.lock file                                              |
| library-remove       | Remove a given package from a given dependency group                |
| library-search       | Search for pip packages                                             |
| library-sync-dev     | Sync dev environment with packages listed in dev.lock               |
| library-sync-prod    | Sync prod environment with packages listed in prod.lock             |
| library-update       | Update dev dependencies                                             |
| session-lab          | Run jupyter lab server                                              |
| session-python       | Run python session with dev dependencies                            |
| state                | State of lunchbox                                                   |
| test-coverage        | Generate test coverage report                                       |
| test-dev             | Run all tests                                                       |
| test-fast            | Test all code excepts tests marked with SKIP_SLOWS_TESTS decorator  |
| test-lint            | Run linting and type checking                                       |
| test-prod            | Run tests across all support python versions                        |
| version              | Full resolution of repo: dependencies, linting, tests, docs, etc    |
| version-bump-major   | Bump pyproject major version                                        |
| version-bump-minor   | Bump pyproject minor version                                        |
| version-bump-patch   | Bump pyproject patch version                                        |
| zsh                  | Run ZSH session inside lunchbox container                           |
| zsh-complete         | Generate oh-my-zsh completions                                      |
| zsh-root             | Run ZSH session as root inside lunchbox container                   |

### Flags

| Short | Long      | Description                                          |
| ----- | --------- | ---------------------------------------------------- |
| -a    | --args    | Additional arguments, this can generally be ignored  |
| -h    | --help    | Prints command help message to stdout                |
|       | --dryrun  | Prints command that would otherwise be run to stdout |


            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "lunchbox",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": "",
    "keywords": "tool,tools,general,slack,enforce",
    "author": "",
    "author_email": "Alex Braun <alexander.g.braun@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/e3/b5/16b9b6df2e151615465c023119db58ba73bef5718498f3233b70c419af8c/lunchbox-0.3.3.tar.gz",
    "platform": null,
    "description": "<p>\n    <a href=\"https://www.linkedin.com/in/alexandergbraun\" rel=\"nofollow noreferrer\">\n        <img src=\"https://www.gomezaparicio.com/wp-content/uploads/2012/03/linkedin-logo-1-150x150.png\"\n             alt=\"linkedin\" width=\"30px\" height=\"30px\"\n        >\n    </a>\n    <a href=\"https://github.com/theNewFlesh\" rel=\"nofollow noreferrer\">\n        <img src=\"https://tadeuzagallo.com/GithubPulse/assets/img/app-icon-github.png\"\n             alt=\"github\" width=\"30px\" height=\"30px\"\n        >\n    </a>\n    <a href=\"https://pypi.org/user/the-new-flesh\" rel=\"nofollow noreferrer\">\n        <img src=\"https://cdn.iconscout.com/icon/free/png-256/python-2-226051.png\"\n             alt=\"pypi\" width=\"30px\" height=\"30px\"\n        >\n    </a>\n    <a href=\"http://vimeo.com/user3965452\" rel=\"nofollow noreferrer\">\n        <img src=\"https://cdn1.iconfinder.com/data/icons/somacro___dpi_social_media_icons_by_vervex-dfjq/500/vimeo.png\"\n             alt=\"vimeo\" width=\"30px\" height=\"30px\"\n        >\n    </a>\n    <a href=\"http://www.alexgbraun.com\" rel=\"nofollow noreferrer\">\n        <img src=\"https://i.ibb.co/fvyMkpM/logo.png\"\n             alt=\"alexgbraun\" width=\"30px\" height=\"30px\"\n        >\n    </a>\n</p>\n\n\n# Introduction\nLunchbox is a library of various tools for common python tasks.\n\nSee [documentation](https://theNewFlesh.github.io/lunchbox/) for details.\n\n# Installation\n### Python\n`pip install lunchbox`\n\n### Docker\n1. Install [docker-desktop](https://docs.docker.com/desktop/)\n2. `docker pull thenewflesh/lunchbox:latest`\n\n### Docker For Developers\n1. Install [docker-desktop](https://docs.docker.com/desktop/)\n2. Ensure docker-desktop has at least 4 GB of memory allocated to it.\n4. `git clone git@github.com:theNewFlesh/lunchbox.git`\n5. `cd lunchbox`\n6. `chmod +x bin/lunchbox`\n7. `bin/lunchbox start`\n\nThe service should take a few minutes to start up.\n\nRun `bin/lunchbox --help` for more help on the command line tool.\n\n# Production CLI\n\nLunchbox comes with a command line interface defined in command.py.\n\nIts usage pattern is: `lunchbox COMMAND [ARGS] [-h --help]`\n\n### Commands\n| Command         | Description                                                              | Args                  |\n| --------------- | -------------------------------------------------------------------------| --------------------- |\n| slack           | Posts a slack message to a given channel                                 | url, channel, message |\n| bash-completion | Prints BASH completion code to be written to a _lunchbox completion file |                       |\n| zsh-completion  | Prints ZSH completion code to be written to a _lunchbox completion file  |                       |\n\n# Development CLI\nbin/lunchbox is a command line interface (defined in cli.py) that works with\nany version of python 2.7 and above, as it has no dependencies.\n\nIts usage pattern is: `bin/lunchbox COMMAND [-a --args]=ARGS [-h --help] [--dryrun]`\n\n### Commands\n\n| Command              | Description                                                         |\n| -------------------- | ------------------------------------------------------------------- |\n| build-package        | Build production version of repo for publishing                     |\n| build-prod           | Publish pip package of repo to PyPi                                 |\n| build-publish        | Run production tests first then publish pip package of repo to PyPi |\n| build-test           | Build test version of repo for prod testing                         |\n| docker-build         | Build image of lunchbox                                             |\n| docker-build-prod    | Build production image of lunchbox                                  |\n| docker-container     | Display the Docker container id of lunchbox                         |\n| docker-coverage      | Generate coverage report for lunchbox                               |\n| docker-destroy       | Shutdown lunchbox container and destroy its image                   |\n| docker-destroy-prod  | Shutdown lunchbox production container and destroy its image        |\n| docker-image         | Display the Docker image id of lunchbox                             |\n| docker-prod          | Start lunchbox production container                                 |\n| docker-push          | Push lunchbox production image to Dockerhub                         |\n| docker-remove        | Remove lunchbox Docker image                                        |\n| docker-restart       | Restart lunchbox container                                          |\n| docker-start         | Start lunchbox container                                            |\n| docker-stop          | Stop lunchbox container                                             |\n| docs                 | Generate sphinx documentation                                       |\n| docs-architecture    | Generate architecture.svg diagram from all import statements        |\n| docs-full            | Generate documentation, coverage report, diagram and code           |\n| docs-metrics         | Generate code metrics report, plots and tables                      |\n| library-add          | Add a given package to a given dependency group                     |\n| library-graph-dev    | Graph dependencies in dev environment                               |\n| library-graph-prod   | Graph dependencies in prod environment                              |\n| library-install-dev  | Install all dependencies into dev environment                       |\n| library-install-prod | Install all dependencies into prod environment                      |\n| library-list-dev     | List packages in dev environment                                    |\n| library-list-prod    | List packages in prod environment                                   |\n| library-lock-dev     | Resolve dev.lock file                                               |\n| library-lock-prod    | Resolve prod.lock file                                              |\n| library-remove       | Remove a given package from a given dependency group                |\n| library-search       | Search for pip packages                                             |\n| library-sync-dev     | Sync dev environment with packages listed in dev.lock               |\n| library-sync-prod    | Sync prod environment with packages listed in prod.lock             |\n| library-update       | Update dev dependencies                                             |\n| session-lab          | Run jupyter lab server                                              |\n| session-python       | Run python session with dev dependencies                            |\n| state                | State of lunchbox                                                   |\n| test-coverage        | Generate test coverage report                                       |\n| test-dev             | Run all tests                                                       |\n| test-fast            | Test all code excepts tests marked with SKIP_SLOWS_TESTS decorator  |\n| test-lint            | Run linting and type checking                                       |\n| test-prod            | Run tests across all support python versions                        |\n| version              | Full resolution of repo: dependencies, linting, tests, docs, etc    |\n| version-bump-major   | Bump pyproject major version                                        |\n| version-bump-minor   | Bump pyproject minor version                                        |\n| version-bump-patch   | Bump pyproject patch version                                        |\n| zsh                  | Run ZSH session inside lunchbox container                           |\n| zsh-complete         | Generate oh-my-zsh completions                                      |\n| zsh-root             | Run ZSH session as root inside lunchbox container                   |\n\n### Flags\n\n| Short | Long      | Description                                          |\n| ----- | --------- | ---------------------------------------------------- |\n| -a    | --args    | Additional arguments, this can generally be ignored  |\n| -h    | --help    | Prints command help message to stdout                |\n|       | --dryrun  | Prints command that would otherwise be run to stdout |\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A library of various tools for common python tasks",
    "version": "0.3.3",
    "split_keywords": [
        "tool",
        "tools",
        "general",
        "slack",
        "enforce"
    ],
    "urls": [
        {
            "comment_text": "Added callbacks to LogRuntime",
            "digests": {
                "blake2b_256": "a7ffe32858d94894568fe37c2e74e180d5763909302dd69bc58b9e026d8a9490",
                "md5": "5a718db2324581d18d5692d0d898d674",
                "sha256": "c0da522c8273c672f0f72de2b147571996469a57fc6913ba8a9a714344f11ce4"
            },
            "downloads": -1,
            "filename": "lunchbox-0.3.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "5a718db2324581d18d5692d0d898d674",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 16284,
            "upload_time": "2023-01-29T20:08:28",
            "upload_time_iso_8601": "2023-01-29T20:08:28.118093Z",
            "url": "https://files.pythonhosted.org/packages/a7/ff/e32858d94894568fe37c2e74e180d5763909302dd69bc58b9e026d8a9490/lunchbox-0.3.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "Added callbacks to LogRuntime",
            "digests": {
                "blake2b_256": "e3b516b9b6df2e151615465c023119db58ba73bef5718498f3233b70c419af8c",
                "md5": "73d2349035ac05cda29c44581509c203",
                "sha256": "cca072c2f68ba1724f5bd7648ff22aa286050a86e933d41bcb46690f672959a4"
            },
            "downloads": -1,
            "filename": "lunchbox-0.3.3.tar.gz",
            "has_sig": false,
            "md5_digest": "73d2349035ac05cda29c44581509c203",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 16284,
            "upload_time": "2023-01-29T20:08:30",
            "upload_time_iso_8601": "2023-01-29T20:08:30.193144Z",
            "url": "https://files.pythonhosted.org/packages/e3/b5/16b9b6df2e151615465c023119db58ba73bef5718498f3233b70c419af8c/lunchbox-0.3.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-01-29 20:08:30",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "lcname": "lunchbox"
}
        
Elapsed time: 0.05405s