Skip to main content

Scripts to help provision, configure and deply towebfaction using Python and Fabric 2

Project description

Webfaction fabric2 helper scripts
=================================

These scripts utilise the `Webfaction
API <https://docs.webfaction.com/xmlrpc-api/>`__ via python and `Fabric
2 <http://www.fabfile.org/>`__ to conveniently run some common tasks.

Presently there are just a small selection, mostly related to managing
letsencrypt certificates.

Installation
------------

You could install this in your system python3, into your virtualnv or
into your pipenv as a dev dependency

$ pipenv install –dev webfaction_fab2

Usage
-----

Generate a fabfile.py in the root of your project, something like this:

$ pipen run python -m wf_fab2.makefab

And then start using the commands

$ pipenv run fab -l

::

Loading .env environment variables...
Available tasks:

Available tasks:

acme-install Install acme.sh for Letsencrypt certificates on a webfaction host.
check-websites Check http response mode of all configured websites.
list-websites List all websites their linked apps and subdomains.
secure-website Issue certificates for a website and install with acme_webfaction

..

$ pipenv run fab -H Web39.webfaction.com check-websites accountname

::

Loading .env environment variables...
API password:
Checking: https://example.com/
Available: https://example.com/
Checking: https://anotherexample.com/
/Users/mjoakes/.local/share/virtualenvs/webfaction_helpers-RUB6JD7n/lib/python3.6/site-packages/urllib3/connectionpool.py:857: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
InsecureRequestWarning)
Available: https://anotherexample.com/ Invalid Certificate

..

$ pipenv run fab -H Web39.webfaction.com list-websites accountname

::

API password:
example_site_name [['exampleapp', '/']] ['example.com', 'www.example.com']
anotherexample_site_name [['anotherexampleapp', '/']] ['anotherexample.com', 'www.anotherexample.com']

..

$ pipenv run fab -H Web39.webfaction.com ssecure-website accountname
anotherexample_site_name

::

Development
-----------

I had a pretty comprehensive and well tested set of scripts for fabric
1.x enabling provisioning and deploying django projects onto webfaciton
hosts. As I slowly move them to fabric2 I’m intending to share them
here.

https://github.com/moaxey/wf_fab2

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

webfaction_fab2-0.0.3.tar.gz (5.9 kB view details)

Uploaded Source

File details

Details for the file webfaction_fab2-0.0.3.tar.gz.

File metadata

  • Download URL: webfaction_fab2-0.0.3.tar.gz
  • Upload date:
  • Size: 5.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.18.4 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.19.8 CPython/2.7.10

File hashes

Hashes for webfaction_fab2-0.0.3.tar.gz
Algorithm Hash digest
SHA256 1add0a20880cb615eefb3896332b3068019005f988df1a795ec1ccb9f65b64c1
MD5 c2df20577a2a93caac3d9afaaf4833cd
BLAKE2b-256 882be3353fa065f2b2f058b954aa90f99989ad05f7ca9d654470165b4433957d

See more details on using hashes here.

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