-
Switching to systemd
I recently upgraded my version of Ubuntu to 15.04. In the process, I found out that my init system had changed from Upstart to systemd. While having something as fundamental as the init system management was a bit annoying, it isn’t as bad as some folks are making it out on the Web. Here are…
-
Adding Functional (End-to-End) Test to Rookeries
Testing the client side of Rookeries, has proven to be quite a challenge. Not necessarily because testing well-written React JS components is hard. Rather I found it hard to setup a proper and consistent unit test infrastructure to do so. Rather than going through the pain of writing and maintaining functional tests in Javascript, I…
-
Adding a Code Editor to Rookeries
One of the main selling points for Rookeries, is its ability to let the writer write content using Markdown, and getting a live preview of the result. Since the user will be writing in code, it would be a better experience to use a text editor meant for code. Rather than try to undertake a…
-
Giving a Talk at PyCon Canada 2015
I am super excited to announce that I will be doing a talk at PyCon Canada this year! I will be talking about migrating from using Fabric to deploy my WSGI app (Rookeries) to using a combination of Invoke and Ansible. PyCon Canada will be happening in Toronto at the University of Toronto campus Saturday…
-
Fixing SPDX Expression Warning in package.json
If you ever run into the following warning when installing your NPM package: npm WARN package.json rookeries-api-client-wrapper@0.4.9 license should be a valid SPDX license expression That means you have an improper a name for the specified license in your package.json. So what are valid values for licenses? Well… here is the SPDX list of licenses
-
Command-line JSON Formatting with jq
About 2 or 3 months ago, when testing a deployment of a microservice at work with Eric, our head Ops admin, we were looking at the JSON output of one of the REST endpoints. Rather than looking at the raw output from curl, I piped the output through JSON tool in the Python standard library:…
-
Using CouchDB in Rookeries – Part 3 – Configuring a Remote CouchDB Server
In the previous instalment of this series I wrote about installing and managing on a remote server. Now lets talk about configuring CouchDB so that it can run as a production server. This will not cover CouchDB’s configuration extensively, rather I will touch on the parts relevant to Rookeries. Configuring CouchDB CouchDB can be configured…
-
Using CouchDB in Rookeries – Part 2 – Setting Up a Remote CouchDB Server
Overview In the second instalment of my series on adding CouchDB support to Rookeries, I’ll be talking about how I provisioned CouchDB on my remote server. Now it sounds counter-intuitive why I would talk about creating and populating CouchDB databases first before writing about installing CouchDB. The reason for this backwards step, is that I…
-
Using CouchDB in Rookeries – Part 1 – Creating CouchDB Test Fixtures Using Bulk Updates
Back Story I’ve been working on adding database persistence support to Rookeries. Instead of writing down my findings and losing them somewhere, I plan on documenting my findings and thoughts in a series of blog posts. In the case of Rookeries that means connecting to and storing all of the journal, blog and page content…
-
Ansible Role for NGINX, UWSGI and Supervisor Released!
What better way to start 2015 than to release new software? As part of my efforts to create Rookeries, a modern Python-based CMS as a replacement for my WordPress sites: I am releasing an Ansible role to make it easier to setup WSGI apps on a private server. The nginx-uwsgi-supervisor role is available on Ansible Galaxy.…