Auto DevOps

Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-managed, GitLab Dedicated

GitLab Auto DevOps는 소프트웨어 배포 프로세스를 지원하기 위해 함께 작동하는 사전 구성된 기능 및 통합 모음입니다.

Auto DevOps는 프로그래밍 언어를 감지하고 CI/CD 템플릿을 사용하여 애플리케이션을 빌드하고 테스트하기 위한 기본 파이프라인을 생성하고 실행합니다.

그런 다음 배포를 구성하여 스테이징 및 프로덕션에 앱을 배포하고, 리뷰 앱을 설정하여 각 브랜치의 변경 사항을 미리 볼 수 있습니다.

기본 설정을 사용하여 앱을 신속하게 배포하고, 나중에 반복하고 사용자 정의할 수 있습니다.

또한 API를 사용하여 Auto DevOps를 관리할 수 있습니다.


Auto DevOps에 대한 소개는 Auto DevOps를 시청하세요.

Auto DevOps 기능

Auto DevOps는 각 DevOps 단계 동안의 개발을 지원합니다.

Stage Auto DevOps feature
Build Auto Build
Build Auto Dependency Scanning
Test Auto Test
Test Auto Browser Performance Testing
Test Auto Code Intelligence
Test Auto Code Quality
Test Auto Container Scanning
Deploy Auto Review Apps
Deploy Auto Deploy
Secure Auto Dynamic Application Security Testing (DAST)
Secure Auto Static Application Security Testing (SAST)
Secure Auto Secret Detection

애플리케이션 플랫폼 및 PaaS와의 비교

Auto DevOps는 애플리케이션 플랫폼 또는 서비스형 플랫폼(PaaS)에 포함되는 기능을 제공합니다.

Heroku에서 영감을 받은 Auto DevOps는 여러 면에서 그를 넘어섭니다:

  • Auto DevOps는 모든 Kubernetes 클러스터와 작동합니다.
  • 추가 비용이 없습니다.
  • 자신이 호스팅하는 클러스터나 모든 공개 클라우드에서 사용할 수 있습니다.
  • Auto DevOps는 점진적인 졸업 경로를 제공합니다. 사용자 정의가 필요하다면 템플릿을 변경하는 것부터 시작하고 그로부터 발전할 수 있습니다.

Auto DevOps 시작하기

시작하려면 Auto DevOps를 활성화하기만 하면 됩니다.
이것만으로도 애플리케이션을 빌드하고 테스트하기 위한 Auto DevOps 파이프라인을 실행할 수 있습니다.

앱을 빌드하고 테스트하며 배포하려면:

  1. 배포 요구 사항을 확인합니다.
  2. Auto DevOps를 활성화합니다.
  3. 클라우드 공급자에 앱을 배포합니다.

Auto DevOps 활성화 또는 비활성화

Auto DevOps는 Dockerfile 또는 일치하는 빌드팩이 존재할 경우에만 파이프라인을 자동으로 실행합니다.

인스턴스 유형에 따라 Auto DevOps를 다음 수준에서 활성화하거나 비활성화할 수 있습니다:

인스턴스 유형 프로젝트 그룹 인스턴스 (Admin 영역)
GitLab SaaS 아니오
GitLab 자체 관리

Auto DevOps를 활성화하기 전에 배포를 위한 준비를 고려하세요. 그렇지 않으면, Auto DevOps는 앱을 빌드하고 테스트할 수 있지만 배포할 수는 없습니다.

프로젝트별

개별 프로젝트에 대해 Auto DevOps를 사용하려면, 프로젝트별로 활성화할 수 있습니다. 더 많은 프로젝트에서 사용하려는 경우, 그룹 또는 인스턴스에 대해 활성화할 수 있습니다. 이렇게 하면 각 프로젝트에서 활성화하는 시간을 절약할 수 있습니다.

전제 조건:

  • 프로젝트에 대해 최소한 유지 관리자인 역할이 있어야 합니다.
  • 프로젝트에 .gitlab-ci.yml 파일이 없도록 하세요. 존재할 경우, CI/CD 구성이 Auto DevOps 파이프라인보다 우선합니다.

프로젝트에 대한 Auto DevOps를 활성화하려면:

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
  2. 설정 > CI/CD를 선택합니다.
  3. Auto DevOps를 확장합니다.
  4. Default to Auto DevOps pipeline 체크박스를 선택합니다.
  5. 선택 사항이지만 권장됩니다. 기본 도메인을 추가합니다.
  6. 선택 사항이지만 권장됩니다. 배포 전략을 선택합니다.
  7. 변경 사항 저장을 선택합니다.

