Chef 업그레이드

Chef는 omnibus-gitlab의 중요한 구성 요소이며 주기적으로 업데이트해야 합니다. 최신 버전으로 업그레이드하고 기능을 확인하는 방법은 다음과 같습니다.

업그레이드 단계

  1. omnibus-gitlab에서 새 브랜치를 생성합니다.

    git switch -c upgrade-chef-to-X
    
  2. config/templates/omnibus-gitlab-gems/Gemfile에서 적절한 소프트웨어 항목을 업데이트합니다.

  3. config/templates/omnibus-gitlab-gems 디렉토리에서 업데이트된 젬에 대해 bundle update를 실행합니다:

    bundle update chef ohai
    
  4. Gemfile의 항목을 새 버전으로 업데이트합니다. 최소한 chefohai 항목은 업데이트해야 합니다.

  5. 번들을 업데이트합니다.

    1. 주요 버전 업그레이드인 경우
    bundle update chef ohai
    
    1. 부 버전 업그레이드인 경우
    bundle update chef ohai --conservative
    

    의존성 업그레이드와 관련된 오류를 추적해야 할 수 있습니다.

  6. 변경 사항을 커밋합니다.

    git add config/templates/omnibus-gitlab-gems/Gemfile{,.lock}
    git add Gemfile{,.lock}
    git commit
    git push
    
  7. GitLab.com에서 파이프라인이 통과하는지 확인합니다.

  8. gitlab-qa 실행을 보장하기 위해 EE 패키지 파이프라인을 트리거합니다.

  9. 사용 가능할 때 HA 검증 작업을 트리거합니다.

  10. 패키지 파이프라인과 HA 검증 작업의 QA 작업을 확인하고 파이프라인이 초록색인지 또는 실패가 무관한지 확인합니다.

  11. dev.gitlab.orgomnibus-gitlab에 푸시하고 모든 플랫폼에서 패키지가 빌드되는지 확인합니다.

  12. 개발 환경에서 패키지를 다운로드하고 이전 버전의 omnibus-gitlab에서 새 패키지로 업그레이드할 수 있는지 검증합니다.

  13. 새 패키지를 사용하여 Geo 설치가 성공적인지 확인합니다.

보너스 포인트

  1. Changelog와 릴리스 노트를 읽고, omnibus에 적용될 수 있는 개선 사항, 새로운 기능 또는 버그 수정을 식별하고 후속 문제를 열어둡니다.