terraform stacks migrate prepare-manifest 명령
terraform stacks migrate prepare-manifest 명령
terraform stacks migrate prepare-manifest 명령은 HCP Terraform 워크스페이스에서 Stack으로 마이그레이션하기 위한 마이그레이트 매니페스트(migrate manifest)를 생성하는 명령이에요. 워크스페이스 여러 개를 한 번에 준비해서 Stack으로 이전하는 첫 단계로 사용해요.
출처: 문서
본문
실험적 기능:
terraform stacks migrate명령 그룹은 실험적이며 기본적으로 비활성화되어 있어요. 이 명령들을 활성화하려면TF_STACKS_MIGRATE_EXPERIMENTAL=true를 설정해야 해요. 프로덕션 리소스에는 이 명령들을 사용하지 마세요.
사용법 (Usage)
$ TF_STACKS_MIGRATE_EXPERIMENTAL=true terraform stacks <global-stacks-flags> migrate prepare-manifest <options> <workspace-id>...
설명 (Description)
terraform stacks migrate prepare-manifest 명령은 하나 이상의 HCP Terraform 워크스페이스를 읽고, 각 워크스페이스가 마이그레이션에 준비되었는지 확인한 뒤, 각 워크스페이스의 Terraform 상태 파일을 내려받고 마이그레이트 매니페스트를 작성해요.
각 워크스페이스 ID는 매니페스트의 배포(deployment) 항목이 돼요. 이 명령은 워크스페이스 이름을 배포 이름으로 사용하고, 워크스페이스 상태를 매니페스트 위치 기준 ./tfstates/<workspace-name>.tfstate에 작성해요. 또한 마이그레이션 워크플로가 기대하는 소스 구성(source configuration), Stack 구성, 번역된 상태 출력 디렉터리도 생성해요.
엔드투엔드 마이그레이션 워크플로는 Migrate HCP Terraform workspaces to Terraform Stacks 문서를 참고해 주세요.
이 명령을 사용하려면 HCP Terraform 워크스페이스 변수와 상태 버전을 읽을 권한이 있는 사용자로 로컬 Terraform CLI가 HCP Terraform에 인증되어 있어야 해요.
이 명령은 워크스페이스 변수를 배포 입력값(deployment inputs)으로 복사해요. 민감하지 않은 변수 값은 매니페스트에 보존해요. HCP Terraform은 API에서 민감한 변수 값을 반환하지 않기 때문에, 매니페스트는 값을 제외한 민감한 메타데이터만 기록해요. 또한 TF_VAR_ 접두사로 시작하는 환경 변수는 TF_VAR_ 접두사를 제거해서 Terraform 입력 변수로 변환해요.
명령 인자 (Command arguments)
workspace-id: 마이그레이션에 포함할 하나 이상의 HCP Terraform 워크스페이스 ID. 공백으로 구분함.- 필수 값이에요.
- 문자열(string) 타입.
옵션 (Options)
-migrate-manifest: 명령이 마이그레이트 매니페스트를 작성할 경로.- 선택 사항.
- 문자열.
- 기본값:
migrate-manifest.json.
-source-config: 매니페스트가 전통적인 Terraform 소스 구성으로 참조하는 디렉터리.- 선택 사항.
- 문자열.
- 기본값:
./source-config.
-stack-config: 매니페스트가 번역된 Terraform Stacks 구성으로 참조하는 디렉터리.- 선택 사항.
- 문자열.
- 기본값:
./stack-config.
-json: 기본적인 사람이 읽기 좋은 텍스트 형식 대신 진행 이벤트와 성공 메시지를 JSON 형식으로 출력함.- 선택 사항.
- Boolean 플래그.
- 기본값: false.
예시 (Examples)
다음 명령은 두 개의 HCP Terraform 워크스페이스에 대한 마이그레이트 매니페스트를 준비해요.
$ TF_STACKS_MIGRATE_EXPERIMENTAL=true terraform stacks migrate prepare-manifest \
ws-abc123 ws-def456
다음 명령은 매니페스트와 생성된 디렉터리를 ./migration 디렉터리에 작성해요.
$ TF_STACKS_MIGRATE_EXPERIMENTAL=true terraform stacks migrate prepare-manifest \
-migrate-manifest=./migration/migrate-manifest.json \
-source-config=./source-config \
-stack-config=./stack-config \
ws-abc123
다음 명령은 진행 이벤트를 JSON 형식으로 반환해요.
$ TF_STACKS_MIGRATE_EXPERIMENTAL=true terraform stacks migrate prepare-manifest \
-json \
ws-abc123
전역 플래그 (Global flags)
모든 명령에서 공통으로 사용할 수 있는 플래그에 대한 정보는 Global flags reference 문서를 참고해 주세요.
더 알아보기 (Learn more)
- HCP Terraform 워크스페이스를 Terraform Stacks로 마이그레이션하기
- terraform stacks migrate 명령
- terraform stacks migrate validate-manifest 명령
- Terraform Stacks CLI 참조 문서