RE: [coldbox:17795] Re: [Announcement] ColdBox Connection Today at Noon CST

That’s a pretty good recap. Internally by build engineer has Jenkins set up for automating our unit tests as well as deployments. He basically has a series of Ant tasks configured that run in a thread for each web server. They synch the code, hit a web service that clears trusted cache along with some other stuff, and finally reinit the framework. As long as successful responses are returned for each of those success is assumed, if the error page is hit, bad sounds play over our computer speakers and we scramble to find out what went wrong. The benefit of that approach is the new code is actively pushed out to each web server and reinitialized on 9 sites across 4 servers all at once and we don’t have to worry about one of the sites on one of the servers still having old versions of the code.

Even though it wasn’t part of Joel’s question, I also mentioned that our build process writes the build number into a text file which is read in as a ColdBox setting. Our custom HTML Helper plugin automatically appends this build number in the query string for all JS and CSS files so browser cache will force a refresh the next time a user hits after the deployment.



ColdBox Platform Evangelist
Ortus Solutions, Corp

ColdBox Platform:

Ah, thanks for reminding me about the HTML Helper bit. My apps are 100% JS on the front-end, so right now I have to modify the layout to include a cache-buster on each deployment of the re-compiled JS code. I will definitely have to explore something like that to save that step.

Thanks again!