Public | Automated Build

Last pushed: 3 months ago
Short Description
Plugin overlay for Apache Sling
Full Description

Whistlepost - Web Publishing Platform

Table of Contents

  1. Introduction - What is Whistlepost?


Whistlepose is content management system (CMS) designed to be as simple as Jekyll, as flexible as Adobe AEM,
and as robust as Wordpress.

Whistlepost is built on the Apache Sling platform, which applies the mantra that everything is a resource.
The benefit of this approach is that is separates the structure of the content from the structure of the site itself,
which allows both (UX/UI) designers and (content) developers to focus on what is most important to them.

Getting Started

Whistlepost provides a Lazybones project template that is probably the simplest way to create a new Whistlepost site.
The following steps outline how to use it:

  1. Install Lazybones via SDKMAN:

    $ curl -s "" | bash && sdk install lazybones

  2. Include the Whistlepost repository in configuration:

    $ lazybones set bintrayRepositories = [micronode/whistlepost, pledbrook/lazybones-templates]

  3. Create a new site skeleton using the Whistlepost template:

    $ lazybones create whistlepost-site <site directory>


Whistlepost uses gradle to build and bundles. The following tasks are the most commonly used:

build # rebuild and package bundle jars

deployBundle # upload bundle jars to the configured OSGi (e.g. Apache Sling) environment

startBundle # start installed bundles in the configured OSGi environment

Project properties

The following project properties may also be overridden:

sling_host # the host environment name

sling_port # the host environment port

sling_username # the host environment user

sling_password # the host environment password

A common approach is to use the GRADLE_OPTS environment variable to override project build settings. The following
values are useful when building Whistlepost:

  • -Dorg.gradle.parallel (execute build in parallel)


Through containerisation of the deployment stack development and testing productivity is greatly improved. The following
commands are most commonly used when using Docker:

docker-compose up -d # start Apache Sling and deploy bundles

docker-compose build && docker-compose run --rm whistlepost # re-deploy any changes into the running Apache Sling environment
Docker Pull Command
Source Repository