Skip to content

CI CD Github Actions

Brian Hopkins edited this page Jan 14, 2020 · 3 revisions

About

This section will go over the Continuous Integration/Continuous Delivery(CI/CD) of Sara and the different pieces involved.

In the most simplest terms CI/CD is basically an automated process to build, test, and ship your software. In our case a Rasa Assistant.

Github Actions

We decided for this project to start using Github Actions to test their platform and have a little more control over some aspects of the process. It also allows us to keep more of the processes directly inside the repository where the code resides as well. Actions allows us to use the new secrets feature for anything we don't want visible in our build process as well.

Build Steps

The first 3 build steps: [Lint Testing, Type Testing, and Data Validation] we decided to have run in tandem to speed up the process so all of these 3 jobs run at the same time.

Lint Testing

This step simply runs the make lint command from our Makefile which really consists of the following 2 commands:

flake8 demo
black --check demo

These 2 commands run flake and black against our custom action files located in the demo directory.

Clone this wiki locally