Mastering Bitbucket Pipelines for CI and CD

——   Created by Chris Frewin

From the most basic build to the most complex project: everything you need to know about mastering Bitbucket Pipelines!

1h 51m of on-demand video

Share this course:

Enroll now

Your instructor

Your teacher
  • Chris  Frewin
    Chris Frewin

    Full Stack Software Engineer

  • Biography

    Hi everyone!

    I've been a professional full stack software engineer for 7+ years, and I've been programming for many more. In 2014, I earned two separate degrees from Clarkson University: Mechanical Engineering and Physics. I continued at Cornell for my M.S. Degree in Mechanical Engineering. My thesis at Cornell was a technical software project where I first learned Bash and used a unique stack of Perl and Fortran, producing a publication in the scientific journal Combustion and Flame: "A novel atom tracking algorithm for the analysis of complex chemical kinetic networks".

    After opening up my first terminal while at Cornell, I fell in love with software engineering and have since learned a variety of frameworks, databases, languages, and design patterns, including TypeScript, .NET, JavaScript, Python, React, Redux, ABAP, SAPUI5 UI5, C#, PHP7, Postgresql, and Magento. I love building full stack apps as side projects!

    I'm happy to give back and teach what I've learned over the years, because I think software development is especially difficult these days, with all the new tools and frameworks that seem to come out daily.

    I don't want anyone to be intimated by this and I too struggle and reach out from time to time for help and mentoring. I try to make my courses as clear as possible so you don't get lost or confused.

    Courses teaching
    Total students


    Course content

    3 mins
    free preview
    Environment Setup
    5 mins
    Environment Setup
    free preview
    Creating Our First Pipeline
    7 mins
    Creating Your First Pipeline
    16 mins
    Using SCP to Transport Artifacts from the Build
    11 mins
    Using SSH to Run Commands on the Server
    16 mins
    Creating a Slack Messaging Bot to Add Messaging Functionality to the Build
    Complex Example: React with TypeScript
    5 mins
    Bootstrapping a Project using create-react-app
    5 mins
    Defining Environment Files and Using it in a Component
    4 mins
    Utilizing the Environments in a Bitbucket Pipeline File
    6 mins
    Refactoring the ngrok server for the React TypeScript Project
    11 mins
    Refactoring the Bitbucket Pipeline file for the React Typescript Project
    6 mins
    Utilizing Tarballs to Transfer the node_modules Folder Faster
    5 mins
    Setting forever with 'watch' Mode on Server
    Goodies and Bonuses
    3 mins
    The Big Advantage of Pipelines: Testing in Staging, Merging to Master!
    7 mins
    Bonus: NGINX proxy configuraiton and React PUBLIC_URL Environment Variable
    10 mins
    Bonus: Using Docker as an Alternative to a Remote Linux Server

    What you'll learn

    Bitbucket Pipelines brings continuous integration and delivery to Bitbucket Cloud, empowering individuals and teams to build, test, and deploy their code using the Bitbucket cloud!

    It's a tool that has saved me an immeasurable amount of time over the years, and it's something I use for almost every repository I have in my BitBucket account.

    Before working with pipelines directly, we'll ensure we're all using the same version of Node using nvm.

    We'll then create YOUR very first Bitbucket Pipeline, defining a bitbucket-pipelines.yml file.

    We'll add complexity to the pipeline, learning how to use SCP (Secure Copy Protocol) and SSH (Secure Shell) within our pipeline.

    We'll get even more complex, learning how to use various environments, such as develop, staging, and master branches, in our pipeline.

    We'll even learn how to use a Slack messaging bot to send messages during various points during the build!

    The course ends with a few goodies and bonuses, like how to get the setup working via an NGINX proxy.

    ***NOTE: If you do not have an external target server to use, bonus lesson 16 shows you how you can use a local instance of Linux using docker, and how to add a port mapping to your local router so you can access that box from anywhere in the world!