Auto DevOps

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

GitLab Auto DevOps는 소프트웨어 전달 프로세스를 지원하기 위해 함께 작동하는 미리 구성된 기능 및 통합의 집합입니다.

Auto DevOps는 프로그래밍 언어를 감지하고 CI/CD 템플릿을 사용하여 애플리케이션을 빌드하고 테스트하기 위한 기본 파이프라인을 생성하고 실행합니다. 그런 다음 앱을 스테이징 및 프로덕션에 배포하고 브랜치별 변경 사항을 미리 보기 위해 리뷰 앱을 설정할 수 있습니다.

기본 설정을 사용하여 앱을 빠르게 출시하고 나중에 반복 및 사용자 정의할 수 있습니다.

또한 Auto DevOps를 API로 관리할 수도 있습니다.

::Tabs

Auto DevOps 속성

::Tabs

Auto DevOps features

Auto DevOps는 DevOps stage 각각에서 개발을 지원합니다.

스테이지 Auto DevOps 기능
빌드 자동 빌드
빌드 자동 의존성 스캔
테스트 자동 테스트
테스트 자동 브라우저 성능 테스트
테스트 자동 코드 지능
테스트 자동 코드 품질
테스트 자동 컨테이너 스캔
배포 자동 리뷰 앱
배포 자동 배포
보안 자동 동적 응용 프로그램 보안 테스트 (DAST)
보안 자동 정적 응용 프로그램 보안 테스트 (SAST)
보안 자동 비밀 감지

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

Auto DevOps는 흔히 애플리케이션 플랫폼이나 Platform as a Service (PaaS)에 포함된 기능을 제공합니다.

Heroku에서 영감을 받은 Auto DevOps는 다음과 같은 여러 가지 측면에서 그 이상으로 나아갑니다:

  • Auto DevOps는 모든 Kubernetes 클러스터와 작동합니다.
  • 추가 비용이 없습니다.
  • 자체 호스팅된 클러스터 또는 모든 공용 클라우드에서 사용할 수 있습니다.
  • Auto DevOps는 점진적으로 졸업하는 경로를 제공합니다. 사용자 정의가 필요하다면 템플릿을 변경한 후 거기서 발전시키세요.

Auto DevOps 시작하기

Auto DevOps를 시작하려면 Auto DevOps를 활성화해야 합니다. Auto DevOps 파이프라인을 실행하여 애플리케이션을 빌드하고 테스트하는 데 충분합니다.

앱을 빌드, 테스트 및 배포하려는 경우:

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

Auto DevOps 활성화 또는 비활성화

Auto DevOps는 자동으로 파이프라인을 실행하며만 Dockerfile 또는 일치하는 빌드 팩이 있는 경우입니다.

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

인스턴스 유형 프로젝트 그룹 인스턴스 (관리자 영역)
GitLab SaaS Yes Yes No
GitLab Self-Managed형 Yes Yes Yes

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

프로젝트 수준

개별 프로젝트에서 Auto DevOps를 사용하려면 프로젝트별로 활성화할 수 있습니다. 더 많은 프로젝트에 대해 사용할 계획이라면 그룹이나 인스턴스에서 활성화할 수도 있습니다. 이렇게 하면 각 프로젝트에서 활성화할 필요 없이 시간을 절약할 수 있습니다.

전제 조건:

  • 프로젝트의 유지보수자 역할을 최소한으로 가지고 있어야 합니다.
  • 프로젝트에 .gitlab-ci.yml 파일이 없는지 확인합니다. 파일이 있으면 CI/CD 구성이 Auto DevOps 파이프라인보다 우선합니다.

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

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

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

비활성화하려면 동일한 프로세스를 따라가서 기본 Auto DevOps 파이프라인으로 설정 확인란을 선택해제합니다.

그룹 수준

그룹 수준에서 Auto DevOps를 활성화하면 해당 그룹 및 프로젝트 그룹에서 설정을 상속받습니다. 각 하위 그룹이나 프로젝트별로 활성화하는 대신 그룹에 대해 활성화하면 시간을 절약할 수 있습니다.

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

  1. 좌측 사이드바에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
  2. 설정 > CI/CD를 선택합니다.
  3. Auto DevOps를 확장합니다.
  4. 기본 Auto DevOps 파이프라인으로 설정 확인란을 선택합니다.
  5. 변경 사항 저장을 선택합니다.

그룹 수준에서 Auto DevOps를 비활성화하려면 동일한 프로세스를 따르고 기본 Auto DevOps 파이프라인으로 설정 확인란을 선택해제합니다.

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

  1. 좌측 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
  2. 프로젝트에 .gitlab-ci.yml 파일이 없는지 확인합니다.
  3. 빌드 > 파이프라인을 선택합니다.
  4. Auto DevOps 파이프라인을 트리거하려면 파이프라인 실행을 선택합니다.

인스턴스 수준

Tier: 무료, Premium, Ultimate Offering: Self-Managed형, GitLab Dedicated

모든 프로젝트에 대해 기본적으로 Auto DevOps를 활성화하려면 인스턴스 수준에서 활성화할 수 있습니다. Auto DevOps를 실행하지 않으려는 그룹 및 프로젝트에서는 여전히 Auto DevOps를 비활성화할 수 있습니다.

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

  1. 좌측 사이드바에서 맨 아래에서 관리자 영역을 선택합니다.
  2. 설정 > CI/CD를 선택합니다.
  3. Auto DevOps를 확장합니다.
  4. 기본 Auto DevOps 파이프라인으로 설정 확인란을 선택합니다.
  5. 선택 사항입니다. Auto DevOps 기본 도메인을 추가합니다.
  6. 변경 사항 저장을 선택합니다.

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

.gitlab-ci.yml 파일이 있는 경우 해당 파일은 변경되지 않으며 Auto DevOps는 영향을 주지 않습니다.

인스턴스 수준에서 Auto DevOps를 비활성화하려면 동일한 프로세스를 따르고 기본 Auto DevOps 파이프라인으로 설정 확인란을 선택해제합니다.

클라우드 공급업체에 앱 배포

GitLab 업데이트 시 Auto DevOps 의존성 업그레이드

GitLab을 업데이트하는 경우 새로운 GitLab 버전과 일치하도록 Auto DevOps 의존성을 업그레이드해야 할 수 있습니다:

개인 레지스트리 지원

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

대신, Auto DevOps와 함께 GitLab 컨테이너 레지스트리를 사용하여 구성을 간소화하고 예기치 못한 문제를 방지하세요.

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

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

그렇게 하려면 설치 pod에 런타임에서 프록시 설정을 주입해야 합니다.

관련 주제

문제 해결

Auto DevOps 문제 해결 참조.