jayflowers.com
Design Principles in Test First Programming PDF Print E-mail
Design Principles in Test First Programming PDF Print E-mail
DevOps – The Last Mile – Workspace Management Here is my presentation from today’s AgileDC session. Devops – The Last Mile Here are the links to the setup.exe and the GitHub project: https://github.com/jflowers/virgo.sample-greenpages http://jayflowers.com/Misc%20Downloads/Workspace-Setup.exe 30,201 Total Views
Continuous Integration Practices–Precommit Process Often what gets all the attention in Continuous Integration is what happens on a continuous integration server. There is more to CI than what happens on the server. What happens on a developer workspace is part of CI as well. An easy example of this is the precommit process. It describes what a developer does before committing changes to source control. On a simple and small project this would entail: ...
Demanding of Ant: 2 Run Once The use of the depends attribute on targets is prevalent in many project Ant scripts. I believe that depends is the bane of reuse. Lets take the name of a simple target like deploy. In the context of a developers environment deploy would likely depend on package, package on unittest, unittest on compile… This is fine until you want to reuse deploy in a different context, say to a different environment like production. In that context deploy has no business with such a dependency chain. ...
Demanding of Ant: 1 scriptdef I hate Ant. I like NAnt better, and I hate NAnt too. The intent of this series is to share how I have demanded more out of Ant. Did you know that you can mess with the Java objects of Ant in Ant script? You can create tasks on the fly. You can even create a logger on the fly. I have used the following example to insure that a log file is written to without having to count on a user supplying the needed command line arguments. ...
Automated Workspace Management Recently I was at CITCON 2010 (Continuous Integration and Testing Conference) in Raleigh-Durham. One of the sessions I participated in was on automated workspace management. I thought I would share more on my related experiences here. First what is automated workspace management? Think of a new person on your project. How do they get a workspace created? Most projects have a document or documents, maybe on the wiki, that is supposed to give instructions on how to get setup. We all know that these are never up to date. Often they lie and confuse. In the end it always requires someone on the team to help them figure out how to get them up and running. And I would put money on that most times, in the end, when it starts working no one is really sure why it finally starts working. In essence private workspaces are works of art. We are not in the business of making works of art. Our workspaces should be easy to create, destroy, and recreate: they should be disposable. A new person should be able to click a button to setup their workspace. All team members should be able to click a button to update their workspaces’ to be in sync with the latest from source control. ...
Beefing up CI Factory’s concept of a Package For a long time now CI Factory has had the concept of a Package: a set of NAnt targets, properties, tasks, and functions that can be loaded by the Main.Build.xml or the Post.Build.xml and later call targets on them. <include buildfile="${PackagesDirectory}MSBuildCompile.Target.xml" /> …… <include buildfile="${PackagesDirectory}MSBuildCompile.Target.xml" /> Most packages include: Properties file to tweak the package to your specific needs. Targets file provides.. well targets that you can call from the main build file or from custom build files. ...
CI Factory, Where are you? CI Factory and I have been stuck in the Java world for over a year now. I have not had much reason to keep up with the Dot Net packages. I know there are new versions of most of the Dot Net tools CI Factory offers packages for. I have let this keep me from releasing a new version of CI Factory. There have been many new features in the core of CI Factory and several new packages around Java tools. I will not sacrifice my personal life to maintain all of CI Factory. As well I see no good reason for delaying a release of a new version of CI Factory for out-of-date Dot Net packages. I welcome anyone’s help in updating the Dot Net packages. ...
Some Buddhist Words and Concepts These are some of the words and concepts that I have learned from Pema Chodron lately. [Prajna](http://www.shambhalasun.com/index.php?option=com_content&task=view&id=1675&Itemid=0) - From Judy Lief: Prajna is a Sanskrit word literally meaning “best knowledge,” or “best knowing.” Prajna is a natural bubbling up of curiosity, doubt and inquisitiveness. It is precise, but at the same time it is playful. The awakening of prajna applies to all aspects of life, down to the tiniest details. Our inquisitive interest encompasses all levels, from the most mundane, such as how do I turn on this computer, up to such profound levels as, what is the nature of reality? ...
CI Factory 1.0.1 This is a small bug fix release, really for just one bug. Any build following a failed build would throw and exception when try to display the main build report on the web dashboard. | |