PyCamp 2012 - Day 3
So, day 3 and next-to-last of PyCamp is done.
Great day, sunny, not all that cold
Empanadas at lunch, pizza for dinner, cake for tea. Feeling kinda spoiled today.
Lots of hacking at Nikola-as-a-service (details below)
PyAr meeting by a huge, somewhat scary bonfire earlier tonight
So: Nikola-as-a-service is an idea where you can keep your blog somewhere, and this service will get the data, and publish a nice site for you.
Here's the current workflow, which is just one of a dozen that can be implemented because this thing is quite simple:
-
The authenticator
Currently it has twitter authentication. You never need to create an account, just login with some service you already have accounts with. Anything with OAuth will work.
-
The data provider
Currently, github. Soon, Ubuntu One. Later, who knows. A data provider is something from where we can grab data, and that can notify us (automatically or by having the user click on a button) when we should get that data and rebuild the site.
-
The renderer
I am doing it with Nikola, of course :-)
-
The infrastructure
Jobs using Redis and Celery, server app using Flask, rendering using Nikola
-
How does it work?
You go to github, clone a barebones blog. Do your modifications. Go to nikola-as-a-service, and login via something. Then you give Nikola your github repo's URL, and you get a webhook URL. Go back to github, and configure the webhook.
From that moment on, every time you push to github, your blog is updated :-)
In the future: every time you save to Ubuntu One, your blog is updated. In the further future: Every time you X to Y, your blog is updated.
It's going to be cool :-)