Skip to main content

Django-Webfaction

Collection of tools to run django on webfaction more seamless

Installation:

  • Install with pip or easy install (pip install django-webfaction)

Usage:

Console utility

Django webfaction contains webfactionctl utility that can be used to control your webfaction services from command-line.

  1. You get access to basic commands like a list machines/apps/databases/ips/.. and crate apps and databases. For example to get list of your current dbs just run:

    webfactionctl list_dbs
  2. You can get extended info of your machines with current RAM usage, apps and processes with state command:

    $ webfactionctl state
    Query machines list...
    Query apps list...
    Query machine state detail: Web210 Web217 Web223 Web317 Web327
    +-----------+------------------+--------+--------------------+-----------+---------------+-----+
    | ram_usage | operating_system |  name  |      location      | app_count | process_count | id  |
    +===========+==================+========+====================+===========+===============+=====+
    | 209708    | Centos5-32bit    | Web210 | Europe (Amsterdam) | 19        | 20            | 376 |
    +-----------+------------------+--------+--------------------+-----------+---------------+-----+
    | 43112     | Centos5-32bit    | Web217 | Europe (Amsterdam) | 2         | 7             | 386 |
    +-----------+------------------+--------+--------------------+-----------+---------------+-----+
    | 175352    | Centos5-32bit    | Web223 | Europe (Amsterdam) | 12        | 17            | 395 |
    +-----------+------------------+--------+--------------------+-----------+---------------+-----+
    | 8220      | Centos6-64bit    | Web317 | Europe (Amsterdam) | 6         | 7             | 445 |
    +-----------+------------------+--------+--------------------+-----------+---------------+-----+
    | 66092     | Centos6-64bit    | Web327 | Europe (Amsterdam) | 2         | 9             | 462 |
    +-----------+------------------+--------+--------------------+-----------+---------------+-----+

Django deployment wizard

With webfactionctl stup_django_project you can run django deployment wizard that:

  1. Prepare server by installing pip, virtualenv, gunicorn, django-webfaction globally for your account.

  2. Create main app for your project

  3. Setup virtualenv for your main project

  4. Prepare gunicorn contorl script for your project

  5. Create static app for your project

  6. Prepare settings_local for your project

Sending mail from local sendmail asynchronous

There is a fail in webfaction deployment, when there is no sendmail server running on localhost, only smtp server in US. For apps runned in Europe sending a mail from stmp.webfaction.com or running local sendmail process takes >1.2 seconds that definately require asynchronous system.

To use asychronous message sending system just add this line to your django settings file:

EMAIL_BACKEND = 'webfaction.backends.EmailBackend'

Accessing REMOTE_ADDR from django

When a Django application’s Apache instance proxies requests to Django, the REMOTE_ADDR header is not set with the clients’s IP address. Adding this webfaction.middleware.WebFactionFixes to your MIDDLEWARE_CLASSES replace REMOTE_ADDR with correct client’s IP.

If you use classic method to modify deployed settings by putting:

try:
    from settings_local import *
except ImportError:
    pass

at the end of settings.py file, you can put this code to settings_local:

MIDDLEWARE_CLASSES = (
   'webfaction.middleware.WebFactionFixes',
) + MIDDLEWARE_CLASSES

Metadata

Release files for django-webfaction 2.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for django-webfaction 2.0.1
File Size Uploaded Provenance
django-webfaction-2.0.1.tar.gz 3.8 kB Without provenance Details

Release files / django-webfaction-2.0.1.tar.gz

Download URL django-webfaction-2.0.1.tar.gz
Size 3.8 kB
Tags Source
SHA-256 checksum
How to use checksums
6b86f68cc46295862d187b0078766ae280577bd0d8c7447267272c6c2946cc7c
BLAKE2b-256 checksum
How to use checksums
7216fa951e2c081cbf9d176369b578beaa69f8fd86fc03187c27522f44217073
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for django-webfaction 2.0.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page