...

/

CI/CD with Copilot and GitHub Actions

CI/CD with Copilot and GitHub Actions

Learn how to set up a professional CI/CD pipeline for a Python CLI app, using GitHub Actions and GitHub Copilot.

Press + to interact

CI/CD for notes CLI app

You’re a developer on a team maintaining a Python-based command-line tool: Notes CLI. So far, development has been manual; developers clone the repo, run the code locally, and share updates via pull requests.

But now, the team wants to:

  • Automatically test the app on every commit or PR.

  • Run the workflow on different Python versions.

  • Cache dependencies to speed up builds.

  • Eventually, automate deployment to a package registry like PyPI.

Your goal is to build a complete multi-stage CI pipeline using GitHub Actions, leveraging Copilot to help you every step of the way.

Clone the repository

You will build a CI/CD workflow for the Notes CLI app. But first, you need to get the project locally and fork it so you can work on your copy.

Clone the public repository

In your terminal, run:

gh repo clone Educative-Content/Notes-CLI-App
cd Notes-CLI-App

Fork the repository

You should fork the repository:

gh repo fork --clone=true

This will:

  • Create a copy of the repository in your own GitHub account.

  • Clone it locally, automatically switching your origin to your fork.

  • Set the original repo as upstream (you’ll pull from here if updates happen later).

Verify your remotes:

git remote -v

Create your first GitHub actions workflow

Now that your workspace is set up, it’s time to automate your first CI check using GitHub Actions.

Create the workflow directory and file

...