GitLab과 Amazon Q의 테스트 설정
GCP 프로젝트를 생성하려면 지침을 따르세요 GCP Compute Engine 페이지로 이동하여 Create Instance를 클릭합니다 e2-standard-4 (4 vCPUs, 16 GB 메모리) 머신 구성을 선택합니다
1. 기능 브랜치에서 GitLab용 Linux 패키지 얻기#
- 머지 리퀘스트에
"pipeline:run-all-e2e"레이블을 적용하고 새 파이프라인을 실행합니다 - Stage qa-->e2e:test-on-omnibus-ee-->Downstream TRIGGERED_EE_PIPELINE 파이프라인으로 이동하여 원하는 Ubuntu 버전에 대한 작업을 선택합니다. 예:
Ubuntu-22.04-branch - 작업 아티팩트를 다운로드하고 내용을 추출합니다
2. GCP에서 Linux 인스턴스 설정#
-
GCP 프로젝트를 생성하려면 지침을 따르세요
- Cloud Account를 생성하는 동안
gcp-669306fb(organizations/769164969568)Cloud Provider를 선택합니다
- Cloud Account를 생성하는 동안
-
GCP Compute Engine 페이지로 이동하여
Create Instance를 클릭합니다 -
e2-standard-4(4 vCPUs, 16 GB 메모리) 머신 구성을 선택합니다 -
기본적으로
Debian운영 체제와Debian GNU/Linux 12버전이 선택됩니다.OS and storage탭에서Ubuntu도 선택할 수 있습니다. -
디스크 크기 100 GB 선택
-
Create클릭 -
gcloud compute ssh --zone <zone_name> <instance_name> --project <project_name>명령을 사용하여 인스턴스에 SSH 접속합니다. 이 명령은 UI의Connect열,View gcloud command서브메뉴에서 사용 가능합니다. -
cat /etc/os-release와 같은 명령을 사용하여 OS 버전을 확인합니다 -
다음 명령을 사용하여 포트 443 및 80에 대한 접근을 허용합니다
gcloud compute firewall-rules create default-allow-https \ --project=<project_name> \ --direction=INGRESS \ --priority=1000 \ --network=default \ --action=ALLOW \ --rules=tcp:443 \ --source-ranges=0.0.0.0/0 gcloud compute firewall-rules create default-allow-http \ --project=<project_name> --direction=INGRESS \ --priority=1000 \ --network=default \ --action=ALLOW \ --rules=tcp:80 \ --source-ranges=0.0.0.0/0
3. DNS 구성#
- 상표 등록되지 않은 도메인 이름 구매를 위해 이 지침을 따르세요
- 클라우드 도메인 등록은 Cloud DNS 항목도 생성합니다
gcloud compute instances describe <vm_name> --zone=<zone_name> --project=<project_name> --format='get(networkInterfaces[0].accessConfigs[0].natIP)'명령을 사용하여 VM의 공용 IP를 가져옵니다gcloud dns record-sets create <dns_name> --zone=<zone_name> --project=<project_name> --type="A" --ttl="300" --rrdatas=<public_ip>명령을 사용하여 루트 도메인과 서브 도메인에 대한A레코드를 생성합니다nslookup또는dig를 사용하여 DNS 설정을 확인합니다
4. VM에 패키지 설치#
-
gcloud compute scp <source_file> <instance_name>:<destination_path> --zone <zone_name> --project <project_name>명령을 사용하여 다운로드한 아티팩트를 VM에 전송합니다 -
사전 설치 단계를 완료합니다
-
필요한 패키지 설치
sudo apt-get update sudo apt-get install -y curl openssh-server ca-certificates perl -
sudo dpkg -i <package_name>명령을 사용하여 패키지를 설치합니다 -
/etc/gitlab/gitlab.rb에서external_url을 이전 단계에서 구성한 도메인 이름(https://포함)으로 설정하고sudo gitlab-ctl reconfigure를 실행합니다 -
초기 root 비밀번호는
/etc/gitlab/initial_root_password에 있습니다 -
sudo gitlab-ctl status를 사용하여 모든 서비스가 정상인지 확인합니다 -
이 지침에 따라
UltimateEE 라이선스를 활성화합니다
4.a. VM의 설치된 패키지 업데이트#
-
gcloud compute ssh --zone <zone_name> <instance_name> --project <project_name>명령을 사용하여 VM에 SSH 접속합니다 -
gcloud compute scp <full_path_to_package_file>:/home/<user_name> --zone <zone_name> --project <project_name>명령을 사용하여 업데이트된 패키지를 전송합니다 -
다음 명령을 실행합니다:
sudo touch /etc/gitlab/skip-auto-backup sudo apt update sudo dpkg -i <package_name> sudo rm /etc/gitlab/skip-auto-backup
5. AWS 구성#
- AWS 계정을 생성하려면 지침을 따르세요.
- 계정에 접근하려면 지침을 따르세요.
- GitLab Duo with Amazon Q를 설정하려면 지침을 따르세요.
- Amazon Q Developer에는 무료 티어가 있으므로
GitLab Duo with Amazon Q애드온이 포함된UltimateEE 라이선스가 활성화된 경우 추가 Amazon 라이선스가 필요하지 않습니다.
