InfoGrab Docs

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를 선택합니다
  • 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를 사용하여 모든 서비스가 정상인지 확인합니다

  • 지침에 따라 Ultimate EE 라이선스를 활성화합니다

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 애드온이 포함된 Ultimate EE 라이선스가 활성화된 경우 추가 Amazon 라이선스가 필요하지 않습니다.

6. 테스트#

이슈머지 리퀘스트에 대한 기능을 테스트합니다

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를 선택합니다
  • 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를 사용하여 모든 서비스가 정상인지 확인합니다

  • 지침에 따라 Ultimate EE 라이선스를 활성화합니다

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 애드온이 포함된 Ultimate EE 라이선스가 활성화된 경우 추가 Amazon 라이선스가 필요하지 않습니다.

6. 테스트#

이슈머지 리퀘스트에 대한 기능을 테스트합니다