Every process has a workflow to complete it. However, many workflows are filled with manual tasks that are time-consuming, error-prone, and expensive. This is where Workflow Automation comes in, it refers to the design, execution, and automation of processes based on workflow rules where human tasks, data or files are routed between systems based on pre-defined business rules.
In short, it is an approach to making the flow of tasks, documents and information across work-related activities easy.
Why Workflow Automation Is Used?
By automating workflows, especially those processes that are primarily handled manually by employees, significant improvements can be made in:
- Reduces Human Error
- Improves Operational Efficiency
- Increases Workplace Accountability
What is CI/CD?
CI/CD is a method to frequently deliver apps to customers by introducing automation into the stages of app development. The main concepts attributed to CI/CD are continuous integration, continuous delivery, and continuous deployment.
CI vs CD vs (and the other CD)
Continuous integration:-
Continuous integration puts a great emphasis on testing automation to check that the application is not broken whenever new commits are integrated into the main branch.
Continuous delivery:-
Continuous delivery is an extension of continuous integration since it automatically deploys all code changes to a testing and/or production environment after the build stage. This means that on top of automated testing, you have an automated release process and you can deploy your application any time by clicking a button.
Continuous deployment:-
It 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.
What are some common CI/CD tools?
MSPowerAutomate cloud-based system to create automated workflows.
Github Action's automate, customize, and execute your software development workflows.
GitLab CI/CD is a tool for software development using continuous methods.
CircleCI is a continuous integration and continuous delivery platform that can be used to implement DevOps practices.
Docker workflows for modern applications, integrates with GitHub and Bitbucket, and with your favorite tools with API-based automated HTTP.
Resources to build your first workflow automation
How to Build Your First JavaScript GitHub Action ~ Bassem Dghaidi
Build & Use Custom Docker images in your GitLab CI/CD ~ Valentin Despa
Use Portainer, integrated into Git, to automate the deployment ~ Portainer IO
Complete YAML Course - Beginner to Advanced for DevOps and more! ~ Kunal Kushwaha