Some of our open source tools and projects which you may find useful.
Email Newsletter Generator
Create great-looking, customisable and mobile-friendly email newsletters without the hassle of using things like MailChimp. You can easily save your customisations to keep your emails visually consistent.
Continuous integration with society websites
Deploying a website to Imperial College Union’s web server (Dougal) with SSH
You can delpoy your website straight from GitHub using a CI build server (we use Travis CI).
1. Get SSH access to Dougal
You’ll need SSH access to Dougal to delpoy your site. Email firstname.lastname@example.org to ask for this, clearly explaining why you need it.
2. Get access to Imperial’s SSH Gateway
Dougal can only be accessed from within the College network. To upload files onto it from an external CI build server, you’ll need to connect to it in two hops, via Imperial’s SSH Gateway. Get access to the SSH Gateway from the ICT Service Desk and upload your SSH key. You also need to upload your private SSH key onto SSH Gateway, so that you can log in to Dougal from SSH Gateway without a password.
3. Upload your files
Use the following bash command to upload your static website files (HTML/CSS/JS/images etc.) onto Dougal:
rsync -rv -e \ "ssh -o StrictHostKeyChecking=no -o ForwardAgent=yes \ <YOUR_USERNAME>@sshgw.ic.ac.uk ssh <YOUR_USERNAME>@dougal.union.ic.ac.uk" \ <PATH_TO_YOUR_WEBSITE_FILES> :/website/<LOCATION_OF_WEBSITE_ON_DOUGAL>
- YOUR_USERNAME - your Imperial username e.g. abc9916
- PATH_TO_YOUR_WEBSITE_FILES - the folder with your compiled files (e.g.
./if you wrote raw HTML/CSS,
_site/if you’re using Jekyll or
build/if you’re using create-react-app)
- LOCATION_OF_WEBSITE_ON_DOUGAL - the path to your society’s website folder on Dougal. For us, it’s
scc/cu. Ask the Union SysAdmin team if you’re not sure
You can incorporate the command into your CI deployment scripts. CircleCI and Travis CI have useful guides on how to do this. Remember that you’ll need to securely upload your SSH key onto the CI server so it is able to access Imperial’s SSH Gateway and Dougal.