Booil Jung

GitLab CI/CD 플랫폼

GitLab CI/CD의 강력함은 그 근간을 이루는 핵심 구성 요소들의 유기적인 상호작용에서 비롯된다. 이 구성 요소들을 이해하는 것은 효율적이고 안정적인 파이프라인을 설계하는 첫걸음이다.

이 네 가지 핵심 요소는 다음과 같은 워크플로우를 통해 상호작용한다. 개발자가 코드 변경사항을 GitLab 저장소에 푸시하면, GitLab은 이 이벤트를 감지하여 .gitlab-ci.yml 파일의 정의에 따라 새로운 파이프라인을 생성한다. 파이프라인은 정의된 스테이지 순서에 따라 실행된다. 첫 번째 스테이지의 들이 가용한 러너들에게 할당되어 병렬로 실행된다. 해당 스테이지의 모든 잡이 성공하면, 파이프라인은 다음 스테이지로 넘어가 동일한 과정을 반복한다. 이 과정을 통해 코드의 빌드, 테스트, 배포가 자동화된 흐름에 따라 체계적으로 이루어진다.1

GitLab은 단순한 프로젝트부터 복잡한 엔터프라이즈급 애플리케이션에 이르기까지 다양한 요구사항에 대응할 수 있는 여러 파이프라인 아키텍처를 제공한다.

이러한 파이프라인 아키텍처의 발전은 단순히 기능 추가의 나열이 아니다. 이는 현대 소프트웨어 개발의 복잡성 증가라는 근본적인 문제에 대한 GitLab의 체계적인 응답을 보여준다. 초기 CI/CD 시스템의 단순한 선형 모델은 마이크로서비스나 모노레포와 같은 복잡한 구조에서 심각한 병목 현상을 유발했다.5

needs 키워드의 도입은 이러한 병목을 해결하기 위해 의존성 기반의 병렬 실행을 가능하게 했고, 더 나아가 부모-자식 파이프라인은 거대하고 복잡한 의존성 그래프 자체를 관리 가능한 작은 단위로 분할하는 해결책을 제시했다. 따라서 개발팀은 프로젝트의 특성에 맞는 최적의 아키텍처를 선택해야 한다. 간단한 프로젝트가 아니라면 needs를 통한 DAG 구성은 기본 최적화 전략으로 고려되어야 하며, 모노레포 환경에서는 부모-자식 파이프라인을 표준 아키텍처로 채택하는 것이 바람직하다.

GitLab CI/CD의 모든 설정은 프로젝트 루트에 위치한 .gitlab-ci.yml 파일 하나로 관리된다. 이는 ‘Configuration as Code(코드형 구성)’ 패러다임의 핵심으로, 파이프라인 구성을 소스 코드와 함께 버전 관리하고, 검토하며, 추적할 수 있게 한다.

단순한 파이프라인을 넘어, 유지보수 가능하고 확장성 높은 복잡한 워크플로우를 구축하기 위해서는 .gitlab-ci.yml의 고급 기능들을 능숙하게 활용해야 한다. 다음은 강력한 파이프라인 구성을 가능하게 하는 핵심 키워드와 기법들이다.2

빠른 피드백은 DevOps의 핵심 원칙이며, 파이프라인 실행 시간을 단축하는 것은 개발자 생산성과 직결된다. 다음은 GitLab이 제공하는 기능을 활용한 주요 파이프라인 최적화 전략이다.

GitLab Runner는 파이프라인의 심장과 같은 역할을 하며, 특히 Kubernetes Executor는 현대적인 클라우드 네이티브 환경에서 CI/CD를 위한 가장 강력하고 확장성 있는 솔루션이다.

include, extends, !reference와 같은 기능들의 조합은 단순한 코드 재사용을 넘어, 플랫폼 엔지니어링(Platform Engineering) 모델을 직접적으로 구현하는 정교한 ‘Configuration as Code’ 도구 키트를 형성한다. 중앙 플랫폼 팀은 이 기능들을 활용하여 견고하고 안전하며 효율적인 파이프라인 템플릿을 구축하고 유지할 수 있다. 개발팀은 이 템플릿들을 include하고 필요한 부분만 extends하거나 !reference하여 커스터마이징함으로써, CI/CD 도구의 복잡한 내부 구조를 깊이 이해하지 않고도 표준화된 고품질 파이프라인을 쉽게 활용할 수 있다.2 이는 마치 플랫폼 팀이 제공하는 잘 닦인 ‘골든 패스(Golden Path)’ 위에서 개발팀이 애플리케이션 로직 개발에만 집중할 수 있게 하는 것과 같다.2 따라서 엔터프라이즈 환경에서는 플랫폼 또는 DevOps 팀이 관리하는 중앙 템플릿 저장소를 중심으로 GitLab CI/CD 구성을 구조화하는 것이 가장 확장성 있고 유지보수하기 좋은 접근 방식이다.

GitLab과 Kubernetes를 통합하는 가장 현대적이고 권장되는 방식은 GitLab Agent for Kubernetes를 사용하는 것이다. 이는 기존의 인증서 기반 통합 방식의 보안 및 운영상의 한계를 극복하기 위해 설계되었다.

이러한 에이전트 기반 모델은 기존의 인증서 기반 통합 방식에 비해 구조적으로 우월하다. 과거 방식은 GitLab 러너가 Kubernetes API 서버에 직접 접근해야 했기 때문에, 종종 API 서버를 외부에 노출시켜야 하는 보안 위험을 감수해야 했다.32 반면 에이전트는 클러스터 내부에서 GitLab으로 ‘풀(pull)’ 방식의 연결을 시작하므로, 클러스터로의 인바운드 연결이 전혀 필요 없다.27 이는 현대적인 네트워크 보안 관행 및 GitOps 원칙과 완벽하게 부합한다. 따라서 조직은 기존의 레거시 통합 방식에서 벗어나 모든 신규 프로젝트에 대해 GitLab Agent를 표준으로 채택해야 한다. 이것이 전략적으로 더 우수하고 안전한 장기적 해결책이다.

