CI Tools and Best Practices in the Cloud

Continuous Integration

Subscribe to Continuous Integration: eMailAlertsEmail Alerts newslettersWeekly Newsletters
Get Continuous Integration: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn

Top Stories

We have Continuous Integration and we have Continuous Deployment, but what's continuous across all of what we do is people. Even when tasks are automated, someone wrote the automation. So, Jayne Groll evangelizes about Continuous Everyone. Jayne is the CEO of the DevOps Institute and the author of Agile Service Management Guide. She talked about Continuous Everyone at the 2016 All Day DevOps conference. She describes it as "about people, culture, and collaboration mapped into your value streams." We all hear about the importance of people, culture, and collaboration, but how well are they integrated into our organizations and processes? Is it in everything we do? Is it inherently continuous? It all starts with culture. The Business Dictionary defines culture as "The values and behaviors that contribute to the unique social and psychological environment of an orga... (more)

The Tech Room: Dart Support

Continuous Integration and Deployment for Dart projects There is change coming to our browsers. Google has been working on the Dart language, their replacement for Javascript, for quite a while now and we are happy to officially launch our Dart support today. Take a look at the Dart Tutorial to get a feel for this new language. It is being developed by Lars Bak, Kasper Lund and a large team that has already brought us the V8, so speed is a major concern for them. Setting up Continuous Integration and Continuous Deployment for your Dart projects is easy on the Codeship. How to set up your Dart projects We install the latest version of Dart available and will update regularly until the 1.0 release of Dart. You can use all tools coming with the SDK: Dart-to-JavaScript compiler Dart VM Dart package manager Dart Analyzer Dart Documentation We’ve added Dart as one of the ... (more)

Viewtier Introduces Statistics and Reports for GoogleTest

MOUNTAIN VIEW, CA -- (Marketwire) -- 10/20/09 -- Today Viewtier Systems announced that it integrated Viewtier Parabuild with GoogleTest, a popular framework for writing unit tests in C++ on a variety of platforms. The integration is available immediately. "Unit testing is an important practice that helps software teams develop better software faster," says Slava Imeshev, president and CTO of Viewtier Systems. "Parabuild promotes unit testing by providing teams using GoogleTest an instant view into test trends." Parabuild parses XML logs generated by GoogleTest, and creates formatted reports and statistics charts for GoogleTest. The logs are usually produced as a part of a Continuous Integration cycle or during a scheduled build. About Parabuild Parabuild, the Software Build and Release Management System, is a tool that builds, tests and manages software releases for... (more)

Expanding CloudBees Partner Ecosystem Puts More Services in the Hands of Developers

CloudBees, Inc., the Java Platform as a Service (PaaS) innovation leader, today announced the addition of new Verified partners and their services to the CloudBees Partner Ecosystem, making it easier than ever for developers to quickly and easily build, test and deploy Java applications in the cloud. This latest expansion of the CloudBees Partner Ecosystem offers developers access to even more services that work on the CloudBees Platform. Partners who join the Ecosystem at the Verified Solutions Partner level enjoy the benefit of exposing their services to thousands of cutting-edge Java developers at a very low barrier to entry. “When a customer is selecting a platform to build, run and manage their applications, they're looking for one that supports their specific application needs," said Andrew Lee, vice president, business development, CloudBees. “The need might ... (more)

Simula Labs Launches Hosted Delivery Platform To Enable Enterprise Open Source Adoption

Simula Labs announced the availability of a complete hosted distribution delivery platform for complimentary open source technologies with the Community-oriented Real-time Engineering (CoRE) Network. The CoRE Network is the first delivery platform to offer enterprise IT a comprehensive framework for successfully adopting open source projects and processes through its hosted service, support and artifact repository platform. Simula Labs was conceived to accelerate open source adoption rates, by identifying and then building open source companies in key infrastructure market segments. Simula Labs’ CoRE Network naturally evolves this strategy, by providing a robust, community-oriented marketplace that gives enterprises a complete roadmap for adopting, managing and leveraging open source technologies from leading open source partner companies, including Covalent T... (more)

