This Python script provides very basic deployment functionality for simple, code-only updates and does not include database support.
The script, in a few words, does the following:
- Executes an SVN export on the trunk or branch of a repository
- Connects to an FTP server and uploads all files (and directories) that have a newer modification timestamp
To use the script you must configure your SVN repository root (in exupconfig.py) and FTP server credentials (by executing ftpaccounteditor.py). The FTP server credentials are saved in a local file (at a path defined in exupconfig.py). You have the option of encrypting any FTP password you save with the credentials; the encryption is handled by m2crypto module and requires a key (which you will be prompted for).
To download it, or clone the github repo go here.
Example (in a bash terminal):
# clone (or download and extract) the three files (exup.py, exupconfig.py & ftpaccounteditor.py) git clone email@example.com:janeklb/exup.git cd exup vi exupconfig.py # edit exupconfig.py to match your settings ftpaccounteditor.py # follow the inline instructions to add your FTP account settings exup.py # and enter the repository you would like to deploy
Please post your problems / fixes / suggestions in the comments. I am new to the world of Python and your feedback is very welcome.