Skip to content
Daniel Hazelbaker edited this page Mar 26, 2018 · 2 revisions

Overview

The Dev Booster is designed to help developers automate a number of tasks. Currently this includes two major areas.

  1. Testing blocks, SQL statements and other items against clean Rock installs as well as pre-configured Rock templates.
  2. Packaging up plugins to be uploaded to the Rock Shop.

Below we will discuss each of these two items in a bit more detail.

Testing

When you reach the point of doing final testing it can take a fair amount of time. The reason for this is you often have to make sure that your Rock install is in a known good state. If you run a test and it doesn't work exactly the way you expected, after you fix it and are ready to try again you need to put Rock back into the state it was before so that you can be sure the test happens with all the same parameters.

This act of putting Rock back into the same state can take time, and that is time you should be spending doing development work. If you are spending time restoring SQL databases, restoring RockWeb folders and related actions then you are wasting your development time.

To put it simply, using this you can roll a specific version of Rock with a single click of the mouse. Take a snapshot of a Rock instance, do some testing, and then roll it back in a matter of seconds.

Read more about automated launching of Rock instances on Rock Launcher.

Packaging

I don't know about you, but once a plugin is all tested and ready for release, it still takes me a lot of time to get it packaged up by hand. You have to build the right directory structure, copy files around and then zip it all up. It sounds like a task that should only take a few seconds, but in reality it usually takes 10-15 minutes, sometimes more.

The usual reason for this is making sure you did not forget any steps. Especially with larger plugins that have numerous files in various locations. And lets face it, how many times have you distributed a DLL only to realize later that you properly grabbed the Release build - but forgot to switch your build configuration to Release first. You just sent them an old binary.

One of the functions provided is an automated package builder. With only a few lines of JSON in a file you can specify how the package is built, where it pulls files from, and where they go. It also properly builds your DLL as a Release build first to ensure you snagged the latest build.

Read up on Packaging.

Clone this wiki locally