Tales from Continuous Integration and Continuous Delivery for


Level-0-Navigation Mitschreiben Über uns Autoren Kontakt DE Suchen Suchen nach ...

Senden Submit

Suchen Suchen nach ...

Home Meet & Greet Top Jobs Mitschreiben Über uns Autoren Kontakt 0

Autor : Daniele Ulrich Mehr über diese Autorin/diesen Autor

Tales from Continuous Integration and Continuous Delivery for VMware vRealize Suite 1

We have accepted the challenge to build a multi-enterprise multi-tenant cloud infrastructure. We will be working in large distributed teams in an agile way and establishing DevOps culture right from the start. Having chosen VMware’s vRealize Suite we checked out the whole toolbox including Code Stream and the Management Pack for DevOps IT (aka. Houdini) and found a lot of promising approaches.

[email protected] This track from VMworld Las Vegas shows how converged blueprints can be treated as pure infrastructure as code and continuously be deployed on any target systems: DEVOP7674 – vRA, API, CI, Oh My!!! (Please check the session recordings from VMworld) The demos look quite good and contain some interesting propositions but do not explicitly cover an integrated solution for version control, no proposition for vRealize Orchestrator code and you can hear Ned, our head of technical orchestration, asking the first questions at the end of the track addressing the most obvious pain points for the vRealize toolset: lightweight development environment and unit tests on the developer’s laptop. Ned left the VMworld Las Vegas with a list of requirements that are not met and started a project to enable a seamless integration into eclipse with local debugging capabilities build on top of the VCO-CLI – he will be invited to introduce his work on this blog. The development using the out of the box vRealize Orchestrator client is at least a start but with the complete lack of a usable integration with a version control system it doesn’t really merit the „I“ in IDE. The JavaScript workflow and action language cannot be properly debugged (only between tasks but not within an workflow step) and it is hardly possible to mock dependencies to external system so that it always ends up in full integration testing instead of having the possibility to do proper unit testing. In another track we’ve learned how Fannie Mae is handling vRA and vRO artefacts in a multi-tenant environment. MGT8499 – Moving to Infrastructure as Code: How Fannie Mae Is Managing vRealize Suite Artifacts with Code Stream (Please check the session recordings from VMworld) Trent TeSelle (@tteselle) did a very good job at Fannie Mae and his speech at VMworld was very inspiring. I met him at the VMworld in Barcelona and could ask him a lot of additional questions on his experiences with a real world application of a large scale. They are handling, however, only the vRA and vRO artefacts with this tool chain. As we are planning to have additional cloud native services that do not run directly on vRA or vRO, we will need a CI/CD pipeline around Code Stream and Houdini.

Working with partners Our development partners showed us how they are usually working on vRO workflows: By expanding a vRO package into a folder on the local file system a maven project structure is created. These maven projects can be checked in into GIT and can be combined with the usual dependency mechanisms that maven offers (artefact-id, group-id, version). They selectively checked in some files (usually the one containing the javascript code) into GIT on the CLI and could do file compares on the web frontend of GIT (pull requests). vRO stores these artefacts in XML format so the javascript can be found in a CDATA tag what can be disturbing if you expect to see the clean code snippets. vRO has an internal versioning system but by using the maven project structures you will be responsible to adjust the version numbers manually (maybe there is a plugin that takes care of this?).

Our development partners are testing the workflows manually because it is not possible to mock dependencies in the workflows and testing boils down to do full integration tests with the necessity to set up to a test baseline and tear down all constructed objects (VMs, NSX objects) to free resources. In addition, such integration tests should run in fairly good isolated environments in order not to interfere with other work load (parallel tests or even productive workload).

CI/CD concept & requirements To summarize our requirements:

We want to have everything software defined -> infrastructure as code We will have our code and build pipelines under version control We will have build, packaging, testing and deployment as automated as possible We will continuously integrate, test, deliver and deploy in any target environment We have chosen concourse.ci for an overall build orchestration and pipelining platform and are still evaluating other tools for the ci/cd-chain.

CI/CD concept: Concourse.ci triggering Houdini

