dashy // how does it work?
how does dashy work?Below is an image covering the basic flow of a deployment, using dashy.
The steps are: 1. Write code(manual)This is just you, writing the relevant code for your project on your desktop machine, against your projects repository. 2. Commit(manual)The real "first" step of a dashy release; you need to commit your code to source control. 3. Build initiated by CI server (automatic)After commit, your Continuous Integration (CI) server will begin preparing a naked build. 4. Wait for the build (manual)You now wait patiently for the build to complete. 5. Visit the dashy client website (manual)The dashy client website is installed on your build server, and consist of a website and a windows service. The service lets you configure: project groups, releases, instances and variables. These are all explained in more detail in the full tutorial. Once configured, a typical configuration may look like this:
6. Click deploy (manual)As you can see from the above image, there are a few 'instances' available for clicking. When you click one, it will look like this:
The background image is set as a property of the release (hence the reason it says "latest" (latest is the name of the release)). So here you may click 'yes - do it!' to begin the deployment of this particular instance ("dashy server website"). 7. The build is published (automatic)At this point, dashy will take the build that was producted by step 5, and "convert" it to a build that is ready for the release that you've configured (in the prior case, the release was "latest"). This will involve the replacement of some configuration variables (you saw the variables defined in figure 2. This set of files will then be committed, in entirity, to the specified SVN repository. 8. Dashy server retrieves the build and performs optional actions(automatic)dashy server is installed on your web server: the server you deploy to. It will, periodically (on a basis you set) check for new commits to the SVN repo. When it finds them, it will execute an update, and download them. Because of the nature of SVN, it will also only download the files that have changed, so it will be significantly faster than downloading the entire contents of your release, every time. The server looks like this:
It will generally require no interaction. It will update on its own, but you can force the update if you wish. You can see the results of the actions that you've configured dashy server to do on this screen:
9. Deployment completeThat's it. After dashy server has completed it's update, that particular instance of your application has been deployed automatically. Beautiful, isn't it? |
Figure 1. Basic dashy flow
Figure 2. Dashy client website
Figure 3. Dashy client - deployment screen
Figure 4. Dashy server website
Figure 5. Dashy server tasks