In a Monday morning announcement that users of Visual Studio Team Foundation Server (TFS) may have had reason to suspect was already in the works, Microsoft moved Visual Studio Team Services (VSTS) — its developer workflow collaboration engine that includes TFS, and one of the company’s key revenue generators — into the company’s Azure cloud services. The move creates a new product line called Azure DevOps, available now, along with a consolidation of several developer-targeted products and services into a single set of SaaS services for CI/CD, with a clear intent to compete against CloudBees’ Jenkins.
“Azure now has a new set of five DevOps services,” Jamie Cool, Microsoft’s newly retitled director of product management for Azure DevOps, told The New Stack. “They’re going to help developers be able to ship faster, [with] higher quality. Oftentimes when I have conversations, ‘DevOps’ can mean different things to different folks. So to us in this context, we really think of DevOps as the people, the process, and the products for delivering constant value to customers.”
Shiny New Pipelines
Cool explained how these five services jointly support what he described as a DevOps pipeline, essentially synonymously with CI/CD. Such a pipeline will now be modeled as part of Azure’s cloud native service, although he emphasized that its purpose will not necessarily be to land deliverable software in Azure itself. Only the pipelines exist in the public cloud, whereas conceivably, updates that pass the testing phase may be deployed in any on-premises scenario, or in someone else’s public cloud. (Cool only explicitly mentioned Amazon AWS, though new product literature released Monday also listed Google Cloud Platform.)
The backbone of the new service will be Azure Pipelines, which Cool said will automate the building and deployment of accelerated release cycle components for Windows, Linux, and MacOS. Microsoft is describing its tools for guiding components through these pipelines as agents — services that monitor the lifecycle of components as they proceed to whatever destination the customer has in mind for them.
“There’s essentially a pipeline that’s continually going,” said Cool, “that you’re using to ship and deliver your actual software. And you feed into that pipeline your source repos and your artifacts and packages. You test the code going into that pipeline. And you increasingly use Kanban, Agile, different methodologies to do the planning for all of this.”
By “Kanban,” Cool is referring to a bulletin-board-style system of visualizing and directing collaborative workflows, based on a production system devised by Toyota Motor Corp. Originally, it was a way of visually recording the parts manufacturing processes in progress, along with those other processes that were dependent on them, to conserve work expenditures to only those parts that were necessary within a short interval of time. Kanban’s originator, legendary Toyota VP Taiichi Ohno, translated his concept into English using the phrase “just-in-time manufacturing.” American automakers later picked up on the concept, coining the abbreviation “JIT” and pre-dating the Java virtual machine by well over a decade.
Today, the project management SaaS service Asana uses a form of the Kanban concept as a means for tracking jobs and responsibilities for general enterprises. Azure DevOps will use its own take on Ohno’s system for Azure Boards [above], one of its five pillar services. The other three are: Azure Artifacts, which acts as the service’s package manager for code sharing, and is compatible with NPM, Maven, and NuGet; Azure Test Plans, with which customers can employ scripted tests on web app components; and Azure Repos, which hosts an unlimited number of private Git repositories.
Git’s and GitHub’s Places in the New Scheme
This last pillar is rather interesting, given the recent news of Microsoft’s pending acquisition of GitHub, on track for completion by the end of the year. It is GitHub that has been credited with repositioning the entire server-based software market around the open source model. Analysts and observers have been anxiously expecting Microsoft to hard-wire GitHub into its existing product lines, most notably what we had been calling, up until Monday, the Visual Studio line.
But in a note to The New Stack on Monday, a Microsoft spokesperson stopped well short of declaring the two collaboration systems integrated, either now or in the future. The spokesperson did point out Azure Pipelines’ immediate availability on the GitHub Marketplace, calling it symbolic of “a deepening of our long-term partnership with GitHub to make the CI/CD experience as easy as possible for developers.” But the spokesperson went on to point out the existence of eight alternative systems on the same Marketplace, “giving GitHub customers fantastic choice.”
A check of the GitHub Marketplace page for Pipelines today confirmed that Microsoft is giving away resources for open source projects, including up to 10 parallel jobs per month and unlimited minutes for public repositories. For private repos, the service provides just the first 1,800 minutes per month free for the first parallel job. This gives open source developers who use Microsoft tools a new means of utilizing a branded CI/CD service for free, including free access to Windows and Linux virtual machine pools for running tests.
“Microsoft has definitely been on a journey to a new place over the last six, seven years,” said Cool. “As part of that, we’ve really embraced the notion of open, extensible tools, and we’ve embraced open source, both in consuming it and contributing back to it. We look at this as kind of a next step on that journey, in things we’ve been doing in that space.”
The Fork in the Road Ahead
The Visual Studio brand is not disappearing. Indeed, a great many more developers outside the Windows space who hadn’t participated in that brand before, are now doing so by way of Visual Studio Code (VS Code), the free and stand-alone code editor. Instead of going head-to-head against Eclipse, Microsoft surprised most everyone a few years back by enabling it to be integrated into the Eclipse IDE as an alternate editor.
But the transition of TFS, which will soon be renamed Azure DevOps Server, marks the close of a chapter of Microsoft history beginning in 2006, with its first efforts to re-engineer Visual Studio from an application into an online service. The cloud is now the center of Microsoft’s developer-focused efforts, even for projects that are not themselves cloud native.
At issue going forward will be Microsoft’s direct association between its principal developer collaboration service, based around CI/CD, and DevOps as a whole. CI/CD is not new to VSTS. But with this move, Microsoft joins a growing list of competitive vendors that boldly and emphatically align the tools and services with which CI/CD is delivered, with DevOps. That could place the company’s stance in opposition to that of DevOps practitioners who advocate a decoupling of human practices from software-based tools and infrastructure.
What’s happening now with Jenkins could become a preview of coming attractions for Microsoft, should it follow on its same road. As InfoWorld reported Monday, CloudBees Chief Technology Officer and Jenkins creator Kohsuke Kawaguchi has begun advocating for two separate development paths for Jenkins: one cloud native, the other more traditional yet accelerated. While the former would embrace microservices, it would be the latter project that would be encouraged to try new things, break code more often, and “fail fast.”
It’s a not-so-subtle acknowledgment that the pace of the development lifecycle for users of cloud native services may not yet have attained, and may indeed never reach, the high gear required for in-house development, where an organization’s sysadmins and IT operators — the “Ops” part of the portmanteau — remain part of the picture.
Microsoft’s Jamie Cool would rather frame cloud native development as driven by the parallel needs to speed up and to control costs.
“There’s a huge wave of customers that are in the process of moving to the cloud,” he told The New Stack, “and there’s huge benefits they get out of that. One those benefits, obviously, is cost savings on multiple fronts. But another huge benefit in this is, really, all about the DevOps transformation. They all want to go faster; they all want to go through this cloud transformation. Moving to the cloud goes hand-in-hand with it, because you save money, but also it’s about saving time and making things faster. You don’t have to go spend days to get the IT department to spin up things for you; you just, like, do it with a button press.”
The New Stack Managing Editor Joab Jackson conducted the interview for this story.
CloudBees, Google and Microsoft are sponsors of The New Stack.