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의 추가 동기화도 허용하려면 마지막 변경 후 새 버전을 생성해야 합니다.