GitHub gets a CI/CD service
Microsoft’s GitHub today launched the beta of a new version of GitHub Actions with full continuous integration and delivery (CI/CD) capabilities built right into the service. General availability is planned for November 13.
The company also today announced that it now has more than 40 million developers on its platform.
Ten months ago, GitHub launched Actions, its workflow automation platform. Developers could already take actions to trigger all kinds of events and use that to build custom CI/CD pipelines. At launch, the GitHub team stressed that Actions allowed for building these pipelines, but that it was a lot more than that. Still, developers were obviously quite interested in using Actions for CI/CD.
“Since we introduced GitHub Actions last year, the response has been phenomenal, and developers have created thousands of inspired workflows,” writes GitHub CEO Nat Friedman in today’s announcement. “But we’ve also heard clear feedback from almost everyone: you want CI/CD! And that’s what we’re announcing today.”
With this updated version of Actions, developers can now build, test and deploy their code on any platform and run their workflows in containers or virtual machines. Developers also can test multiple versions of their applications in parallel thanks to a new feature called “matrix builds,” which lets you, for example, test three different versions of Node.js on Linux, Windows and MacOS at the same time. Because GitHub Actions are defined in a basic YAML file, making those changes is only a matter of adding a few lines to the file.
Supported languages and frameworks include Node.js, Python, Java, PHP, Ruby, C/C++, .NET, Android and iOS. Actions is also integrated with the GitHub Package Registry.
As the application is built, you also get live logs streamed to the Action console, and it’s easy to link to any line in a log file to discuss issues with the rest of your team.
These new features are available for free during the beta and will remain free for all public repositories.
Actions for GitHub Enterprise Server will launch next year and will include a hybrid option that will allow you to keep the code in a private data center and still use GitHub to orchestrate the workflows.
“GitHub Actions is the democratization of CI/CD and software automation. Developers can write workflows reacting to any GitHub platform event and reference open-source GitHub Actions — reusable pieces of code — to supercharge their software lifecycle the same way they are used to writing application code,” said Max Schoening, GitHUb’s senior director of Product Design. “It truly is community-powered CI/CD with a pricing model that works for everyone.”
With this launch, GitHub is now also competing more directly with some of the CI/CD startups that have built businesses on top of the platform. That’s likely to create a bit of friction.
“GitHub has made a commitment to keeping their platform open to all partners, but only time will tell,” CircleCI CEO Jim Rose said in a statement. “Ultimately, developers are smart and will choose the best, most powerful tools available on the market, and we’re confident that that’s where CircleCI will continue to be. […] With more than nine years of data and experience on how teams move from idea to delivery, CircleCI is the leader in CI/CD and we are confident we have the best solution for developers.”
I expect that Rose’s comment will echo that of other CI/CD players, though it’s also worth noting, as Rose did, that Actions can be integrated with other continuous integration services to allow developers to trigger builds on their platforms. These providers can also make their own Actions available on GitHub.
“We see GitHub actions as complementary to what Codefresh does. It’s an additional way that users can leverage Codefresh to build robust pipelines in a scalable way. One interesting thing is that GitHub followed our lead in how they architected Actions. You can actually use GitHub actions as steps inside a Codefresh pipeline. So you see, we’re actually very aligned,” said Dan Garfield, the chief technology evangelist at CI/CD platform Codefresh. “Developers can find the Codefresh action right on GitHub!”
When I asked GitHub about this, Schoening provided the following statement: “GitHub and our community believe in choice and an open ecosystem. That is something we take seriously and build into everything we do. GitHub Actions lets developers integrate with all their existing tooling, mix and match new developer products, and hook into all parts of the software lifecycle, including existing CI/CD partners.”