基本概念
GitLab CI/CD(持续集成/持续部署)流水线是GitLab平台提供的一项强大功能,旨在通过自动化构建、测试和部署过程,提高开发团队的效率和软件发布的质量。
CI(Continuous Integration):持续集成,是指频繁地将代码集成到主干,通过自动化测试来确保集成的代码的稳定性。
CD(Continuous Delivery/Deployment):持续交付/部署,可以看作是持续集成的下一步。持续交付是指在持续集成的基础上,不仅会自动构建和测试应用,还可以手动触发部署流程进行应用部署;而持续部署则更进一步,其部署过程是自动触发的。
核心功能
自动化构建:每次代码提交或合并请求被接受时,GitLab CI/CD都会自动触发构建过程,确保代码可以成功编译。可以理解为GitLab自动对提交的代码进行构建、测试等。
自动化测试:在构建完成后,流水线会自动运行测试脚本,包括单元测试、集成测试等,以确保代码的质量和稳定性。
自动化部署:测试通过后,流水线可以自动将应用部署到指定的环境(如开发环境、测试环境、生产环境)中,大大缩短了从代码提交到生产环境的时间。
现实使用并非如此
一般我们将代码提交到Git,已经经过本地实际环境测试,使用Git也只是进行代码托管、版本控制、代码审查等操作,不曾关心代码在Gitlab上的构建、测试等;再者,由于提交的依赖、资源、缓存不足、并发冲突等原因,可能导致CI/CD流水线错误,该类错误一般由于使用的少,具体原因也很难分析。所以,一般在使用Gitlab时选择关闭CI/CD功能。
CI/CD流水线错误实例
关闭CI/CD功能:
结果: