개발자를 위한 Rake 태스크
개발자 및 GitLab 기여자를 위한 Rake 태스크의 종류와 사용 방법을 설명합니다.
GitLab에 기여하는 개발자와 그 외 기여자가 사용할 수 있는 Rake 태스크가 있습니다. 개발자 시드로 데이터베이스 설정 # 데이터베이스 사용자에게 고급 권한이 없으면 이 명령을 실행하기 전에 데이터베이스를 수동으로 생성해야 합니다. bundle exec rake setup setup 태스크는 gitlab:setup 의 별칭입니다. 이 태스크는 db:reset 을 호출해 데이터베이스를 생성하고, db:seed_fu 를 호출해 데이터베이스에 시드 데이터를 삽입합니다. db:setup 은 db:seed 를 호출하지만 아무 동작도 하지 않습니다. 환경 변수 # MASS_INSERT : 수백만 개의 사용자(200만), 프로젝트(500만)와 그 관련 데이터를 생성합니다. 개발 중에 느린 쿼리를 찾으려면 이 옵션과 함께 시드를 실행하는 것을 강력히 권장합니다. 이 프로세스에는 최대 20분이 추가로 소요됩니다. Rails 모델 대량 삽입 도 참고합니다. LARGE_PROJECTS : 미리 정의된 URL 집합에서 (가져오기를 통해) 대형 프로젝트를 생성합니다. 시드 데이터 # 모든 프로젝트 또는 단일 프로젝트에 이슈 시드 삽입 # gitlab:seed:issues 태스크로 모든 프로젝트 또는 지정한 프로젝트에 이슈 시드를 삽입할 수 있습니다. # All projects bin/rake gitlab:seed:issues # A specific project bin/rake "gitlab:seed:issues[group-path/project-path]" 기본적으로 이 태스크는 프로젝트마다 최근 5주 동안 주당 평균 2개의 이슈를 삽입합니다. Insights 차트를 위한 이슈 시드 삽입 # gitlab:seed:insights:issues 태스크로 Insights 차트 작업에 특화된 이슈 시드를 삽입할 수 있습니다. # All projects bin/rake gitlab:seed:insights:issues # A specific project bin/rake "gitlab:seed:insights:issues[group-path/project-path]" 기본적으로 이 태스크는 프로젝트마다 최근 52주 동안 주당 평균 10개의 이슈를 삽입합니다. 모든 이슈에는 team, type, severity, priority 레이블도 무작위로 지정됩니다. 하위 그룹이 포함된 그룹 시드 삽입 # gitlab:seed:group_seed 태스크로 마일스톤 및 프로젝트가 포함된 하위 그룹을 가진 그룹 시드를 삽입할 수 있습니다. bin/rake "gitlab:seed:group_seed[subgroup_depth, username, organization_path]" GitLab 인스턴스에서 에픽 기능을 사용할 수 있으면 그룹에 에픽 시드도 함께 삽입됩니다. 러너 플릿 테스트 환경 시드 삽입 # gitlab:seed:runner_fleet 태스크로 전체 러너 플릿, 즉 러너와 파이프라인이 포함된 프로젝트와 하위 그룹을 가진 그룹의 시드를 삽입합니다. bin/rake