Explore tens of thousands of sets crafted by our community.
CI/CD Pipelines
29
Flashcards
0/29
Jenkins
Jenkins is an open-source automation server written in Java. It helps automate the parts of software development related to building, testing, and deploying, facilitating continuous integration and continuous delivery.
Canary Release
Canary release is a technique to reduce the risk of introducing a new software version in production by slowly rolling out the change to a small subset of users before making it available to everybody.
GitLab CI/CD
GitLab CI/CD is a tool built into GitLab for software development through the continuous methodologies: continuous integration (CI), continuous delivery (CD), and continuous deployment.
GitHub Actions
GitHub Actions enables you to create custom software development lifecycle workflows directly in your GitHub repository. These workflows are composed of jobs that can build, test, and deploy your code.
Immutable Infrastructure
Immutable infrastructure is an approach to managing services and software deployments on IT resources wherein components are replaced rather than changed. An update or fix is accomplished by deploying a new version rather than altering the existing version.
CircleCI
CircleCI is a CI/CD tool that supports rapid software development and publishing by automating the pipeline from code revision to deployment to the target environment.
Blue/Green Deployment
Blue/Green Deployment is a technique that reduces downtime and risk by running two identical production environments called Blue and Green. At any time, only one of the environments is live, with the live environment serving all production traffic.
Version Control System (VCS)
A version control system is a system that records changes to a file or set of files over time so that you can recall specific versions later.
Docker
Docker is a set of platform as a service products that use OS-level virtualization to deliver software in packages called containers. Containers are isolated from one another and bundle their own software, libraries, and configuration files; they can communicate with each other through well-defined channels.
A/B Testing
A/B Testing, also known as split testing, is the process of comparing two versions of a web page or app against each other to determine which one performs better.
YAML (YAML Ain't Markup Language)
YAML is a human-readable data serialization standard that can be used in conjunction with all programming languages and is often used to write configuration files for CI/CD pipelines.
Build Pipeline
A build pipeline is a set of automated processes that allow developers and DevOps professionals to efficiently compile, build, and deploy their code to their production compute platforms.
Source Code Management (SCM)
Source code management (SCM) is the practice of tracking and managing changes to software code. SCM practices include revision control and the establishment of baselines.
Rolling Deployment
Rolling Deployment is a software release strategy that staggers deployment across multiple phases, which usually involves deploying new versions to nodes or environments in a sequential fashion.
Monitoring and Logging
Monitoring is the automated collection and analysis of metrics to evaluate the performance of software and systems. Logging refers to the recording of activity and events which occur within an application or system.
Deployment Automation
Deployment automation refers to the process of automating the deployment of software to testing, staging, and production systems.
Artifact Repository
An artifact repository is a collection of binary software artifacts and metadata stored in a defined directory structure.
Continuous Deployment
Continuous Deployment goes one step further than Continuous Delivery. With this practice, every change that passes all stages of your production pipeline is released to your customers. There's no human intervention, and only a failed test will prevent a new change to be deployed to production.
Deployment Pipeline
A deployment pipeline is a sequence of steps through which a piece of software passes to be released to the production environment. It includes everything from building the software to deploying it.
Terraform
Terraform is an open-source infrastructure as code software tool created by HashiCorp. It enables users to define and provision a datacenter infrastructure using a declarative configuration language.
Infrastructure as Code (IaC)
Infrastructure as Code is a key DevOps practice that uses code to manage and provision computational resources, rather than manual processes or interactive configuration tools.
Feature Toggles (Feature Flags)
Feature toggles are a set of patterns that enable developers to turn certain features of their application on or off at the flick of a switch. Feature toggles are often used to facilitate trunk-based development, canary releases, A/B testing, and more.
Pipeline as Code
Pipeline as Code refers to the practice of defining and managing your deployment pipeline through code, just like you would with your application code. It often involves using YAML or similar syntax in files that are version-controlled.
Continuous Integration (CI)
Continuous Integration is a development practice where developers integrate code into a shared repository frequently, ideally several times a day. Each integration can then be verified by an automated build and automated tests.
Kubernetes
Kubernetes is an open-source system for automating deployment, scaling, and management of containerized applications.
Build Automation
Build automation is the process of scripting or automating a wide variety of tasks that software developers do in their day-to-day activities including compiling computer source code into binary code, packaging binary code, and running automated tests.
Continuous Delivery (CD)
Continuous Delivery is an extension of continuous integration to make sure that you can release new changes to your customers quickly in a sustainable way. This means that on top of automated testing, you have automated release processes and you can deploy your application at any point of time.
Travis CI
Travis CI is a hosted continuous integration service used to build and test software projects hosted at GitHub and Bitbucket.
Test Automation
Test automation is the process of using software separate from the software being tested to control the execution of tests and the comparison of actual outcomes with predicted outcomes.
© Hypatia.Tech. 2024 All rights reserved.