모든 변경 사항을 한 번에 전체 사용자에게 배포하는 것은 큰 위험을 수반한다. GitLab CI/CD는 Kubernetes와 연동하여 이러한 위험을 최소화하는 점진적 배포(Progressive Delivery) 전략을 쉽게 구현할 수 있도록 지원한다.

GitOps는 인프라와 애플리케이션 구성을 코드로 관리하고, Git 저장소를 ‘단일 진실 공급원’으로 사용하는 현대적인 운영 패러다임이다.51 GitLab CI/CD는 GitOps 도구와 결합하여 더욱 강력하고 선언적인 배포 워크플로우를 구축할 수 있다.

DevSecOps는 보안을 개발 수명 주기의 마지막 단계가 아닌, 모든 단계에 통합하는 ‘Shift-Left’ 철학을 기반으로 한다. GitLab은 다양한 보안 스캐닝 도구를 CI/CD 파이프라인에 내장하여 DevSecOps 구현을 용이하게 한다.

GitLab은 별도의 도구를 설치하거나 복잡한 통합 과정 없이, .gitlab-ci.yml에 템플릿을 포함하는 것만으로 다양한 보안 스캔을 활성화할 수 있다.

인프라 구성 자체의 보안을 확보하는 것은 애플리케이션 보안만큼이나 중요하다. GitLab CI/CD는 외부 IaC 스캐닝 도구와 유연하게 통합될 수 있다.

이러한 통합 능력은 GitLab이 단순히 스캐너 모음집이 아니라, 확장 가능한 ‘취약점 관리 플랫폼’임을 보여준다. 여러 도구에서 발생하는 보안 정보를 중앙으로 모으고, 개발자가 가장 많은 시간을 보내는 병합 요청 컨텍스트 안에서 그 정보를 제공함으로써, ‘보안을 왼쪽으로 이동(shifting security left)’시키는 핵심 원칙을 효과적으로 구현한다. 따라서 조직은 사용하는 모든 보안 스캐닝 도구를 GitLab 보안 대시보드 형식으로 통합하는 것을 우선순위로 두어야 한다. 이는 보안 취약점에 대한 단일 진실 공급원을 생성하고 보안 검토 프로세스의 효율성을 극적으로 향상시킬 것이다.

빠른 배포만큼 중요한 것은 배포 실패 시 빠르고 안전하게 복구하는 능력이다.

CI/CD 도구 시장은 GitLab CI, GitHub Actions, Jenkins라는 세 거인이 주도하고 있다. 각 도구는 고유한 철학과 강점을 가지고 있어, 선택은 기술적 선호도를 넘어 조직의 전략적 방향성과 밀접하게 연관된다.

기능/특성 GitLab CI GitHub Actions Jenkins
설정 방식 단일 .gitlab-ci.yml 파일로 파이프라인 전체를 정의하는 통합적 접근 방식 84 워크플로우별로 개별 YAML 파일을 사용하는 이벤트 기반의 분산적 접근 방식 86 Groovy 기반의 Jenkinsfile (코드형)과 웹 UI를 통한 설정이 혼재된 방식 85
플랫폼 통합 SCM, 이슈 트래킹, 보안, 레지스트리 등 SDLC 전체를 아우르는 올인원(All-in-One) 플랫폼에 완벽히 통합 85 GitHub 저장소를 중심으로 한 개발자 워크플로우에 긴밀하게 통합. 코드와 CI/CD가 같은 공간에 존재 84 독립적인 자동화 서버. SCM, 이슈 트래커 등 모든 것을 플러그인을 통해 외부에서 연동해야 함 85
생태계 및 확장성 내장 기능이 강력하지만, 외부 확장성은 상대적으로 제한적. CI/CD 카탈로그를 통해 컴포넌트 공유 지원 89 방대하고 활발한 마켓플레이스(Marketplace)를 통해 수많은 재사용 가능한 액션(Action) 제공 88 1,800개 이상의 플러그인을 보유한 가장 거대한 생태계. 하지만 플러그인 간 호환성 및 유지보수 문제가 단점 84
사용 편의성 기능이 방대하여 학습 곡선이 다소 가파름. 하지만 통합된 UI는 일관된 경험 제공 92 GitHub 사용자에게 매우 친숙하고 직관적. 가장 시작하기 쉬운 도구로 평가받음 84 구식 UI와 복잡한 플러그인 관리로 인해 가장 학습 곡선이 가파르고 유지보수 부담이 큼 86
엔터프라이즈 기능 병합 열차(Merge Trains), 컴플라이언스 파이프라인, 세분화된 권한 관리 등 강력한 엔터프라이즈 기능 내장 93 기본적인 브랜치 보호 규칙 제공. 고급 보안 및 컴플라이언스 기능은 Enterprise 플랜에 집중 93 플러그인을 통해 대부분의 기능 구현 가능하나, 표준화된 엔터프라이즈 기능은 부족. (CloudBees 등 상용 버전에서 제공) 84
이상적인 사용 사례 단일 플랫폼에서 전체 DevOps 라이프사이클을 표준화하고 관리하려는 기업. 복잡한 워크플로우와 강력한 보안/컴플라이언스 요구사항이 있는 경우. 코드가 GitHub에 있고, 빠르고 유연한 CI/CD를 원하며, 활발한 오픈소스 생태계를 활용하고자 하는 팀. 고도로 맞춤화된 워크플로우가 필요하거나, 클라우드 기반 도구를 사용할 수 없는 레거시/온프레미스 환경을 지원해야 하는 경우.

