Microsoft’s masterclass explains how businesses can deploy a cloud-native microservice app with GitHub Actions
As digital transformation becomes critical for business growth, it's becoming imperative to learn and integrate and open Microsoft cloud products and services. To be efficient and effective, businesses need to learn the implementation of DevOps in cloud-native scenarios.
Microsoft and YourStory’s latest webinar highlighted the procedure around deploying and maintaining cloud-native apps with GitHub actions and Azure pipelines. The live masterclass - Deploy a cloud-native microservice app with GitHub Actions - was a heavy demo-driven session, where the audience had the opportunity to learn how to implement GitHub Actions to build a container image and deploy it to Azure Kubernetes Service. They were acquainted with DevOps, and how to set up a DevOps workflow from a CI/CD perspective.
The masterclass was conducted by Vivek Shridhar, Senior Cloud Advocate, Developer Relations, Cloud & AI Engineering at Microsoft. Vivek has previously worked for companies such as IBM India, HCL Technologies and BlackBuck. He has also co-founded and was the chief architect at NoodleNext Technology.
Giving an overview of DevOps, Vivek mentioned that it is a union of people, processes, and products to enable continuous delivery value to the end-users. “Some immediate issues that are often encountered with DevOps include developer accessing production, product team pushing developers to push code to production, no process for code release to production, no code reviews, no monitoring system, no-log management, and no GitHub strategy,” shared Vivek, highlighting that it’s essential to have the right set of processes and culture, so that people's mindsets can steer towards change.
Explaining the essentials of effective DevOps, Vivek mentioned the need to change the culture and mindset of the developer. It is also imperative to ensure that the developer is able to replicate the code or bug, which is coming from the code.
Vivek further explained that the code, which is going into production, must be well-tested.
“It is not just about having the code and pushing it to go to production; it is also about maintaining code in the production. It is a costly affair. We have used Kubernetes, but one can also use container apps. These ensure continuous quality and security, and collaboration,” shared Vivek.
What is CI/CD?
Adding to the discussion of continuous integration, Vivek shed light on CI/CD.
“There is a way to capture the feedback of your code. Today, there is no loss in time because as soon as I push code, within two hours, I know the quality of my code. There is a code review and then CI/CD,” he explained while talking about the process of automating the build and testing of code.
Presenting an overview of CD, Vivek said, “CD is the process to build, test, configure and deploy from a build to a production environment. Multiple testing or staging environments create a release pipeline to automate the creation of infrastructure and deployment of a new build. There is no approval process — the code goes directly to production.”
Diving deep into GitHub Actions
GitHub Actions help users automate software development workflows, from within GitHub. One can deploy workflows in the same place, where the code is stored and collaborate on pull requests and issues.
“Everything is considered an event. Whenever an event is running, there are runners 1 and 2. A runner is nothing but infrastructure. The only difference today is that all these things are happening directly from GitHub; the platform has been provided to us, so we do not need to build an infrastructure unless we want to,” shared Vivek, highlighting examples of how to visualise the workflow file.
While giving the demo, he pointedly spoke about creating a workflow for a code, it is essential to have settings to access Azure. In his own case, he built the code and deployed it to the Azure Kubernetes cluster. Next, the code was packaged and an image was created, before being pushed to the Azure container registry.
“In GitHub, you can head to actions, where you will find how to use a specific template. What are the things you need to use for this specific template? It is all set here. We don't need checkout, we need to access other actions from GitHub,” explained Vivek, while explaining the flexibility provided by GitHub Actions and summed up the session by detailing out the checkout mechanism for codes.
For more information on hackathon and to register your startups,