Here are some best practices for establishing an efficient CI/CD pipeline:
Develop a DevOps culture
Implement and utilize continuous integration
Deploy to every environment the same way
Fail and restart your pipeline
Apply version control
Include the database in the pipeline
Monitor your continuous delivery pipeline
Get your CD pipeline flowing