Skip to main content

PythonAnywhere helper tools for users

Project description

Build Status License: MIT PyPI Downloads

PythonAnywhere cli tool

pa is a single command to manage PythonAnywhere services.

It is designed to be run from PythonAnywhere consoles, but many subcommands can be executed directly from your own machine (see usage below).

Installing

On PythonAnywhere

In a PythonAnywhere Bash console, run:

pip3.10 install --user pythonanywhere

If there is no python3.10 on your PythonAnywhere account, you should upgrade your account to the newest system image. See here how to do that. pa works with python 3.8, 3.9, and 3.10 but we recommend using the latest system image.

On your own machine

Install the pythonanywhere package from PyPI. We recommend using pipx if you want to use it only as a cli tool, or a virtual environment if you want to use a programmatic interface in your own code.

Usage

There are two ways to use the package. You can just run the scripts or use the underlying api wrappers directly in your scripts.

Command line interface

pa [OPTIONS] COMMAND [ARGS]...

Options:
  --install-completion  Install completion for the current shell.
  --show-completion     Show completion for the current shell, to copy it or
                        customize the installation.
  -h, --help            Show this message and exit.

Commands:
  django    Makes Django Girls tutorial projects deployment easy
  path      Perform some operations on files
  schedule  Manage scheduled tasks
  students  Perform some operations on students
  webapp    Everything for web apps: use this if you're not using our experimental features 
  website   EXPERIMENTAL: create and manage ASGI websites

Running pa on your local machine

pa expects the presence of some environment variables that are provided when you run your code in a PythonAnywere console. You need to provide them if you run pa on your local machine.

API_TOKEN -- you need to set this to allow pa to connect to the PythonAnywere API. To get an API token, log into PythonAnywhere and go to the "Account" page using the link at the top right. Click on the "API token" tab, and click the "Create a new API token" button to get your token.

PYTHONANYWHERE_SITE is used to connect to PythonAnywhere API and defaults to www.pythonanywhere.com, but you may need to set it to eu.pythonanywhere.com if you use our EU site.

If your username on PythonAnywhere is different from the username on your local machine, you may need to set USER for the environment you run pa in.

Programmatic usage in your code

Take a look at the pythonanywhere.task module and docstrings of pythonanywhere.task.Task class and its methods.

Legacy scripts

Some legacy scripts (separate for each action) are still available.

Contributing

Pull requests are welcome! You'll find tests in the tests folder...

# prep your dev environment
mkvirtualenv --python=python3.10 helper_scripts
pip install -r requirements.txt
pip install -e .

# running the tests:
pytest

# make sure that the code that you have written is well tested:
pytest --cov=pythonanywhere --cov=scripts

# to just run the fast tests:
pytest -m 'not slowtest' -v

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

pythonanywhere-0.17.0.tar.gz (54.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pythonanywhere-0.17.0-py3-none-any.whl (45.0 kB view details)

Uploaded Python 3

File details

Details for the file pythonanywhere-0.17.0.tar.gz.

File metadata

  • Download URL: pythonanywhere-0.17.0.tar.gz
  • Upload date:
  • Size: 54.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for pythonanywhere-0.17.0.tar.gz
Algorithm Hash digest
SHA256 5392dbb4a4c35b1bddcd3aff9c5c2f07b06038b3934688114347dde318bbf0f0
MD5 21423b4d646661951c9bb627f1002aee
BLAKE2b-256 4f045363fbf47f36f9f5641a6b2a15f47e3c8540d3ffbe440c6e26165f3f6a24

See more details on using hashes here.

File details

Details for the file pythonanywhere-0.17.0-py3-none-any.whl.

File metadata

File hashes

Hashes for pythonanywhere-0.17.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4a1da201bab396f3c29aa83ed070fb96026a49a88a7e1657334e7a1d7edfdecf
MD5 027332c76079dc02452c817618fcc1ae
BLAKE2b-256 857460c28b01618fe28670024c2be9edd1671e941adef9914359a7b1a6cd5de6

See more details on using hashes here.

Supported by

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