In the first stage (Integration) we’re triggering Houdini via the vRA REST API only to fetch and publish content because of the lack of VCS integration. We’re planning to build and package the vRA and vRO artifacts with the maven build tools. Once successfully integrated the binary artifacts can be deployed to the target systems with Houdini – the customization to the target environment (environment specific properties) has to be developed within concourse.ci. We consider handling these content types within our CICD. vRA: (source is the Fannie Mae Talk) Blueprint Software Build Profiles Property Definitions Resource Actions Dynamic Types Icons Event Broker Subscriptions vRO: Workflows Actions Configuration elements Packages In addtion we want to have the code for microservices for custom extensions on top of vRA together with the build and deploy scripts fully integrated in an overall build pipeline..

Sprint Goals In this sprint we have set up the tool chain on a lab stack in order to be prepared to start the first sprints.

Flow for vRO artefacts: 1. 2. 3. 4. 5. 6. 7. 8.

Expand packages to directory and import to topic specific GitHub branch Checkout from GIT into Concourse.ci build pipelines Build vRO packages and check for dependencies Deploy to test environment (for master branch to CICD master environment) Perform integration test workflows If all tests are successful deploy to integration environment Capture from integration environment (Houdini) Deploy to all target environments as needed

Step 1 to 5 can be done on a specific topic branch on the dedicated topic environment

Flow for vRA artefacts: 1. 2. 3. 4. 5. 6. 7. 8.

Export Blueprints (and other content) using REST to disc and import to topic specific GitHub branch Checkout from GIT into Concourse.ci build pipelines Build vRA packages and check for dependencies Deploy to test environment (for master branch to CICD master environment) Perform integration test workflows If all tests are successful deploy to integration environment Capture from integration environment (Houdini) Deploy to all target environments as needed

Step 1 to 5 can be done on a specific topic branch on the dedicated topic environment

Flow for cloud native artefacts: No change to existing build procedures. GIT workflow with push2cloud for deployment.

Goals achieved Export Code from Concourse as a Maven project and commit to Git CI Round-trip on Concourse.ci Build code with Maven Package code as *.package Deploy *.package to central Repository (Maven Nexus) Deploy *.package to CI-vRO Trigger Integration-Tests on CI-vRO

Next steps Next we want to check out Houdini (Management Pack for IT DevOps 2.2) that we received recently. We already have learned that Artifactory will be removed with 2.2, the vRA and vRO files are now stored as flat files and not in the compressed packages as before but still without a native support of GIT version control. So, let’s stay foolish, hungry and prepared for change. And, yes, stay tuned if you’re interested into further tales of the continuous struggle for the brave new world of DevOps with VMware vRealize Suite. We will keep you updated on our experiences on this blog and want to share how we are developing in large distributed teams with a full fledged CI/CD pipeline. Credits to Christoph, Manuel, Philipp, Johannes and Marco for having done a good job! Innovation Software Virtualization

Hat dir dieser Beitrag gefallen? Liken 1 Autor

Daniele Ulrich ICT Architect Swisscom Profil anzeigen Nachricht

Weitere Beiträge Top von Raphaël Rollier Combining big data and breast milk: the successful bet of a Swiss SME 5 Mehr lesen Top von Oliver Mägert Publications mit SAP Business Objects und Crystal Reports 14 Mehr lesen von Janic Siegenthaler Wie aus einer Wohnung eine Innovationswerkstatt wird 6 Mehr lesen Job

DevOps Engineer IT-Software Entwicklung 80% bis 100% Bern und Zürich Zur Jobseite Weitere Beiträge anzeigen Weitere Jobs anzeigen

The 5 Must-Attend Startup Events in Switzerland 2017 Last week, a new innovation manager joined my team at Swisscom. Metin has a track record in open innovation and startups but is new to the Swiss startup ecosystem, and now needs to get up to speed quickly. One of the best ways to understand what’s going on and to meet the relevant startups is events and conferences. So which ones are the top events that you need to attend?

