Cloud Assembly는 소스 제어 하에 VMware Cloud Templates 및 작업 스크립트를 관리할 수 있도록 다양한 Git 저장소 버전과의 통합을 지원합니다. 이 기능은 배포와 관련된 프로세스의 감사 및 책임을 용이하게 합니다.

Cloud Assembly는 다음 목록에 설명된 대로 다양한 버전의 Git 저장소를 지원합니다. 이러한 각 옵션은 별도의 통합입니다.

  • GitHub 클라우드, GitHub Enterprise 온-프레미스
  • GitLab 클라우드, GitLab Enterprise 온-프레미스
  • BitBucket 온-프레미스

Cloud Assembly로 Git 통합을 설정하려면 지정된 모든 사용자에 대한 액세스 권한으로 구성된 적절한 로컬 Git 저장소가 있어야 합니다. 또한 클라우드 템플릿을 Git에서 검색할 수 있도록 특정 구조로 저장해야 합니다. GitLab 또는 GitHub와의 통합을 생성하려면 Cloud Assembly에서 인프라 > 연결 > 통합을 선택한 다음 적절한 항목을 선택합니다. 대상 저장소에 대한 URL과 토큰이 필요합니다.

Git 통합이 기존 저장소에 구성되면 선택된 프로젝트와 연결된 모든 클라우드 템플릿을 자격 있는 사용자가 사용할 수 있게 됩니다. 이러한 템플릿은 기존 배포와 함께 사용하거나 새 배포의 기초로 사용할 수 있습니다. 프로젝트를 추가할 때 Git에서 프로젝트가 저장되는 위치와 방법에 관한 몇 가지 속성을 선택해야 합니다.

Cloud Assembly에서 직접 Git 저장소에 작업을 저장할 수 있습니다. 작업 스크립트 버전을 Git에 직접 지정하거나 Cloud Assembly에서 버전을 생성할 수도 있습니다. Cloud Assembly에서 작업 버전을 생성하면 자동으로 Git에 버전으로 저장됩니다. 클라우드 템플릿은 조금 더 복잡합니다. Cloud Assembly에서 Git 통합에 직접 추가할 수 없기 때문입니다. Git 인스턴스에 직접 저장해야 합니다. 그런 다음, Cloud Assembly에서 클라우드 템플릿 관리 페이지로 작업할 때 Git에서 검색할 수 있습니다.

시작하기 전에

클라우드 템플릿을 GitLab 또는 GitHub에서 검색할 수 있도록 특정 구조로 생성하고 저장해야 합니다.

  • GitLab에 올바르게 통합되도록 클라우드 템플릿을 구성하고 저장합니다. 유효한 템플릿만 GitLab으로 가져올 수 있습니다.
    • 클라우드 템플릿에 대해 지정된 폴더를 하나 이상 생성합니다.
    • 모든 클라우드 템플릿은 blueprint.yaml 파일 내에 저장되어야 합니다.
    • 템플릿 맨 위에 name:version: 속성이 포함되어 있는지 확인합니다.
  • 해당하는 저장소의 API 키를 추출합니다. Git 계정에서 오른쪽 상단 모서리에 있는 로그인을 선택하고 개발자 설정을 클릭합니다. 개인용 액세스 토큰으로 이동한 다음 토큰 이름을 지정하고 만료 날짜를 설정합니다. 그런 다음, API를 선택하고 토큰을 생성합니다. 결과 값을 복사하여 저장합니다.

Git 통합에 사용되는 모든 클라우드 템플릿에 대해 다음 지침을 준수해야 합니다.

  • 각 클라우드 템플릿은 별도의 폴더에 상주해야 합니다.
  • 모든 클라우드 템플릿의 이름은 blueprint.yaml로 지정해야 합니다.
  • 모든 클라우드 템플릿 YAML 파일은 nameversion 필드를 사용해야 합니다.
  • 유효한 클라우드 템플릿만 가져올 수 있습니다.
  • Git에서 가져온 초안 클라우드 템플릿을 업데이트할 때 해당 컨텐츠가 최상위 버전의 컨텐츠와 다르면 이후 동기화 시 초안이 업데이트되지 않고 새 버전이 생성됩니다. 템플릿을 업데이트하고 Git의 추가 동기화도 허용하려면 마지막 변경 후 새 버전을 생성해야 합니다.