A D-CENT project: an easily deployable oauth server for small organisations.
Clojure HTML CSS Shell JavaScript Ruby
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
assets
config
docs
ops
resources
src-cljc/stonecutter
src-cljs/stonecutter/js
src/stonecutter
test-cljs/stonecutter/test
test-resources
test-var/var
test/stonecutter
.gitignore
.midje.clj
Dockerfile
LICENSE.md
Procfile
README.md
deploy_heroku.sh
deploy_prod.sh
gulpfile.js
npm-postinstall.sh
package.json
project.clj
security.md
start_app_vm.sh
static-server.js

README.md

stonecutter

A D-CENT project: an easily deployable oauth server for small organisations.

There has been an update to the deployment script deploy_prod.sh. If you have deployed an instance of Stonecutter to an Ubuntu server using Ansible, you will need to rerun the last two steps of the deployment: Configure with ansible and Deploy application to the server.

Development VM

You can develop and run the application in a VM to ensure that the correct versions of Stonecutter's dependencies are installed. You will need VirtualBox, Vagrant and Ansible installed.

First, clone the repository.

Navigate to the ops/ directory of the project and run:

vagrant up development

The first time this is run, it will provision and configure a new VM.

When the VM has started, access the virtual machine by running:

vagrant ssh

The source folder will be located at /var/stonecutter.

After initial setup, navigate to the source directory and build the assets with:

cd /var/stonecutter
gulp build

Running

To start the app, run:

./start_app_vm.sh

To start a web server for the application in development mode, run:

lein ring server-headless

NB: running the application like this will save users into an in memory cache that will be destroyed as soon as the app is shutdown.

Running test suite

To run all tests, use this command:

lein test

Commands and aliases can be found in the project.clj file.

Running the prototype

Simply type:

gulp server

Architecture

The Continuous Delivery build and deployment architecture is documented here.

The Hosting Architecture is documented here.

Deployment

To deploy using Docker, see here.

To deploy to an Ubuntu server using Ansible, see here.