Stage time @ START Summit 2016 I thought I’d share our list because it can help everyone interested in immersing in the Swiss startup scene. I’m aware that this selection is subjective and does leave out some very cool events. However, I believe the compilation has a good balance across geographies, stages and perspectives: Start Summit is on March 24/25. This entrepreneurship conference started out in 2012 as a small student initiative, which doubled the number of participants each year to an impressive 1,500 visitors last year. It is still run by students and attracts not only Swiss entrepreneurs but like-minded people from all over Europe. Because of HSG’s reputation, they can attract top speakers such as the Bibop Gresta, COO from Hyperloop Transportation Technologies. In addition to the talks on two stages there are a lot of entrepreneurship initiatives with a booth and a joint hackathon with ETH Zurich (we are also there). The focus is on fintech. Overall: This conference is professional and fun! EPFL Startup Night is one of the best networking events in the startup scene for Lausanne and Geneva. The selection of speakers is usually great and you’ll find around 30 startups with their own booths to see what they do. It is also the place to be of startup investors in Western Switzerland and will be on April 26. If you are looking to work for a startup or need co-founders or employees, you should apply to the Startup Speed Dating events taking place in May and October. Each time, they match about 40 startups with over 120 candidates. Organized by the ETH Entrepreneurs Club, the entrepreneurship initiative from ETH Zurich, which has built an impressive line-up of events, this is hands down the best marketplace for startup recruiting in Switzerland. If you want to go a bit more techy, you mustn’t miss HackZurich. Initiated by the EHT Entrepreneursclub, this is now become the largest hackathon in Europe. Over 500 hackers from more than 30 countries participated in last year’s event. Save September 15–17 if you’d like to be there. Coming out of the CTI Invest community, the Swiss Startup Day event in Berne is the annual get-together of the Swiss startup scene – startups, investors and corporates got to be there. Great keynotes (last year with Bundesrat Johann Schneider-Ammann), a VC pitching and over 600 one-on-one sessions with investors make this day a must. The next edition takes place on Oct 25 with an investors’ dinner the evening before (invitation only). In addition to those bigger annual events it may be worthwhile to also check for smaller events here: ImpactHub, KickstartAccelerator, SECA:, Innovaud, Fongit, Digitalswitzerland and of course our Pirates Hub Newsletter. Looking forward to seeing you around! You can follow me on Twitter & Instagram @pennyschiffer.

HackZurich Demo Day Mehr lesen



Teilen Favorisieren Home Über uns Jobs DE AGB Impressum Kontakt

© Copyright Swisscom 2017 © Copyright Swisscom 2017


Tales from Continuous Integration and Continuous Delivery for

Level-0-Navigation Mitschreiben Über uns Autoren Kontakt DE Suchen Suchen nach ... Senden Submit Suchen Suchen nach ... Home Meet & Greet Top...

578KB Sizes 2 Downloads 16 Views

Recommend Documents

Continuous Integration & Delivery - DevOps Bookmarks
Concourse. Concourse is a CI system composed of simple tools and ideas. It can express entire pipelines, integrating wit

Continuous Integration, Delivery and Deployment: A Systematic
Mar 22, 2017 - This paper also reveals that continuous practices have been successfully applied to both greenfield and m

Continuous Delivery Workshop - PDF - DocPlayer.net
55 Conway s Law organizations which design systems... are constrained to produce designs which are copies of the communi

What Continuous Delivery Means for Testers, QA Teams and Software
Dec 1, 2015 - Simon Knight works with teams of all shapes and sizes as a test lead, manager & facilitator, helping to de

Towards Continuous Delivery at SoundCloud - SlideShare
May 12, 2015 - Apostila de violão - Módulo Iniciante. Antonio Marcos Costa Baratieri · Microservices kept simple. Vito

The Deployment Production Line - Continuous Delivery
show how to fully automate your testing and deployment process using a multi-stage automated workflow. Using this “dep

Building a Continuous Integration Pipeline with Docker
Additionally, there is a GitHub repository which hosts the application to be tested along with a Dockerfile to build the

The next generation of continuous integration - Opensource.com
Dec 16, 2015 - Traditional continuous integration (CI) systems are designed as a pipeline of jobs. You have a peer revie

Comparison of continuous integration software - Wikipedia
The following table compares the features of some of the most popular continuous integration software; it is not compreh

Moving towards Continuous Integration - CERN Indico
Jun 8, 2016 - ("Learning Continuous Integration with Jenkins", by Nikhil Pathania, 2016). ▫ CI was first named and pro