Home > Blogs > VMware vFabric Blog


How to Achieve Continuous Provisioning (CP) for Agile Development

The development practice of Continuous Integration has become a de facto standard for development teams trying to become more Agile. The benefits of Continuous Integration are extremely impactful and much has been written on the topic.  By automating the building and testing of software, a development team creates a repeatable and consistent build process.  By extending this process into the concept of continuous provisioning, a development team extends the same type of repeatability and consistency to application deployments.  If the up-front cost of automating the build and deployment of an application is nothing compared to the time and cost savings to be incurred, then why does automation stop there?  Why do most development teams still need to wait for the underlying infrastructure to be provisioned?  Why do developers and operations teams manually install and configure middleware (application servers, databases, etc)? 

This article will illustrate to teams how continuous provisioning can be leveraged during development.

Using Application Director For Continuous Provisioning

vFabric Application Director is a tool designed to automate the provisioning of applications to cloud-based environments.  If you haven’t seen it, you should check out the 5 minute demonstration or the post illustrating how to model applications. In addition to modeling and deploying applications and their environments to production, Application Director can also be used to incorporate continuous provisioning into the software development process.

How to incorporate Continuous Provisioning into your Agile practices

It is likely that the effort to provision an application environment at your organization includes many different people with different areas of focus.  Operations teams and development teams are often interdependent.  Operations teams measure success by producing stable environments, and development teams have a goal of delivering software functionality often and fast.  This silo approach frustrates communication and collaboration issues, two things Agile methodologies fiercely aim to avoid.  In contrast, by creating a unified DevOps organization, you can converge teams with a common goal of rapidly producing high quality software and services.

To incorporate Continuous Provisioning into your organization, a collaborative team environment should be formed.  To support this, Application Director assigns functional roles that can be applied to activities such as the creation and approval of application blueprints, managing the inventory of middleware available in the service catalog, and cloud template creation.

Integrating Application Director with Jenkins CI Server

Application Director can be integrated easily with any CI server (in this example, we’ll use the Jenkins CI Server) through a simple command line interface (CLI).  This approach could be used to teardown a complete application environment and quickly provision then deploy the end-to-end application environment on a daily basis (or whatever frequency makes the most sense for your project).

The first step is to create an application blueprint within Application Director to model your application and it’s environment.  This is accomplished by utilizing the intuitive drag and drop interface and catalog of cloud templates and middleware services.

Vfabric-application-director-app-blueprint

Next, a deployment profile needs to be created and saved.  A deployment profile encapsulates the specific settings and configuration for a specific environment.  In this case, a deployment profile could be targeting an integration, test, or dedicated environment for Continuous Provisioning.

Vfabric-application-director-deployment-profile

Once a deployment profile exists, it is possible to tear down and re-deploy (end to end) from a Spring Roo based command line interface provided by Application Director. The command line interface is invoked utilizing the following command:

java -jar darwin-cli.jar

Then Spring Roo commands are used to teardown and deploy:

teardown.roo

login –serverUrl https://192.168.110.204:8443/darwin –username admin –password vmware123

teardown –name "appd-Spring Travel-1.0.0-admin-37-4025b745-55d9-4f9f-8523-fd9ca2d89de4"

exit

deploy.roo

login –serverUrl https://192.168.110.204:8443/darwin –username admin –password vmware123

deploy –name "Spring Travel-1.0.0-dev_profile"

exit

You may have noticed a specific deployment identifier used when tearing down a deployment.  Because this process will be automated, it is important to obtain the latest deployment identifier when deploying in order to teardown the specific deployment before the next deployment.  Using the powerful sed utility, I’m able to modify the teardown Roo script in place so that it is ready for the next cycle.

deploy.sh

deployment_name=`java -jar darwin-cli.jar script –file deploy.roo | sed -n 's/^Name *\(.*$\)/\1/pw deploymentName.log'`

sed -i 's/\(^teardown –name *\).*$/\1\"'"$deployment_name"'\"/' teardown.roo

These scripts can now be called from a Jenkins build job utilizing a plugin such as the Post Build task plugin, similar to how you would accomplish continuous deployment with an application server (see Integrating Jenkins and Apache Tomcat for Continuous Deployment).  Importantly, the Continuous Provisioning process should include the same activities as Continuous Integration to ensure the latest application code is being tested against the latest version of application infrastructure.

Summary

It is possible to extend the same Agile benefits of continuous integration and deployment to the process of provisioning application infrastructure.  Continuous provisioning encourages interative based improvement, better collaboration, and improved system visibility.  By continuously improving the process of application provisioning, technical excellence can be achieved for all the moving parts of a system.

Jonathan-Fullam-picture-2404

About the Author: Jonathan Fullam has over 12 years of experience with software development with a heavy focus on enterprise Java based applications and open source frameworks. Currently employed by SpringSource, a division of VMware, Jonathan advises enterprises on building scalable architectures using modern technologies and tools.  With a passion for public speaking, he most recently presented Test Driven Developement at the 2011 Java Server Side Symposium.  Jonathan received his education from The College of New Jersey where he obtained a B.S. in computer science.

This entry was posted in Application Director, Spring and tagged , , , , , , , , , , on by .
Stacey Schneider

About Stacey Schneider

Stacey Schneider has over 15 years of working with technology, with a focus on working with sales and marketing automation as well as internationalization. Schneider has held roles in services, engineering, products and was the former head of marketing and community for Hyperic before it was acquired by SpringSource and VMware. She is now working as a product marketing manager across the vFabric products at VMware, including supporting Hyperic. Prior to Hyperic, Schneider held various positions at CRM software pioneer Siebel Systems, including Group Director of Technology Product Marketing, a role for which her contributions awarded her a patent. Schneider received her BS in Economics with a focus in International Business from the Pennsylvania State University.