How To Deploy Scalable WebSphere Applications Using "Maven" Build Tool

When people talk about scalability, they are usually referring to how well an application performs with an ever-increasing load. Another type of scalability that needs attention during an application's life cycle is build scalability, or how well an application's build and deployment scales with ever-increasing complexity and components. Maven is a build tool from Apache that addresses build scalability. Maven uses simple project descriptors and a highly extensible and open architecture to build, deploy, and release application components. Through project descriptors, new components can be added to an application's build with little effort from a developer. Once added, Maven determines the component's placement in the application build order through its dependencies, and builds, deploys, and releases the new component and application bundle accordingly. This articl... (more)

Automatic Integration with CruiseControl.NET, NAnt, and NUnit

One of the most important and yet overlooked aspects of a software development project is the concept of regression testing during implementation. Regression testing is the practice of running tests for previously tested code following modification to ensure that faults have not been introduced or uncovered as a result of the changes made. In this article I will outline the need for continuous integration, automated builds, and testing, which support the tenets of regression testing and provide automation for the process. I will also introduce some of the free open source tools that can be used to effectively employ a continuous integration process, and we'll take a look at a scenario that demonstrates their use. The Case for Continuous Integration If you are a project manager, lead developer, or perhaps a tester on a software development project you may have heard t... (more)

Maven: A Different Way of Looking at Software Development

Software development is typically carried out in an opaque environment where progress can be slow and (too often) the resulting build processes lack visibility, transparency, and collaboration. The Apache Software Foundation's Maven project approaches the problem of building software by providing the technical underpinnings for a set of development methods that enable engineers and other stakeholders in a project to optimize build reliability, accelerate build velocity, and capture and share build knowledge. Maven differs from current script-based approaches to building software by first defining, standardizing, and then publishing the build process as a logically organized structured lifecycle. Having evolved from the Open Source development world of distributed, asynchronous, iterative, and highly component-based engineering, Maven's technology helps development t... (more)

An Introduction to Maven - Part III

In the parts 1 and 2 of this article, we demonstrated how to download and install Maven 2, how to install the Maven 2 plugin for Eclipse, and how to go about setting up a project directory structure using Maven 2. We used a simple use case for displaying employee details on the Web given an employee ID, but deliberately made the design a bit complex by introducing design concepts such as XML binding, EJBs, and JCA connectors to illustrate a few of the many features offered by Maven. In this final installment of the article, we continue with the remaining modules in our example and illustrate a few more developmental tasks that can be accomplished fairly easily using Maven that otherwise would demand significant time and effort to accomplish. As described earlier, the 'connector' module yields a RAR artifact containing a JCA connector that uses 'xmlBinding' classes to... (more)

Managing an Open Source Project for DotNetNuke

In December 2004 it was decided that DotNetNuke would break out its existing core modules into separate Projects so that they could be enhanced, released, and supported independently from the core Web Application Framework. It was further decided that some additional modules would also be added as official Projects to provide an increased level of richness to the platform. The first modules that we determined were going to be added were the TTT Forum and TTT Gallery, authored by Tam Tran Minh of TTT Corporation. I was already working closely with Tam on these modules, and I volunteered to co-lead the development of these Projects and to help morph them into modules that take full advantage of the DotNetNuke Web Application Framework. When the projects were first starting, the current DotNetNuke framework was in a transition. This transition included breaking changes ... (more)

An Introduction to Maven - Part I

Maven is a promising application development lifecycle management framework coming from Apache's armory of open source tools. Maven was originally developed as a framework to manage and mitigate the complexities of building the Jakarta Turbine project and soon became a core entity of the Apache Software Foundation project. Without a uniform application development lifecycle management framework, different development teams would create their own build frameworks with varying flavors and complexity and this tendency would only proliferate as more and more new projects get developed. The creation of different build approaches for different projects would lead to build system disparity lacking reuse of build logic that would impede developers in moving easily between the projects because every time a developer starts working on a different project, the developer would... (more)