Locked learning resources

Join us and get access to thousands of tutorials and a community of expert Pythonistas.

Unlock This Lesson

Locked learning resources

This lesson is for members only. Join us and get access to thousands of tutorials and a community of expert Pythonistas.

Unlock This Lesson

Continuous Integration: Next Steps

In this last lesson of the course, you’ll get an outlook on what you can do with Continuous Integration (CI) to enhance your development flow even further. Furthermore, additional concepts building on top of CI are named:

Download

Sample Code (.zip)

2.8 KB

00:00 Well, this was a very high-level intro to CI. You now have an incredibly powerful tool to help you with your projects. CI incorporates a number of topics that we only skimmed over, so if you want to get deeper into it, here are some good next steps.

00:15 Each team usually has its own workflow with Git and how they incorporate code together. A common tool is adding in peer review, where other developers check code before it’s merged back into the master branch.

00:26 Check out the Real Python Advanced Git Tips for Python Developers if you’re looking to learn some new tricks. While we used the built-in venv environment manager, there are a number of package and environment managers available for Python developers. Popular options include Conda and Pipenv.

00:45 Conda is well known across the data science realm, as it includes a number of tools out of the box for analysis and visualization, while Pipenv is becoming more and more popular.

00:55 If you’d like to learn more about Pipenv, check out the Real Python guide on it below. For testing, we only covered the bare minimum of tests required to make the pipeline work.

01:06 There are so many aspects to testing code effectively, so take a look at the Getting Started with Testing guide if you want to take your skills to the next level.

01:15 A common final step in a CI pipeline is to create a deployable artifact, which is a finished, packaged unit of work that can be deployed to users or included in other projects.

01:26 This is a great precursor to continuous deployment or continuous delivery, which is the constant delivery of software to multiple stages of deployment. It ensures that new features are developed and sent to users as soon as they’re ready.

01:39 This is so often used with CI that you may be more familiar with the term CI/CD than just CI by itself.

01:47 There’s a link to a great site below explaining the benefits and strategies to CD. And that’s it! You should have a pretty good idea of how you can add continuous integration to your projects. It’s time to go try and set up your own pipelines for your projects and see all the cool things you can do with them. Thanks for watching.

Avatar image for Jon Scott

Jon Scott on Aug. 3, 2020

Really well done - thank you for the tutorial!

Avatar image for Kevin Lao

Kevin Lao on Aug. 14, 2020

I wanted to drop a thank you to introducing me to how to get started with CI.

Avatar image for sacsachin

sacsachin on Oct. 10, 2020

Simple and great!!!

Avatar image for Ghani

Ghani on Oct. 26, 2020

Great course; thanks!

Avatar image for Vasanth Baskaran

Vasanth Baskaran on Aug. 25, 2021

This is an brillant course for those who wanted to getting start into CI. Thanks Joe.

Avatar image for danP

danP on Nov. 14, 2021

Nice introductory course.

One small issue though , the last section mentions a couple links that are supposed to be in the description part, but have not been added.

Avatar image for Martin Breuss

Martin Breuss RP Team on Nov. 15, 2021

Thanks for flagging this @danP, I’ve added the links that Joe mentioned to the description.

Avatar image for JBrooks

JBrooks on June 3, 2022

Thanks for “deep enough” intro to CI. CI is not part of my day job but I have to learn the workflow to do my day job which is cyber security. The more I learn about this workflow, with a little bit of hands-on, the more comfortable I will be when talking with developers and knowing how/where to to apply security controls.

Glad there wasn’t a test at the end of this course or I would have bombed it. I managed to get through the content with a bit of trial and errors but it worked out. I didn’t try the extra credit stuff because I’m still learning python too but I did learn a lot and it gave me intro-level instruction I needed. Thanks a bunch!

Avatar image for James

James on April 22, 2023

The quick and practical overview I needed. Very useful thank you.

Avatar image for Zagir

Zagir on Feb. 16, 2024

Thank you for the great overview. I run into some issues with dependencies. In the circleci/config.yml file is better to change circleci to cimg.

circleci/python:3.7 → cimg/python:3.7

This worked for me:

version: 2
jobs:
  build:
    docker:
      - image: cimg/python:3.10.12

More about it here.

Become a Member to join the conversation.