51 thoughts on “How to Achieve Continuous Provisioning (CP) for Agile Development

  1. Sander

    Interesting article, but does the CP approach only make sense in virtualised / cloud infrastructure environments?

    Reply
  2. سایت تفریحی

    thanks…!!!
    پرشین نایس

    Reply
  3. آموزش برنامه نویسی

    oes the CP approach only make sense in virtuali

    Reply
  4. بین الملل

    is now working as a product marketing manager across the vFabric products at

    Reply
  5. بازی های رایانه ای

    modern technologies and tools

    Reply
  6. اخبارسیاسی ایران و جهان

    sented Test Driven Developement at the 2011 Java Server Side Symposium. Jonathan received his education from The College of New Jersey where he

    Reply
  7. مطالب و جزوه های تحقیقاتی

    before it was acquired by SpringSource and VMware. She is now working as a product

    Reply
  8. فناوری اطلاعات

    d marketing automation as well as internationalization. Schneider has h

    Reply
  9. اخبار ورزشی

    sented Test Driven Developement at the 2011 Java Server Sid

    Reply
  10. اخبار روز موبایل

    les and marketing automation as well as internationalization. Schneider has held roles in services, engineeri

    Reply
  11. اخبارحوادث

    Stacey Schneider has over 15 years of working with technology, with a focus on working with sales and marketing automation as well as internationalization. Schneider has held roles in services, engineering, products and was the former head of marketing

    Reply
  12. نرم افزار روز

    re pioneer Siebel Systems, including Group Director of Technology Product Marketing, a role for which her

    Reply
  13. اخبار اجتماعی

    CRM software pioneer Siebel Systems, including Group Director of Technology

    Reply
  14. اخبار فضای مجازی

    r public speaking, he most recently

    Reply
  15. اخبار تجارت

    with technology, with a focus on working with sales and marketing automation as well

    Reply
  16. بانک اخبار هنرمندان

    pioneer Siebel Systems, including Group Director of Technology Product Marketing, a role for which her contributio

    Reply
  17. اخبار خودرو

    ented Test Driven Developement at the 2011 Java Server Side Symposium. Jonathan received his education from The College of New Jersey where he obtained a B.S. in computer science.

    Reply
  18. دانستنی ها

    rketing automation as well as internationalization. Schneider has held roles in services, engineering, products and was the former head of marketing and community for Hyperic before it was acquired by Sprin

    Reply
  19. دنیای اقتصاد

    community for Hyperic before it was acquired by SpringSource and VMware. She is now working

    Reply
  20. گرافیک و کاریکاتور

    g supporting Hyperic. Prior to Hyperic, Schneider held various positions at

    Reply
  21. بازارموزیک

    Schneider received her BS in Economics with a focus in International Business from the Pennsylvania State University.

    Reply
  22. مدلباس

    ented Test Driven Developement at the 2011 Java Server Side Symposium. Jonathan received his education from The College of New Jersey where he

    Reply
  23. دوربین مداربسته hikvision

    tank

    Reply
  24. دوربین مداربسته هایک ویژن

    tank you

    Reply
  25. متخصص سئو

    thanks …..

    Reply
  26. Ali

    Galabet bahis sitesi hakkında detaylı bilgi almak için giriş yap. Galabet giriş

    Reply
  27. Mami

    Thanks

    Reply
  28. Musa

    Amazing post!

    Reply
  29. Cosman

    Thanks bro

    Reply
  30. Cosman

    Agile Development

    Reply
  31. Feno

    how to model applications

    Reply
  32. Makro

    Merci!

    Reply
  33. Cancel

    Thnx

    Reply
  34. Spoty

    thanxx

    Reply
  35. Artemi

    Good post!

    Reply
  36. Betkanyon

    Güzel içerik.
    Betkanyon yüksek deneme bonusları ile spor bahisleri ve casino oyunlarına yatırımsız bonus vermektedir. Betkanyon bedava bonus detaylarına sayfalarımızdan ulaşabilirsiniz. Betkanyon Giriş

    Reply
  37. Arzbet

    Başarılı!
    Arzbet mobil ödeme ile en az 5TL yatırma imkanı sağlamaktadır. Arzbet yatırım ve çekim limitlerini editörlerimiz sizler için güncel olarak düzenlemektedir. Arzbet Yeni Giriş

    Reply
  38. slotbar yeni adresi

    Great post! Thanksss

    Reply
  39. Hasan Kadrid

    Thanks admin… 77Betebet güncel giriş

    Reply
  40. Cratosslot Giriş

    Cratosslot https://www.cratoswin.com/

    Reply
  41. Cratosslot

    Cratosslot Giriş https://www.cratoswin.com/

    Reply
  42. Restbet Giriş

    Restbet https://www.bahisgazetemiz.com/

    Reply
  43. Restbet

    Restbet Giriş https://www.bahisgazetemiz.com/

    Reply
  44. Ngsbahis Giriş

    Ngsbahis https://www.bahisgazeten.com/

    Reply
  45. Ngsbahis

    Ngsbahis Giriş https://www.bahisgazeten.com/

    Reply
  46. Goldenbahis Giriş

    Goldenbahis https://www.bahisgazeten.net/

    Reply
  47. Goldenbahis

    Goldenbahis Giriş https://www.bahisgazeten.net/

    Reply
  48. Cratos Sporting Giriş

    Cratossporting Giriş https://cratossporting.net/

    Reply
  49. Cratos Sporting

    Cratossporting https://cratossporting.net/

    Reply
  50. Cratossporting

    Cratos Sporting Giriş https://cratossporting.net/

    Reply
  51. Egt Slot

    Egt Slot https://www.egtslot.com/

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

*