Setting up a CI/CD Pipeline with GitHub Actions & Netlify

In this video, we look at how to set up both a Continuous Delivery and Continuous Deployment process with Netlify (and the difference between both approaches).

  • 0:00 What is CI/CD?
  • 1:22 What we are building
  • 2:43 Setting up CD in Netlify
  • 8:00 Configuring Auto Deploy/Manual Delivery
  • 9:03 Using the CI/CD Process
  • 15:36 Reviewing a Deploy
  • 18:35 Conclusion

DevOps tutorial series:


What is GEEK

Buddha Community

Setting up a CI/CD Pipeline with GitHub Actions & Netlify
Derek  Champlin

Derek Champlin


Working with GitHub Actions

GitHub has become one of the most widely used Source Code Repository. Its Distributed Version Control System helps the developers for faster development and Integration of their code. Recently, it launched GitHub Actions in beta which enabled developers to create automated workflows to build, test, and deploy their source code on GitHub.

In this article, we will discuss about GitHub Actions and how it can be used to build an automated software development life-cycle workflow.

Below are the things we will discuss in this article:

About GitHub Actions

Using GitHub Actions, we can create custom workflows that will help to build, test, package, release or deploy the code without leaving the GitHub UI. It enables us to build Continuous integration and Continuous Deployment capabilities directly in our repository. Here are some important features about GitHub Actions.

**YAML based process: **The workflow is written in YAML. Hence it is easy to create, read and use the actions that make up the workflow.

**One Place for everything: **By using GitHub Actions, we can build and test the developed code directly in our repository. There is no need to worry about integrating the source code repository with other build and deployment tools. Everything can be done in one single place.

**Easy to integrate code: **Since enabling CI/CD directly in the repository is possible using workflows, creating merge requests(MRs), building, testing and integrating them become way more seamless.

#tech (re)view #build #cd #ci #ci-cd #github #github actions #gitlab-ci #gradle #java #test

Matt  Towne

Matt Towne


Serverless CI/CD on the AWS Cloud

CI/CD pipelines have long played a major role in speeding up the development and deployment of cloud-native apps. Cloud services like AWS lend themselves to more agile deployment through the services they offer as well as approaches such as Infrastructure as Code. There is no shortage of tools to help you manage your CI/CD pipeline as well.

While the majority of development teams have streamlined their pipelines to take full advantage of cloud-native features, there is still so much that can be done to refine CI/CD even further. The entire pipeline can now be built as code and managed either via Git as a single source of truth or by using visual tools to help guide the process.

The entire process can be fully automated. Even better, it can be made serverless, which allows the CI/CD pipeline to operate with immense efficiency. Git branches can even be utilized as a base for multiple pipelines. Thanks to the three tools from Amazon; AWS CodeCommit, AWS CodeBuild, and AWS CodeDeploy, serverless CI/CD on the AWS cloud is now easy to set up.

#aws #aws codebuild #aws codecommit #aws codedeploy #cd #cd pipeline #ci #ci/cd processes #ci/cd workflow #serverless

Harber Jazlyn

Harber Jazlyn


CI/CD with Vue, Firebase Hosting and Github Actions

Even if you’re the only developer in a project, you still have to make sure you automate your deployment process and follow certain steps in order to prevent bugs sneak into production code. Writing tests is the first step of it. But then, running those tests everytime you make a change in the code is a time consuming process where you can benefit from some automation.

This is where Github Actions come into play: How about creating a workflow in Github Actions which will run the tests for you when you make a pull request and won’t allow merging to master and deploying to production if the tests fail? That would really help with avoiding unintentional deployment of buggy code. Another important point is not forgetting to deploy your code into production when a pull request is merged to master. The Github workflow that we are going to create will also handle that by automatically deploying to Firebase Hosting when a pull request is completed.

Let’s see how it’s done step by step:

Creating a Vue Project

First of all, make sure your Vue CLI is up-to-date. As of this writing, the latest version is 4.5.8. You can check your current installment with this terminal command: vue --version .

If you have an older version, you can update by npm update -g @vue/cli or if you never had installed before you can install it globally by npm install -g @vue/cli.

Next, let’s create a brand new vue project called “vue_ci_cd” with the command vue create vue_ci_cd_example.

Not all settings are relevant for the purpose of this tutorial, but make sure the following settings are handled as follows:

  • Please pick a preset: Manually select features
  • Pick a unit testing solution: Jest
  • Pick an E2E testing solution: Cypress (Chrome only)

It will then install all the necessary dependencies for the app. If everything goes well, you should be able to run the app with this command cd vue_ci_cd_example && npm run serve .

#firebase #github #vuejs #ci-cd-pipeline #github-actions

Mikel  Okuneva

Mikel Okuneva


GitHub Demo Days - Using GitHub Actions for testing cloud native applications

What makes a project successful? For developers building cloud-native applications, successful projects thrive on transparent, consistent, and rigorous collaboration. That collaboration is one of the reasons that many open source projects, like Docker containers and Kubernetes, grow to become standards for how we build, deliver, and operate software. Our Open Source Guides and Introduction to innersourcing are great first steps to setting up and encouraging these best practices in your own projects.

However, a common challenge that application developers face is manually testing against inconsistent environments. Accurately testing Kubernetes applications can differ from one developer’s environment to another, and implementing a rigorous and consistent environment for end-to-end testing isn’t easy. It can also be very time consuming to spin up and down Kubernetes clusters. The inconsistencies between environments and the time required to spin up new Kubernetes clusters can negatively impact the speed and quality of cloud-native applications.

Building a transparent CI process

On GitHub, integration and testing becomes a little easier by combining GitHub Actions with open source tools. You can treat Actions as the native continuous integration and continuous delivery (CI/CD) tool for your project, and customize your Actions workflow to include automation and validation as next steps.

Since Actions can be triggered based on nearly any GitHub event, it’s also possible to build in accountability for updating tests and fixing bugs. For example, when a developer creates a pull request, Actions status checks can automatically block the merge if the test fails.

Here are a few more examples:

#engineering #enterprise #events #open source #actions #ci/cd #cloud native applications #cloud native architecture #devops #devops ci/cd #github actions #kubernetes #open source

Loma  Baumbach

Loma Baumbach


Building and Monitoring Your First Github Actions Workflow

Github Actions is Github’s native solution to CI/CD, which is available to the developer’s community since it was launched in 2019. Action’s simple, flexible, and affordable nature made many teams migrate from existing _CI/CD _solutions to unlock the endless possibilities of the new platform.

My team has been of the early adopters of Github Actions. As a group of highly Javascript focused developers, we were able to automate tens of pipelines for our frontend and backend projects. Thanks to Javascript/Typescript support of the platform, we created many Actions (like plugins in traditional build tools) to extend the functionality according to our needs.

After 1 year of experience with Github Actions, we discovered the following advantages of the tool in comparison to former CI/CD solutions we tested:

  • Zero management costs (no need for any agents or master nodes)
  • Easy to learn and master
  • You can keep your workflows in your source code
  • A rich Action (plugin) library. It’s easy to develop your custom Actions.
  • Sensible pricing model: 3000 free minutes for premium users of private repositories. Public repositories are completely free!
  • It has a rich action library and it is very easy to develop your actions.
  • Supports LinuxWindows, and macOS platforms. (macOS support is a rare feature among competitors)
  • With a self-hosted runner, it’s possible to run a free version on your own infrastructure.

#ci-cd-pipeline #web-development #ci-monitoring #github-actions #github