이 비교는 어떤 도구가 절대적으로 ‘최고’라고 말하기보다는, 각 조직의 철학과 상황에 따라 최적의 선택이 달라짐을 보여준다. GitHub의 방대한 오픈소스 생태계와 개발자 중심의 경험을 중시하는 조직은 GitHub Actions에 자연스럽게 끌릴 것이다.84 반면, 여러 도구를 통합하고 관리하는 복잡성을 줄이고 단일 플랫폼에서 모든 것을 해결하려는 전략을 가진 기업에게는 GitLab의 올인원 접근 방식이 매우 매력적이다.85 Jenkins는 특정 플러그인에 대한 의존도가 높거나 극도의 유연성이 필요한 특수한 경우에 여전히 그 자리를 지키고 있다.84 결국 이 선택은 기술적인 문제를 넘어, ‘Best-of-Breed’ 통합 전략과 ‘Single Vendor Platform’ 전략 사이의 철학적 결정이라 할 수 있다.

CI/CD 도구의 비용을 평가할 때는 단순히 라이선스 가격표만 봐서는 안 된다. 숨겨진 인프라 및 유지보수 비용을 포함한 총소유비용(Total Cost of Ownership, TCO)을 분석해야 올바른 의사결정을 내릴 수 있다.

비용 항목 GitLab CI GitHub Actions Jenkins
직접 비용 (라이선스) 사용자당 월 구독료 (Free, Premium, Ultimate). 각 플랜에 일정량의 CI/CD 분(minutes) 포함 89 사용자당 월 구독료 (Free, Team, Enterprise). 포함된 무료 분 초과 시 분당 과금. OS 및 러너 크기에 따라 요금 상이 89 오픈소스. 라이선스 비용 없음 85
인프라 비용 자체 호스팅 러너: VM 또는 Kubernetes 클러스터 운영 비용 발생. SaaS: GitLab 호스팅 러너 사용 시 분당 추가 비용 발생 가능. 자체 호스팅 러너: VM 또는 Kubernetes 클러스터 운영 비용 발생. SaaS: GitHub 호스팅 러너 사용 시 분당 과금.101 서버 및 러너: Jenkins 서버와 모든 러너(에이전트)를 호스팅할 인프라 비용 전적으로 부담.
유지보수 비용 (인건비) 통합 플랫폼으로 유지보수 부담 적음. 자체 호스팅 시 서버 및 러너 관리에 인력 투입 필요. SaaS 모델로 유지보수 부담 최소화. 자체 호스팅 러너 사용 시 관리 인력 필요. “Jenkins Tax”: 서버 관리, 플러그인 업데이트, 호환성 문제 해결, 보안 패치 등에 상당한 엔지니어링 시간 소요. 가장 큰 숨겨진 비용.86
통합 비용 대부분의 기능이 내장되어 있어 외부 도구 통합 비용이 적음. 마켓플레이스의 유료 액션 사용 시 추가 비용 발생 가능. SCM 외 기능은 외부 도구 연동 필요. 모든 것을 플러그인으로 해결. 일부 중요 플러그인은 상용이거나, 여러 도구를 통합하고 유지하는 데 비용 발생.85

TCO 분석은 조직의 특성에 따라 크게 달라진다. Jenkins의 TCO는 엔지니어의 인건비가 지배적이다. GitHub Actions는 사용량 기반 과금 모델이므로, CI 사용량이 많은 조직에서는 분당 요금이 상당한 비용으로 이어질 수 있다. GitLab은 사용자당 고정 비용 모델이므로, 사용자 수는 적지만 CI 사용량이 매우 많은 조직에 비용 효율적일 수 있다. 따라서 정확한 TCO 분석을 위해서는 조직의 개발자 수, CI/CD 실행 빈도와 시간, 자체 호스팅 여부 등의 시나리오를 구체적으로 모델링해야 한다.

외부 분석 기관의 평가는 도구의 시장 내 위치와 미래 방향성을 객관적으로 파악하는 데 도움을 준다.

인공지능(AI)은 소프트웨어 개발의 모든 측면을 변화시키고 있으며, CI/CD 워크플로우도 예외는 아니다. GitLab은 GitLab Duo라는 AI 기능군을 통해 이러한 변화를 주도하고 있다.

GitLab Duo는 단순히 코드를 자동 완성해주는 도구를 넘어, 소프트웨어 개발 수명 주기(SDLC) 전반에 걸쳐 개발자를 지원하는 AI 기능 모음이다.1

AI의 발전은 DevOps 엔지니어의 역할을 대체하는 것이 아니라, 더 높은 수준으로 진화시키고 있다.

AI 코드 어시스턴트의 확산은 생산성 향상과 함께 새로운 보안 및 품질 문제를 야기한다. 따라서 AI가 생성한 코드를 관리하기 위한 강력한 거버넌스 프레임워크가 필수적이다.

AI가 CI/CD에 통합되면서 새로운 형태의 피드백 루프가 생성되고 있다. AI는 파이프라인을 개선하고, 파이프라인에서 생성되는 데이터(성능 지표, 테스트 결과, 실패 로그)는 다시 AI 모델을 훈련하고 개선하는 데 사용된다.127 이는 전통적인 자동화를 넘어, 시스템 전체가 스스로 학습하고 발전하는 ‘지능형’ CI/CD로의 진화를 의미한다. 이러한 환경에서 DevOps 엔지니어의 역할은 AI를 위한 데이터를 관리하고, 그 결과를 검증하며, 전체 DevSecOps 시스템이 자율적으로 개선될 수 있는 피드백 루프를 설계하는 ‘AI 트레이너’ 또는 ‘AI 오케스트레이터’로 변화할 것이다.

