kusabax #5

Supports: precise

Add to new model

Description

Deploys KusabaX


Kusaba X Juju Charm
Copyright 2012 by Chris Hardee

About:
This charm is used to deploy a fully usable Kusaba X imageboard instance without any user interaction. This is a great charm to deploy if you want a 2ch/4chan-style imageboard but are not up to speed on server installation etc.

Tutorial:
First make sure your environment is setup and you have juju installed, please see the juju documentation for help on this:
https://juju.ubuntu.com/docs/index.html

Edit the config.yaml, and change anything you'd like. Please be careful when changing the slogan value, as some characters will break the scripts. As of now, don't use pipes '|' or single-quotes.

After juju has been configured, bootstrap it:
juju bootstrap (if running a local instance you might need sudo privileges)

Then deploy kusabax, you should do this from the root charm directory (ie charmroot/distros/kusabax)
juju deploy --repository=. local:kusabax Then deploy mysql:
juju deploy --repository=. local:mysql

Check on the status:
juju status When both nodes are up and running, add the relation:
juju add-relation kusabax mysql Then expose kusabax:
juju expose kusabax

Check on that status until the relation is set and everything is running.

Grab the public address from the status output and paste it into your browser. If everything went ok, then you should see the basic kusaba x imageboard ready to go.

We're not done yet though!

Naviagate to manage.php by appending it to the public address (ie http://23.42.52.232/manage.php).

Login with username: admin password: admin

On the left side, under Site Administration, click on Staff
Add a new administrator by giving a username, password, leaving the type to administrator, and clicking Add Staff Member.
Log off, then renavigate to the manage.php site and log in with the new user. If everything went ok, then Delete the old default Admin user.

You are now ready!

Remember to add a board under Boards Administration, then go to Edit Section and Add Section, then finally under Board options select the new board you just made and change the Section drop-down to the new section.
When you navigate to the home page, you should see your new board and should be able to post. Repeat for other boards/sections.

Notes:
This charm will checkout the latest stable release from http://kusabax.cultnet.net/svn/ and install it to the root /var/www directory.
Currently the script uses the current hostname for all configuration, you might get some errors if you want to move to a proper domain ie. example.com.
Keep in mind imageboards like these are notorious for cross-site scripting attacks, so keep note of current vulnerabilities from the kusabax home page.

Support:
For support on kusabax itself, checked out the support board:
http://kusabax.cultnet.net/sup/
and the wiki:
http://kusabax.cultnet.net/wiki/

For issues with the charm itself, please contact me at:
shazzner@gmail.com

TODOs:
More config options
Add postgresql support
Double-check what exactly needs permissions to avoid www-root chmod 777
Add a way to change db relations
Would probably be a good candidate for apparmor support: https://juju.ubuntu.com/AppArmor


Configuration

board-name
(string) Imageboard name, make sure to escape special characters
juju kusaba x
domain-name
(string)
blank
slogan
(string) Site slogan, set to nothing to disable its display
<em>"Created with Juju!"</em>
style-switcher
(boolean) If true, will allow users to change style