This is our Firehouse

Firehouse is a OS X application to help manage sites within our Casper environment at Indiana University. We manage a central service for other IT departments across the University, currently around 30 sites and growing. In Casper, there are resource areas that are not site specific, so if you give Site Admins access to scripts, they could possibly use, edit, or delete another site scripts.

We wanted to prevent this from happening and shut down Site administrators access to shared areas. We would then upload and transfer scripts, packages, and printers for the Site Admins. As the service grows, we know this level of support is unsustainable for our small department. Wanting to keep the same restrictions in place, but also give our Site Admins the ability to manage their own resources we developed Firehouse.

First the name…I’m a huge Ghostbusters fan. Casper…Ghostbusters…perfect.

Poster“This place is great! You gotta try this pole!”

How it works (in a nutshell)

Firehouse manages which resources the admins can see, edit, and post. Here’s how it works.



Screen Shot 2016 05 25 at 10 32 45 AM

The first step in the login process is to check for any updates to the Firehouse application itself. This happens through a appCast mechanism.

Next the user logs in and Firehouse authenticates the user to sites by looking at which sites are available via the Casper API and then authenticates the user to their sites via Active Directory.



Screen Shot 2016 05 25 at 10 33 22 AM

We enforce a strict naming scheme in our shared environment. This is what allows Firehouse to parse out the objects and allow access to site admins. It also enforces the naming convention, you cannot upload anything not prefixed with your site name.

Here you can see admins can quickly upload and delete their scripts without the ability to effect anything but their own objects.



In the packages tab, you are presented with a list of all your sites installers. Delete will remove the package.

Screen Shot 2016 05 25 at 10 46 48 AM

Adding a packaged presents a screen that lets you configure your installers settings. The same naming conventions are enforced here. Upon clicking done, the installer is uploaded to the Root JDS via WebDav and the Installer information is posted to the JSS via the api. The installer will then replicate out to the JDS children which happens on a recurring schedule.

Screen Shot 2016 05 25 at 11 05 03 AM


In its current version, Firehouse can only upload printers that use generic ppd’s. I am currently working on updating this so fully customizable printers can be uploaded.

There are 2 primary ways to setup a printer here. You can manually enter all the information or you can import a local printer and all its detail will be entered for you.

Screen Shot 2016 05 25 at 11 12 45 AM