Skip to main content

Run commands set in the pyproject.toml file

Project description

🏎️💨 pyqwe

The Quick Work Environment for Python.

Run commands quickly from the pyproject.toml file.

pip install pyqwe

For .env file support using python-dotenv:

pip install pyqwe[dotenv]
# If zsh install extra using:
pip install 'pyqwe[dotenv]'

See using environment variables for more information.

Usage

Add commands to the pyproject.toml file.

[tool.pyqwe]
flask = "flask_app:run"
say_hello = "*:echo Hello World"

Python commands:

For Python, the commands are structured like (package:module):function

Package example:

project/
    flask_app/
        __init__.py
[tool.pyqwe]
flask = "flask_app:run"

This command will run the function run() from the __init__.py file in the flask_app package.

Module example:

project/
    app.py
[tool.pyqwe]
flask = "app:run"

This command will run the function run() from the app.py file.

Now run the pyqwe command:

pyqwe flask

This will start the Flask app.

*:... commands:

Any command that starts with * will be run using subprocess.

For example:

[tool.pyqwe]
say_hello = "*:echo Hello World"

Now running the pyqwe command:

pyqwe say_hello

Will print Hello World.

Run as shell

To run the command as a subprocess shell command, add the shell key to the command.

[tool.pyqwe]
say_hello = "*shell:echo Hello World"

Using environment variables

To use environment variables in the command, use the {{ }} syntax.

[tool.pyqwe]
talk = "*shell:echo {{MESSAGE}}"

Now running the pyqwe command:

pyqwe talk

Will print the value of the MESSAGE environment variable.

⚠️ Note: The environment variables must be set before running the command.

pyqwe will not look for the .env file by default. To enable this, install the pyqwe-extra-dotenv package.

pip install pyqwe-extra-dotenv

or

pip install pyqwe[dotenv]

To stop the behavior of looking for the .env when using pyqwe, uninstall the pyqwe-extra-dotenv package.

pip uninstall pyqwe-extra-dotenv

Other commands

pyqwe -h or --help will display all the commands set in the pyproject.toml file.

pyqwe __version__ will display the version of pyqwe.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyqwe-1.0.3.tar.gz (5.6 kB view hashes)

Uploaded Source

Built Distribution

pyqwe-1.0.3-py3-none-any.whl (5.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page