Okydoky

Software Screenshot:
Okydoky
Software Details:
Version: 0.9.5
Upload Date: 20 Feb 15
Developer: Hong MinHee
Distribution Type: Freeware
Downloads: 5

Rating: nan/5 (Total Votes: 0)

Okydoky is an automated documentation builder using Sphinx, Distribute and GitHub (which was setuptools). It makes your closed Python project to continuously build documentations, with the following assumptions:

1. Documentation is done using Sphinx.
2. Project is packaged through setuptools (not pip nor any others).
3. Source code is managed under GitHub.

To say shortly, it's simply a ReadTheDocs.org for private use.

How it works

It works in the following instructions:

1. When new commits are pushed, GitHub triggers Okydoky post-receive hook.
2. Okydoky downloads tarball archives of pushed commits from GitHub.
3. Tarball archive gets extracted into a temporary directory.
4. Sphinx builds the documentation.
5. When users request the docs using their web browser, Okydoky asks the user to authenticate using GitHub OAuth.
6. If they has the authorization, Okydoky serves a built docs.

How to use

It's an ordinary Python package. You can install it using easy_install:

 easy_install Okydoky

This package provides a command line script called okydoky. It's a web application and also a small web server for itself. It takes a config file .

Config files have to contain some required values like GitHub application key and secret key.

You have to create a GitHub application to use Okydoky. Its Callback URL is very important. Fill it with:

http://< host >/auth/finalize

and replaces < host > with the domain name what you'll use. And then, add a post-receive hook into your GitHub repository:

http://< host >/

If you make a config file, then run an Okydoky server using okydoky script:

 okydoky -H 0.0.0.0 -p 8080 yourconfig.py

Lastly, you have to make an initial auth to finish installation. Open http://< host >/ in your web browser and login with GitHub from there.

Configuration

The config file is a normal Python script. It uses Flask's config system. Read Flask's docs about config files.

REPOSITORY
 The user and repository name e.g. 'crosspop/okydoky'.
CLIENT_ID
 The GitHub application's client key.
CLIENT_SECRET
 The GitHub application's secret key.
SAVE_DIRECTORY
 The path of the directory to store data. This directory will store some configured data, tarballs, and built documentations.
SECRET_KEY
 The secret key to sign sessions. See Flask's docs about sessions also.

Open source

Okydoky is written by Hong Minhee for Crosspop. It's distributed under MIT license, and the source code can be found in the GitHub repository. Check out:

 git clone git://github.com/crosspop/okydoky.git

What is new in this release:

  • GitHub forced state for OAuth. Follow that.

What is new in version 0.9.4:

  • Use --upgrade option for setup.py develop command. This prevents version conflicts of dependencies.
  • Build logs are left in the build.txt file.

What is new in version 0.9.3:

  • Now the index page shows the list of refs.
  • Now Okydoky sets OKYDOKY=1 environment variable during its build process. [#5]
  • Add /head special ref url.
  • Fixed a bug that the head is not set to the latest commit.

What is new in version 0.9.2:

  • Fixed a security bug: now users must have an authorization for the repository. [#4]

Requirements:

  • Python

Similar Software

Other Software of Developer Hong MinHee

Comments to Okydoky

Comments not found
Add Comment
Turn on images!