omnibus-mirror
빌드 및 릴리스 프로세스 중 외부 리소스에 대한 의존성을 최소화하기 위해, 우리는 GitLab 리소스 내에서 다양한 소프트웨어 종속성의 미러를 유지하고 있습니다.
이 시스템은 GitLab.com의 그룹과 dev.gitlab.org
의 두 개 그룹으로 구성되어 있습니다.
-
- 상위 소스의 미러를 가져와서 해당
dev.gitlab.org
프로젝트로 푸시합니다. - 공개적으로 액세스 가능해야 합니다.
trigger-package
파이프라인 및 커뮤니티 개발자들이 사용자 정의omnibus-gitlab
패키지를 빌드하는 데 사용할 수 있어야 합니다.
- 상위 소스의 미러를 가져와서 해당
-
-
dev.gitlab.org
의 파이프라인은 이러한 프로젝트를 사용하여omnibus-gitlab
프로젝트를 빌드합니다. 이에는 패키지 릴리스 및 GitLab 팀 멤버가 모든 지원 플랫폼용 사용자 정의omnibus-gitlab
패키지를 빌드하는 데 사용되는 빌드가 포함됩니다.
-
프로젝트 추가
-
gitlab-omnibus-mirror-bot
으로 GitLab.com에 로그인합니다. 로그인 세부 정보는 1Password의 빌드 보안 저장소에 있습니다. -
새 프로젝트를 클릭하여 프로젝트를 생성합니다.
- 프로젝트 이름: 일반적으로 상위 이름과 일치해야 합니다.
-
프로젝트 URL: 드롭다운에서 Groups 하위 그룹에서
gitlab-org/build/omnibus-mirror
를 선택합니다. - 가시성 수준: Public으로 설정합니다.
- README.md와 같은 파일을 생성할 수 있는 옵션은 비활성화합니다.
- 나머지 옵션은 기본값으로 유지한 채 프로젝트 만들기를 클릭합니다.
- 풀 미러 설정
- 왼쪽 메뉴에서 Settings -> Repository를 클릭합니다.
- Mirroring repositories 옵션 옆의 Expand를 클릭합니다.
- Git repository URL을 미러링할 상위 URL로 설정합니다.
- Mirror direction을 Pull로 변경합니다.
- Overwrite diverged branches 옵션을 선택합니다.
- 풀 미러를 추가하려면 Repository 미러링을 클릭합니다. 저장소의 크기에 따라 실행 시간이 몇 분 정도 걸릴 수 있습니다.
- 나중에 필요하므로 이 페이지를 열어둡니다.
-
build_mirror_bot
으로dev.gitlab.org
에 로그인합니다. 로그인 세부 정보는 1Password의 빌드 보안 저장소에 있습니다. -
새 프로젝트를 클릭하여 프로젝트를 생성합니다.
- 프로젝트 이름: 일반적으로 상위 이름과 일치해야 합니다.
-
프로젝트 URL: 드롭다운에서 Groups 하위 그룹에서
omnibus-mirror
를 선택합니다. - 가시성 수준: Private으로 설정합니다.
- 나머지 옵션은 기본값으로 유지한 채 프로젝트 만들기를 클릭합니다.
-
omnibus-builder
배포 키를 활성화합니다.- Settings -> Repository로 이동합니다.
- Deploy Keys 섹션 옆의 Expand를 클릭합니다.
- Privately accessible deploy keys 탭을 클릭합니다.
-
omnibus-builder deploy key
를 찾아 옆의 Enable 버튼을 클릭합니다.
- 푸시 미러 설정
- GitLab.com 프로젝트의 Mirroring repositories 페이지로 돌아갑니다.
-
Git repository URL에
https://
와dev.gitlab.org
사이에build_mirror_bot@
를 삽입한dev.gitlab.org
의 경로를 입력합니다. -
Password에 1Password의 빌드 보안 저장소의 Build Team Mirror Bot 항목에서 가져온
PAT
를 입력합니다. - README.md와 같은 파일을 생성할 수 있는 옵션은 비활성화합니다.
- 나머지 옵션은 기본값으로 유지한 채 Mirror repository를 클릭합니다.
- 초기 미러링을 트리거하기 위해 지금 업데이트 버튼을 클릭합니다.