Creating An Automated Build and Deployment Infrastructure

Embed Size (px)



Text of Creating An Automated Build and Deployment Infrastructure

  • 1. Franz Garsombke [email_address]
  • 2.
    • Why Build and Deploy Automation?
    • The Open Source Tools
      • Maven2
      • Hudson
      • Proximity with Duct Tape
    • Demonstration
    • Questions/References
  • 3. [email_address] Deliverables Time to Market Lifecycle Waterfall test 1 to 6 months Waterfall 12 to 36 months Waterfall deploy Working, tested code on short cycles Waterfall documentation Agile Software Development
  • 4. Developer SCM Build Tester PO Check-Ins New Functionality Builds Feedback
  • 5. Developer SCM Build Tester PO Check-Ins New Functionality Builds Feedback Feedback Test Automation Builds Feedback
  • 6.
    • Maven is a software project management and comprehension tool
    • Using a project object model (POM), Maven can manage a project's build, reporting and documentation
    • Convention Over Configuration
    • Standardized Build Life Cycle
  • 7.
    • Module Inheritance
    • Plugins (reporting, testing, deployment, etc.)
    • Dependency Management
    • Artifact Deployment
    • Archetypes
    • War Overlays
  • 8. [email_address]
  • 9. [email_address]
  • 10.
    • Extensible continuous integration engine
    • Similar to CruiseControl, except that it easy to use and entirely browser based
    • Job creation literally takes minutes
    • Used as CI server and dedicated build machine
    • Remote slaves
  • 11. [email_address]
  • 12.
    • Java web application which serves as Maven proxy
    • Acts as one logical repository for publishing in-house and other external Maven artifacts which are not uploadable to Maven "central repository (like commercial projects, J2EE Jars, etc...).
    [email_address] centralMaven Repository Switchboarddefaulthttp://host:8081/proximity/repository/public
  • 13. [email_address] And this is what all this built up to: the Class of 2002/2003 Winter Semi-Formal. I'm the one in the duct tape tuxedo, hat, pants, cane, and shoes. Only the cane (which is over a wooden dowel rod) and the shoes contain non-duct-tape components, everything else is 100% pure tape. My date is Nicki *****, a friend from Math 223/224 . Her complete outfit (not everything pictured here) includes the dress, a handbag, a bow (for her hair), and a duct tape rose. Again, with the exception of the wire stem used in the rose, everything is 100% pure duct tape.
  • 14.
    • Navigate Builds
    • Give everyone a Test this Build button
    • Allows Testers to Pull their work
    Testers can Pull work
  • 15. [email_address] Start Build Deploy Build 1 2 3 4 5
  • 16.
    • Build once, deploy everywhere
    • maven assemble plugin
    [email_address] Artifact Dissection
  • 17.
    • Convention over configuration
    • Software build as environment-independent encapsulated package
    • Removing manual barriers
    • Integrate often
    • I hate live demos!
  • 18. [email_address] SITE URL Hudson Maven Proximity Sourceforge Proximity Deploy Me [email_address]