GitLab CI/CD는 현대 DevSecOps 환경을 위한 매우 강력하고 포괄적인 플랫폼이지만, 모든 시나리오에 완벽한 해결책은 아니다. 그 강점과 약점을 종합적으로 평가하면 다음과 같다.

조직의 상황과 목표에 따라 GitLab CI/CD를 효과적으로 활용하기 위한 전략은 달라져야 한다.

결론적으로, GitLab CI/CD는 단순한 자동화 도구를 넘어, 개발, 보안, 운영을 아우르는 통합 DevSecOps 플랫폼으로서 강력한 경쟁력을 지니고 있다. 조직의 특성과 성숙도에 맞는 전략적 접근을 통해 GitLab CI/CD를 도입하고 지속적으로 최적화해 나간다면, 더 빠르고, 더 안전하며, 더 효율적인 소프트웨어 제공이라는 목표를 성공적으로 달성할 수 있을 것이다.

  1. CI/CD pipelines - GitLab Docs, accessed July 8, 2025, https://docs.gitlab.com/ee/ci/pipelines/
  2. CI/CD YAML syntax reference - GitLab Docs, accessed July 8, 2025, https://docs.gitlab.com/ci/yaml/
  3. GitLab Runner, accessed July 8, 2025, https://docs.gitlab.com/runner/
  4. What Is the .gitlab-ci.yml File and How to Work With It - Codefresh, accessed July 8, 2025, https://codefresh.io/learn/gitlab-ci/what-is-the-gitlab-ci-yml-file-and-how-to-work-with-it/
  5. Pipeline architecture - GitLab Docs, accessed July 8, 2025, https://docs.gitlab.com/ci/pipelines/pipeline_architectures/
  6. GitLab CI/CD Mastery: Part 3/3 Advanced Pipeline Optimization and Production Excellence by Salwan Mohamed Jul, 2025 Medium, accessed July 8, 2025, https://medium.com/@salwan.mohamed/gitlab-ci-cd-mastery-part-3-3-advanced-pipeline-optimization-and-production-excellence-88b9313ae67d
  7. Troubleshooting CI/CD GitLab, accessed July 8, 2025, https://gitlab.cn/docs/14.0/ee/ci/troubleshooting.html
  8. GitLab CI/CD examples, accessed July 8, 2025, https://docs.gitlab.com/ci/examples/
  9. YAML Tutorial : A Complete Language Guide with Examples - Spacelift, accessed July 8, 2025, https://spacelift.io/blog/yaml
  10. Writing .gitlab-ci.yml File with Examples [Tutorial] - Spacelift, accessed July 8, 2025, https://spacelift.io/blog/gitlab-ci-yml
  11. Get started with GitLab CI/CD, accessed July 8, 2025, https://docs.gitlab.com/ci/
  12. doc/ci/yaml/README.md / gitaly-version-v1.42.3 - GitLab, accessed July 8, 2025, https://gitlab.com/gitlab-org/gitlab-foss/-/blob/gitaly-version-v1.42.3/doc/ci/yaml/README.md
  13. Organising Your GitLab CI/CD Pipeline: From Monolithic to Modular by David Haylock, accessed July 8, 2025, https://medium.com/@david_haylock/organising-your-gitlab-ci-cd-pipeline-from-monolithic-to-modular-2847e0b43320
  14. gitlab-ci.yaml management - Reddit, accessed July 8, 2025, https://www.reddit.com/r/gitlab/comments/199utmr/gitlabciyaml_management/
  15. Optimize GitLab CI/CD configuration files, accessed July 8, 2025, https://docs.gitlab.com/ci/yaml/yaml_optimization/
  16. GitLab CI/CD variables, accessed July 8, 2025, https://docs.gitlab.com/ci/variables/
  17. GitLab best practices to improve your workflow - Hostinger, accessed July 8, 2025, https://www.hostinger.com/tutorials/gitlab-best-practices
  18. Pipeline efficiency - GitLab Docs, accessed July 8, 2025, https://docs.gitlab.com/ci/pipelines/pipeline_efficiency/
  19. Continuous integration best practices - GitLab, accessed July 8, 2025, https://about.gitlab.com/topics/ci-cd/continuous-integration-best-practices/
  20. Kubernetes executor - GitLab Docs, accessed July 8, 2025, https://docs.gitlab.com/runner/executors/kubernetes/
  21. docs/executors/kubernetes.md - gitlab-runner, accessed July 8, 2025, https://gitlab.com/gitlab-org/gitlab-runner/blob/ffdb32cb9cd1e325b5018cea2ddd6084b6ec741e/docs/executors/kubernetes.md
  22. The Kubernetes executor for GitLab Runner, accessed July 8, 2025, https://docs.gitlab.co.jp/runner/executors/kubernetes.html
  23. Optimizing GitLab CI runners on Kubernetes: Caching, Autoscaling, and Beyond, accessed July 8, 2025, https://chairnerd.seatgeek.com/ci-runner-optimizations/
  24. Autoscaling GitLab runners on Kubernetes by IlyesAj - ITNEXT, accessed July 8, 2025, https://itnext.io/autoscaling-gitlab-runners-on-kubernetes-cf5739e26c05
  25. GitLab Runner Autoscaling, accessed July 8, 2025, https://docs.gitlab.com/runner/runner_autoscale/
  26. Performance tuning and testing speed GitLab Docs, accessed July 8, 2025, https://docs.gitlab.com/user/application_security/api_security_testing/performance/
  27. Using GitLab CI/CD with a Kubernetes cluster GitLab Docs, accessed July 8, 2025, https://docs.gitlab.com/user/clusters/agent/ci_cd_workflow/
  28. How to Integrate GitLab CI/CD and Kubernetes for Version Control - Bluelight, accessed July 8, 2025, https://bluelight.co/blog/how-to-integrate-gitlab-ci-cd-and-kubernetes
  29. GitLab CI/CD: 3 Quick Tutorials - Codefresh, accessed July 8, 2025, https://codefresh.io/learn/gitlab-ci/gitlab-ci-cd-3-quick-tutorials/
  30. Get started deploying to Kubernetes - GitLab Docs, accessed July 8, 2025, https://docs.gitlab.com/user/clusters/agent/getting_started_deployments/
  31. Deploying Applications on Kubernetes with GitLab CI/CD Using Private Docker Repositories, accessed July 8, 2025, https://www.swissns.ch/site/2024/08/deploying-applications-on-kubernetes-with-gitlab-ci-cd-using-private-docker-repositories/
  32. 3 Ways to approach GitOps - GitLab, accessed July 8, 2025, https://about.gitlab.com/blog/gitops-done-3-ways/
  33. Building a CICD Production-Level Blue-Green Deployment by Ali Hamza - DevOps.dev, accessed July 8, 2025, https://blog.devops.dev/building-a-cicd-production-level-blue-green-deployment-3ac20b3839fc
  34. Incremental rollouts with GitLab CI/CD, accessed July 8, 2025, https://docs.gitlab.com/ci/environments/incremental_rollouts/
  35. Continuous Blue-Green Deployments With Kubernetes - Semaphore, accessed July 8, 2025, https://semaphore.io/blog/continuous-blue-green-deployments-with-kubernetes
  36. ianlewis/kubernetes-bluegreen-deployment-tutorial: A … - GitHub, accessed July 8, 2025, https://github.com/ianlewis/kubernetes-bluegreen-deployment-tutorial
  37. How to implement Blue/Green Kubernetes deployments using Helm and CI/CD - YouTube, accessed July 8, 2025, https://www.youtube.com/watch?v=er0JTGnryZ4
  38. kubernetestr/kubernetes-blue-green-gitlab-ci - GitHub, accessed July 8, 2025, https://github.com/kubernetestr/kubernetes-blue-green-gitlab-ci
  39. aws-samples/sap-commerce-blue-green-deployments-on-amazon-eks - GitHub, accessed July 8, 2025, https://github.com/aws-samples/sap-commerce-blue-green-deployments-on-amazon-eks
  40. A collection of gitlab-ci examples - GitHub, accessed July 8, 2025, https://github.com/dokku/gitlab-ci
  41. Sample github workflow for enabling Blue/Green deployments with Azure ContainerApps, accessed July 8, 2025, https://github.com/Azure-Samples/containerapps-blue-green
  42. dtphuc/terraform-ecs-blue-green-example: Terraform to provision fully CI/CD Pipeline to deploy ECS with Blue/Green Deployment pattern - GitHub, accessed July 8, 2025, https://github.com/dtphuc/terraform-ecs-blue-green-example
  43. Continuous Blue-Green Deployment to Highly Automated AWS ECS Fargate Cluster via AWS CodeDeploy, Gitlab CI/CD and Terraform by Ahmet Atalay Medium, accessed July 8, 2025, https://medium.com/@ahmetatalay/continuous-blue-green-deployment-to-highly-automated-aws-ecs-fargate-cluster-via-aws-codedeploy-f4d44fc28231
  44. What Are Canary Deployments? Process and Visual Example - Codefresh, accessed July 8, 2025, https://codefresh.io/learn/software-deployment/what-are-canary-deployments/
  45. Canary deployments GitLab Docs, accessed July 8, 2025, https://docs.gitlab.com/user/project/canary_deployments/
  46. doc/user/project/canary_deployments.md / 7dd2deb150b799adced685410ce07c0b32ad7bc5 - GitLab, accessed July 8, 2025, https://gitlab.com/gitlab-org/gitlab/-/blob/7dd2deb150b799adced685410ce07c0b32ad7bc5/doc/user/project/canary_deployments.md
  47. doc/user/project/canary_deployments.md / 4b3a294298711799ffda3c8a70a7142c8afff7c1 - GitLab, accessed July 8, 2025, https://gitlab.com/gitlab-org/gitlab/-/blob/4b3a294298711799ffda3c8a70a7142c8afff7c1/doc/user/project/canary_deployments.md
  48. How to do Canary Deployment with Kubernetes - YouTube, accessed July 8, 2025, https://m.youtube.com/watch?v=_-_KnmAbKIo&pp=ygULI3RvdG9rOHBvbGE%3D
  49. Implementing Canary Deployment in Kubernetes by Anvesh Muppeda Medium, accessed July 8, 2025, https://medium.com/@muppedaanvesh/implementing-canary-deployment-in-kubernetes-0be4bc1e1aca
  50. Environments Canary Stage The GitLab Handbook, accessed July 8, 2025, https://handbook.gitlab.com/handbook/engineering/infrastructure/environments/canary-stage/
  51. What is GitOps? - GitLab, accessed July 8, 2025, https://about.gitlab.com/topics/gitops/
  52. How to Implement GitOps for Scalable Infrastructure Management with GitLab - VivaOps, accessed July 8, 2025, https://www.vivaops.ai/post/how-to-implement-gitops-for-scalable-infrastructure-management-with-gitlab
  53. From Code to Kubernetes: Building a Full GitOps Pipeline with GitLab CI and FluxCD, accessed July 8, 2025, https://medium.com/@fenari.kostem/from-code-to-kubernetes-building-a-full-gitops-pipeline-with-gitlab-ci-and-fluxcd-aa6188ca517f
  54. GitLab GitOps: The Basics and a Quick Tutorial - Codefresh, accessed July 8, 2025, https://codefresh.io/learn/gitlab-ci/gitlab-gitops/
  55. Static Application Security Testing (SAST) - GitLab Docs, accessed July 8, 2025, https://docs.gitlab.com/user/application_security/sast/
  56. SAST.gitlab-ci.yml, accessed July 8, 2025, https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Jobs/SAST.gitlab-ci.yml
  57. Static Application Security Testing (SAST) - 极狐GitLab, accessed July 8, 2025, https://gitlab.cn/docs/14.0/ee/user/application_security/sast/
  58. GitLab Security Testing - betulkaraman, accessed July 8, 2025, https://betulkaraman.medium.com/gitlab-security-testing-807f896c36f8
  59. lib/gitlab/ci/templates/Security/DAST.gitlab-ci.yml / master / GitLab.org / GitLab, accessed July 8, 2025, https://gitlab.com/gitlab-org/gitlab/blob/master/lib/gitlab/ci/templates/Security/DAST.gitlab-ci.yml
  60. GitLab Security Pipeline - GitHub Gist, accessed July 8, 2025, https://gist.github.com/thelicato/109d57bb7436520c609b5bab84e80b14
  61. The Ultimate Manual to GitLab Security - Nira, accessed July 8, 2025, https://nira.com/gitlab-security/
  62. Pipeline secret detection - GitLab Docs, accessed July 8, 2025, https://docs.gitlab.com/user/application_security/secret_detection/pipeline/
  63. Secret detection - GitLab Docs, accessed July 8, 2025, https://docs.gitlab.com/user/application_security/secret_detection/
  64. Tutorials: Secure your application and check compliance GitLab Docs, accessed July 8, 2025, https://docs.gitlab.com/tutorials/secure_application/
  65. Dependency Scanning GitLab Docs, accessed July 8, 2025, https://docs.gitlab.com/ee/user/application_security/dependency_scanning/
  66. Tutorial: Scan a Docker container for vulnerabilities GitLab Docs, accessed July 8, 2025, https://docs.gitlab.com/tutorials/container_scanning/
  67. GitLab Security Essentials - Hands-On Lab: Enable and Scan Using a Scan Execution Policy, accessed July 8, 2025, https://handbook.gitlab.com/handbook/customer-success/professional-services-engineering/education-services/ilt-labs/gitlabsecurityessentialslab6/
  68. How to integrate custom security scanners into GitLab, accessed July 8, 2025, https://about.gitlab.com/blog/how-to-integrate-custom-security-scanners-into-gitlab/
  69. Terraform Tutorials: TFSec for Security Scanning - DevOpsSchool.com, accessed July 8, 2025, https://www.devopsschool.com/blog/terraform-tutorials-tfsec-for-security-scanning/
  70. Using Terraform with GitLab - Scalr, accessed July 8, 2025, https://scalr.com/learning-center/using-terraform-with-gitlab/
  71. What is tfsec? How to Install, Config, Ignore Checks - Spacelift, accessed July 8, 2025, https://spacelift.io/blog/what-is-tfsec
  72. Terrascan: Securing Infrastructure as Code - Garbage Value, accessed July 8, 2025, https://garbagevalue.com/blog/terrascan-securing-infrastructure-as-code
  73. How to start with SAST pipelines Cybersecurity at MUNI, accessed July 8, 2025, https://security.muni.cz/en/articles/guide-sast-pipelines
  74. What is Terrascan? Features, Use Cases & Custom Policies - Spacelift, accessed July 8, 2025, https://spacelift.io/blog/what-is-terrascan
  75. Integrations - Terrascan, accessed July 8, 2025, https://runterrascan.io/docs/integrations/_print/
  76. Terrascan Opsera Ecosystem, accessed July 8, 2025, https://www.opsera.io/ecosystem/terrascan
  77. python script to convert tfsec json output into gitlab sast report, will get parsed by gitlab and result in vulnerabilities being visible/manageable in gitlab vuln management interface / GitHub, accessed July 8, 2025, https://gist.github.com/rdkls/77037467ea5c825472aaff7e23f3af00
  78. Usage - tfsec - Aqua Security, accessed July 8, 2025, https://aquasecurity.github.io/tfsec/v1.1.4/getting-started/usage/
  79. How to Implement SAST in GitLab CI Pipeline: Step-by-Step Guide for Secure DevOps, accessed July 8, 2025, https://www.youtube.com/watch?v=W8OIH-UmcSw
  80. “GitLab SAST: The Definitive Guide to Code Security” by Vijay K Medium, accessed July 8, 2025, https://medium.com/@sirigirivijay123/gitlab-sast-the-definitive-guide-to-code-security-209e807eb168
  81. Complete Guide On Kubernetes Rollback Deployment - Zeet.co, accessed July 8, 2025, https://zeet.co/blog/kubernetes-rollback-deployment
  82. Automatic rollback in case of failure (#35404) / Issue - GitLab, accessed July 8, 2025, https://gitlab.com/gitlab-org/gitlab/-/issues/35404
  83. Automated Deployment Rollbacks with GitOps Using ArgoCD and FluxCD Medium, accessed July 8, 2025, https://medium.com/@bavicnative/automating-deployment-rollbacks-with-gitops-3887a81e1b2a
  84. Why is Jenkins still relevant in 2024 over GitHub Actions and GitLab CI/CD?, accessed July 8, 2025, https://community.lambdatest.com/t/why-is-jenkins-still-relevant-in-2024-over-github-actions-and-gitlab-ci-cd/36853
  85. Jenkins vs Gitlab: Comparison of Top CI/CD Tools in 2024, accessed July 8, 2025, https://cloud.folio3.com/blog/jenkins-vs-gitlab/
  86. GitHub Actions vs Jenkins (2025): Which CI/CD tool is right for you …, accessed July 8, 2025, https://northflank.com/blog/github-actions-vs-jenkins
  87. GitLab: Pros and Cons 2025 - PeerSpot, accessed July 8, 2025, https://www.peerspot.com/products/gitlab-pros-and-cons
  88. Jenkins vs GitHub Actions: What Developers Should Know [2025] - Everhour, accessed July 8, 2025, https://everhour.com/blog/jenkins-vs-github-actions/
  89. GitLab CI vs. GitHub Actions: a Complete Comparison in 2025 - Bytebase, accessed July 8, 2025, https://www.bytebase.com/blog/gitlab-ci-vs-github-actions/
  90. GitHub vs Gitlab : r/devops - Reddit, accessed July 8, 2025, https://www.reddit.com/r/devops/comments/13e4eoj/github_vs_gitlab/
  91. GitLab - what’s so special? : r/devops - Reddit, accessed July 8, 2025, https://www.reddit.com/r/devops/comments/km593t/gitlab_whats_so_special/
  92. GitHub actions vs Gitlab CI : r/devops - Reddit, accessed July 8, 2025, https://www.reddit.com/r/devops/comments/g1i9mc/github_actions_vs_gitlab_ci/
  93. GitLab vs GitHub : Key Differences in 2025 - Spacelift, accessed July 8, 2025, https://spacelift.io/blog/gitlab-vs-github
  94. GitLab CI/CD vs. GitHub Actions - Graphite, accessed July 8, 2025, https://graphite.dev/guides/gitlab-cicd–vs-github-actions
  95. GitHub actions or Gitlab? : r/Terraform - Reddit, accessed July 8, 2025, https://www.reddit.com/r/Terraform/comments/1hj46vm/github_actions_or_gitlab/
  96. Gitlab CI vs Jenkins vs GitHub Actions : r/devops - Reddit, accessed July 8, 2025, https://www.reddit.com/r/devops/comments/105a2bn/gitlab_ci_vs_jenkins_vs_github_actions/
  97. GitLab CI: Feature Overview, Tutorial and Best Practice - Codefresh, accessed July 8, 2025, https://codefresh.io/learn/gitlab-ci/
  98. Gitlab CI Capacity/Cost Analysis - Reddit, accessed July 8, 2025, https://www.reddit.com/r/gitlab/comments/17nv9li/gitlab_ci_capacitycost_analysis/
  99. Pricing Calculator - GitHub, accessed July 8, 2025, https://github.com/pricing/calculator
  100. About billing for GitHub Actions, accessed July 8, 2025, https://docs.github.com/en/billing/managing-billing-for-your-products/about-billing-for-github-actions
  101. About service containers - GitHub Docs, accessed July 8, 2025, https://docs.github.com/en/actions/concepts/use-cases/about-service-containers
  102. Continuous Integration Tools Market Forecast From $1.36 billion in 2024 to $14.71 billion in 2037 - Research Nester, accessed July 8, 2025, https://www.researchnester.com/reports/continuous-integration-tools-market/5128
  103. Continuous Integration Tools Market Share And AnalysisReport 2025, accessed July 8, 2025, https://www.thebusinessresearchcompany.com/report/continuous-integration-tools-global-market-report
  104. Continuous Integration Tools Market Size, Analysis, & Forecast, accessed July 8, 2025, https://www.verifiedmarketresearch.com/product/continuous-integration-tools-market/
  105. Continuous Integration Tools Market Size, Share Industry Trend & Forecast 2030, accessed July 8, 2025, https://www.industryarc.com/Research/Continuous-Integration-Tools-Market-Research-500805
  106. Continuous Integration Tools Market - Size, Share & Industry Analysis - Mordor Intelligence, accessed July 8, 2025, https://www.mordorintelligence.com/industry-reports/continuous-integration-tools-market
  107. Continuous Integration (CI) Tools Market Size, Share, 2032 - Fortune Business Insights, accessed July 8, 2025, https://www.fortunebusinessinsights.com/continuous-integration-ci-tools-market-111194
  108. The State of CI/CD Report 2024 - Oshyn, accessed July 8, 2025, https://www.oshyn.com/blog/ci-cd-report-devops
  109. Welcome to the State of Developer Ecosystem Report 2024 - JetBrains, accessed July 8, 2025, https://www.jetbrains.com/lp/devecosystem-2024/
  110. 2024 Stack Overflow Developer Survey, accessed July 8, 2025, https://survey.stackoverflow.co/2024/
  111. Dev world, unplugged: 65000+ developers’ survey results on code, AI, and burnout in 2024 (and why you should speak up in 2025) by
  112. Gartner’s Magic Quadrant for DevOps Platforms 2024: Key Insights - Getint, accessed July 8, 2025, https://www.getint.io/blog/gartners-magic-quadrant-for-devops-platforms-2024-key-insights
  113. GitLab named a Leader in the Gartner® Magic Quadrant™, accessed July 8, 2025, https://about.gitlab.com/gartner-magic-quadrant/
  114. Announcing The Forrester Wave™: DevOps Platforms, Q2 2025, accessed July 8, 2025, https://www.forrester.com/blogs/announcing-the-forrester-wave-devops-platforms-q2-2025/
  115. 2024 Forrester Wave™: Supplier Value Management Platforms: Lessons & Insights - Ivalua, accessed July 8, 2025, https://www.ivalua.com/blog/2024-forrester-wave/
  116. Evolution From Continuous Automation To Autonomous Testing Platforms - Forrester, accessed July 8, 2025, https://www.forrester.com/blogs/the-evolution-from-continuous-automation-testing-platforms-to-autonomous-testing-platforms-a-new-era-in-software-testing/
  117. How GitLab Duo Helps Developers: AI Features in GitLab and Their …, accessed July 8, 2025, https://softprom.com/how-gitlab-duo-helps-developers-ai-features-in-gitlab-and-their-impact-on-productivity
  118. GitLab Duo - GitLab Docs, accessed July 8, 2025, https://docs.gitlab.com/user/gitlab_duo/
  119. Unlocking AI for every GitLab Premium and Ultimate customer, accessed July 8, 2025, https://about.gitlab.com/blog/gitlab-premium-with-duo/
  120. GitLab Duo, accessed July 8, 2025, https://about.gitlab.com/gitlab-duo/
  121. What is GitLab Duo? - Eficode.com, accessed July 8, 2025, https://www.eficode.com/blog/what-is-gitlab-duo
  122. GitLab 18.0 released with GitLab Duo for Premium and Ultimate …, accessed July 8, 2025, https://about.gitlab.com/releases/2025/05/15/gitlab-18-0-released/
  123. AI Adoption in DevOps and CI/CD: How Intelligent Automation is …, accessed July 8, 2025, https://www.monterail.com/blog/ai-adoption-in-devops-and-ci-cd
  124. The Future of DevOps: Can AI Replace Engineers?, accessed July 8, 2025, https://devopsinside.com/the-future-of-devops-can-ai-replace-engineers/
  125. How AI Is Transforming the Future of Software Development with Wing To - DevOps.com, accessed July 8, 2025, https://devops.com/how-ai-is-transforming-the-future-of-software-development-with-wing-to/
  126. The Future of DevOps: From Automation to AI-Driven Engineering by Kiran Kumar Pinapatruni Jun, 2025 Medium, accessed July 8, 2025, https://medium.com/@kirann.bobby/the-future-of-devops-from-automation-to-ai-driven-engineering-2e08b5dd2b32
  127. Impact of Emerging AI Techniques on CI/CD Deployment Pipelines - ResearchGate, accessed July 8, 2025, https://www.researchgate.net/publication/387556393_Impact_of_Emerging_AI_Techniques_on_CICD_Deployment_Pipelines
  128. Why AI code assistants need a security reality check, accessed July 8, 2025, https://www.helpnetsecurity.com/2025/06/19/silviu-asandei-sonar-ai-code-assistants-security/
  129. Four Security Risks Posed by AI Coding Assistants, accessed July 8, 2025, https://www.cybersecurityintelligence.com/blog/four-security-risks-posed-by-ai-coding-assistants-7847.html
  130. The Rise of GenAI Code Assistants and the Security Risks Lurking Beneath the Surface, accessed July 8, 2025, https://www.devopsdigest.com/the-rise-of-genai-code-assistants-and-the-security-risks-lurking-beneath-the-surface
  131. AI Coding Assistants: 17 Risks (And How To Mitigate Them) - Forbes, accessed July 8, 2025, https://www.forbes.com/councils/forbestechcouncil/2025/03/21/ai-coding-assistants-17-risks-and-how-to-mitigate-them/
  132. Security Implications of AI Code Generation: Auditing and Hardening Generated Code, accessed July 8, 2025, https://www.gocodeo.com/post/security-implications-of-ai-code-generation-auditing-and-hardening-generated-code
  133. 3 Steps for Securing Your AI-Generated Code - Qodo, accessed July 8, 2025, https://www.qodo.ai/blog/3-steps-securing-your-ai-generated-code/
  134. Top 5 AI Code Security Risks & How To Mitigate Them - Mindgard, accessed July 8, 2025, https://mindgard.ai/blog/ai-code-security
  135. LLM Security & Safe Prompt Engineering by Dave Patten - Medium, accessed July 8, 2025, https://medium.com/@dave-patten/llm-security-safe-prompt-engineering-c48268f43a22
  136. Prompt Engineering for AI Guide Google Cloud, accessed July 8, 2025, https://cloud.google.com/discover/what-is-prompt-engineering
  137. www.legitsecurity.com, accessed July 8, 2025, https://www.legitsecurity.com/aspm-knowledge-base/devops-governance#:~:text=DevOps%20governance%20is%20a%20structured,integrates%20governance%20controls%20early%20on.
  138. DevOps Governance: Importance and Best Practices - Legit Security, accessed July 8, 2025, https://www.legitsecurity.com/aspm-knowledge-base/devops-governance
  139. What is CI/CD? - GitLab, accessed July 8, 2025, https://about.gitlab.com/topics/ci-cd/
  140. 23% Cost savings and 36% performance gain by deploying GitLab on Arm-based AWS Graviton2, accessed July 8, 2025, https://about.gitlab.com/blog/achieving-23-cost-savings-and-36-performance-gain-using-gitlab-and-gitlab-runner-on-arm-neoverse-based-aws-graviton2-processor/
  141. Case Study MGA x GitLab - Deviniti, accessed July 8, 2025, https://deviniti.com/software-development-case-studies/case-study-mga-gitlab/