GitLab은 기본 브랜치에서 Auto DevOps 파이프라인을 트리거합니다.

비활성화하려면 같은 과정을 따르고 Default to Auto DevOps pipeline 체크박스를 지웁니다.

그룹별

그룹에 대해 Auto DevOps를 활성화하면 해당 그룹의 하위 그룹 및 프로젝트가 구성을 상속합니다. 각 하위 그룹이나 프로젝트에 대해 활성화하는 것보다 그룹에 대해 Auto DevOps를 활성화하여 시간을 절약할 수 있습니다.

그룹에 대해 활성화된 경우, 사용하고 싶지 않은 하위 그룹 및 프로젝트에 대해 Auto DevOps를 비활성화할 수 있습니다.

전제 조건:

  • 그룹에 대해 소유자 역할이 있어야 합니다.

그룹에 대한 Auto DevOps를 활성화하려면:

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
  2. 설정 > CI/CD를 선택합니다.
  3. Auto DevOps를 확장합니다.
  4. Default to Auto DevOps pipeline 체크박스를 선택합니다.
  5. 변경 사항 저장을 선택합니다.

그룹에 대해 Auto DevOps를 활성화한 후에는 해당 그룹에 속하는 모든 프로젝트에 대해 Auto DevOps 파이프라인을 트리거할 수 있습니다:

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
  2. 프로젝트에 .gitlab-ci.yml 파일이 포함되어 있지 않은지 확인합니다.
  3. 빌드 > 파이프라인을 선택합니다.
  4. Auto DevOps 파이프라인을 트리거하려면 새 파이프라인을 선택합니다.

인스턴스별

Tier: Free, Premium, Ultimate Offering: Self-managed, GitLab Dedicated

모든 프로젝트에 대해 기본적으로 Auto DevOps를 활성화하려면 전체 인스턴스에 대해 활성화할 수 있습니다.
실행하고 싶지 않은 각 그룹과 프로젝트에 대해 Auto DevOps를 비활성화할 수 있습니다.

인스턴스에 대해 비활성화되더라도 그룹 소유자와 프로젝트 유지 관리자는 특정 그룹과 프로젝트에 대해
여전히 Auto DevOps를 활성화할 수 있습니다.

전제 조건:

  • 인스턴스의 관리자여야 합니다.

인스턴스에서 Auto DevOps를 활성화하려면:

  1. 왼쪽 사이드바에서 하단의 Admin을 선택합니다.
  2. Settings > CI/CD를 선택합니다.
  3. Auto DevOps를 확장합니다.
  4. Default to Auto DevOps pipeline 체크박스를 선택합니다.
  5. 선택 사항. Auto DevOps 기본 도메인을 추가합니다.
  6. Save changes을 선택합니다.

활성화되면 Auto DevOps는 모든 프로젝트에서 파이프라인을 실행하려고 시도합니다.
특정 프로젝트에서 파이프라인이 실패하면 비활성화됩니다.
GitLab 관리자는 Auto DevOps 설정에서 이를 변경할 수 있습니다.

.gitlab-ci.yml 파일이 존재하면
변경되지 않으며 Auto DevOps는 이를 영향을 미치지 않습니다.

인스턴스에 대해 Auto DevOps를 비활성화하려면 동일한 프로세스를 따르고
Default to Auto DevOps pipeline 체크박스를 지웁니다.

클라우드 제공업체에 애플리케이션 배포

GitLab 업데이트 시 Auto DevOps 종속성 업그레이드

GitLab을 업데이트할 때 새 GitLab 버전에 맞게 Auto DevOps 종속성을 업그레이드해야 할 수도 있습니다:

개인 레지스트리 지원

Auto DevOps에서 개인 컨테이너 레지스트리를 사용할 수 있다는 보장은 없습니다.

대신 구성을 단순화하고 예상치 못한 문제를 방지하기 위해
Auto DevOps와 함께 GitLab 컨테이너 레지스트리를 사용하십시오.

프록시 뒤에서 애플리케이션 설치

Helm과의 GitLab 통합은 프록시 뒤에서 애플리케이션을 설치하는 것을 지원하지 않습니다.

원하는 경우 런타임에 설치 팟에 프록시 설정을 주입해야 합니다.

관련 주제

문제 해결

Auto DevOps 문제 해결 보기.