GitLab CI Tutorial For Beginners Home / Video /

How To Run Your First CI/CD Pipeline Using GitLab CI/CD? | GitLab CI/CD Tutorial | Part IV

How To Run Your First CI/CD Pipeline Using GitLab CI/CD? | GitLab CI/CD Tutorial | Part IV

...Playlist

...
  • What Is CI/CD
  • What Is GitLab CI/CD Pipeline
  • Environment Variables, Cached Dependencies, Triggers and Parameters
  • Build And Run An Automated Testing GitLab CI/CD Pipeline
  • GitLab CI/CD Tutorial For Beginners | Learn GitLab In 1 Hour

About The Video

The project that we’ll be using for this GitLab CI/CD tutorial is the HourGlass 2018 [ https://github.com/psych0der/Hourglass ] which is a MERN(Mongo Express React & Nodejs) stack application. It’s a simple time management application of that time. As best practices change every month. Some of these might have been updated, but most of these are still relevant. It is a full production scale and production style development repository.

Video Chapters

00:00 Goals for demo covered in the video

01:33 About moonstack app (time management app)

02:23 Mirrored repository from Github to GitLab for CI/CD

03:31 Explains line-by-line code

24.05 Conclusion

Key Topics Covered

Goals for Demo: Introduction to the main objectives, including creating separate CI and CD pipelines, involving human gatekeepers for deployment decisions, and distinguishing between release and deployment processes.

Segregation Between Release and Deployment: Emphasizing the importance of allowing code merges into the master branch without automatic releases, requiring manual events for deployment.

Crossover Testing with LambdaTest: Discussing the use of LambdaTest for crossover testing, especially for local development environments without exposing the site to the internet.

LambdaTest Tunnel: Explaining how LambdaTest Tunnel works as a proxy to allow cloud-based browsers to access locally hosted websites for testing purposes, facilitating seamless cross-browser testing.

Project Overview: Introduction to the project used for the CI/CD demo, "Hourglass," a MERN stack application emphasizing time management, incorporating best practices from its development era.

GitLab CI/CD Configuration: Detailed walkthrough of the GitLab CI file, explaining how it orchestrates the CI/CD pipeline, including specifying environments, caching strategies, and job definitions.

Stages of the Pipeline: Overview of the pipeline stages, such as installing dependencies, running unit tests, linting, integration testing, end-to-end testing, client build, and finally, deployment.

Manual Triggering and Deployment: Highlighting the strategy for manual intervention in the deployment process to ensure releases happen at the discretion of the team, rather than automatically.

Integration and End-to-End Testing: Detailed explanation of setting up and running integration tests and end-to-end tests, including the use of services like MongoDB and tools like LambdaTest for cross-browser testing.

Artifacts and Caching: Discussing the use of GitLab artifacts to store build outputs and caching to optimize the build process, ensuring faster pipeline execution.

Building and Deploying: The final steps involving building the client-side application, deploying backend and frontend separately, and utilizing platforms like Heroku and Surge for hosting.

Continuous Delivery vs. Continuous Deployment: Clarifying the distinction and preference for continuous delivery in this context, allowing for manual review and execution of deployments.

Demonstration: Real-time demonstration of making changes, triggering the CI/CD pipeline, reviewing pipeline execution, and manually initiating deployment stages.

Related Blogs & Hubs

What Is Continuous Integration And Continuous Delivery(CI/CD)?

How To Build a CI/CD Pipeline In Azure DevOps ?

What Is Continuous Integration And Continuous Delivery(CI/CD)?

What is the difference between Continuous Delivery and Continuous Deployment?

16 Best Practices Of CI/CD Pipeline To Speed Test Automation

Build An Automated Testing Pipeline With GitLab CI/CD & Selenium Grid

How To Use GitLab CI To Run Tests Locally?

CircleCI Vs. GitLab: Choosing The Right CI/CD Tool

Jenkins vs GitLab CI: Battle of CI/CD Tools

LambdaTest One-Click Integration With Bitbucket and GitLab

Complete Guide To Selenium Testing with GitHub Actions

More Videos from GitLab CI Tutorial For Beginners