애플리케이션 버전을 대상(개발) 인스턴스에 복제하기 전에 현재 개발 중인 각 애플리케이션과 사용자 지정의 사본을 수동으로 보존합니다.
시작하기 전에
애플리케이션 기록에 대한 쓰기 권한이 있는지 확인합니다.
소스 통제 리포지토리에 대한 액세스 권한이 있어야 합니다.
필요한 역할: admin
이 태스크 정보
복제 프로세스는 개발 중인 응용 프로그램 및 앱 사용자 지정에 대한 버전 차이를 유지하지 않습니다. 그 대신, 시스템은 소스 인스턴스에 설치된 애플리케이션 및 앱 커스터마이제이션 버전의 사본만 대상 인스턴스에 복제합니다. 대상 인스턴스에 동일한 애플리케이션의 개발 버전이 있는 경우 애플리케이션은 클론 후에 편집할 수 있지만 소스 인스턴스에 설치된 버전을 유지합니다. 애플리케이션이 소스 인스턴스에서 누락된 경우, 클론 프로세스가 대상 인스턴스에서 애플리케이션을 삭제합니다.
프로시저
-
클론 대상 인스턴스에서 애플리케이션을 유지하려면 다음 작업 중 하나를 수행합니다.
표 1. 인스턴스 간 버전 차이
| 애플리케이션 버전 상태 |
수행할 작업 |
| 클론 대상 인스턴스의 애플리케이션 버전이 소스 인스턴스 버전과 다릅니다. |
클론 대상 인스턴스에서 각 애플리케이션을 익스포트합니다. 선택 항목은 다음과 같습니다.
- 각 애플리케이션을 소스 통제 리포지토리에 연결합니다.
주: 애플리케이션이 이미 소스 통제 리포지토리에 연결되어 있는 경우 최신 버전을 커밋합니다.
- 각 애플리케이션을 업데이트 세트에 게시합니다.
|
| 애플리케이션은 클론 대상 인스턴스에서만 사용할 수 있습니다. |
| 클론 대상 인스턴스의 애플리케이션 버전은 소스 인스턴스와 동일합니다. |
없음. 시스템 클론 프로세스는 클론 중에 이 애플리케이션 버전을 대상 인스턴스에 복사합니다. |
-
대상 인스턴스에 소스 인스턴스의 시스템 클론을 요청합니다.
예를 들어, 개발 인스턴스 위에 프로덕션 인스턴스를 복제합니다.
-
클론 프로세스가 완료되면 클론 대상 인스턴스에 로그인합니다.
-
각 애플리케이션을 소스 통제 리포지토리에 저장한 경우, 다음 조치 중 하나를 사용하여 소스 통제 리포지토리에서 검색합니다.
표 2. 소스 통제 리포지토리에서 애플리케이션 검색
| 애플리케이션 설치 상태 |
클론 대상에 대해 수행할 작업 |
| 애플리케이션이 이전에 소스 인스턴스에 설치되었습니다. |
소스 통제 리포지토리에서 원격 변경 내용을 적용합니다. |
| 애플리케이션이 소스 인스턴스에 설치되지 않았습니다. |
소스 통제 리포지토리에서 애플리케이션을 임포트합니다. |
-
애플리케이션 사용자 지정의 경우 이러한 작업 중 하나를 사용하여 소스 제어 리포지토리에서 검색합니다.
표 3. 소스 통제 리포지토리에서 애플리케이션 검색
| 애플리케이션 및 사용자 지정 설치 상태 |
클론 대상에 대해 수행할 작업 |
| 애플리케이션 및 커스터마이제이션이 소스 인스턴스에 이전에 설치되었습니다. |
소스 통제 리포지토리에서 원격 변경 내용을 적용합니다. |
| 애플리케이션은 이전에 소스 인스턴스에 설치되었지만 커스터마이제이션은 설치되지 않았습니다. |
소스 통제 리포지토리에서 원격 변경 내용을 적용합니다. |
| 기본 애플리케이션이 소스 인스턴스에 설치되지 않았습니다. |
리포지토리 구성(sys_repo_config)을 삭제하고 소스 통제 리포지토리에서 사용자 지정을 임포트합니다. |
-
각 애플리케이션을 업데이트 세트에 저장한 경우 다음 작업 중 하나를 수행하여 업데이트 세트에서 검색합니다.
표 4. 업데이트 세트에서 애플리케이션 검색
| 애플리케이션 설치 상태 |
클론 대상에 대해 수행할 작업 |
| 애플리케이션이 이전에 소스 인스턴스에 설치되었습니다. |
- 소스 인스턴스에서 클론된 애플리케이션 버전을 삭제합니다.
- 현재 애플리케이션 버전이 포함된 업데이트 세트를 로드합니다.
|
| 애플리케이션이 소스 인스턴스에 설치되지 않았습니다. |
현재 애플리케이션 버전이 포함된 업데이트 세트를 로드합니다. |
-
클론 후 다음과 같은 원격 변경 사항을 적용할 수 있습니다.
표 5. 클론 후 원격 변경
| 필드 |
설명 |
| glide.source_control.post_clone_import_enabled |
원격 변경 내용 적용 자동화를 사용하지 않도록 설정하려면 False로 설정합니다. 기본값은 True입니다. |
| glide.source_control.post_clone_import_delay_time_sec |
큐 처리를 지연시키는 지연 시간을 제공하려면 값을 제공하십시오. 기본값은 0입니다. |
| glide.source_control.post_clone_import_pause_refresh_time_sec |
저장소 새로 고침 작업이 실행되지 않는 간격을 제공하려면 값을 제공하십시오. 기본값은 3시간(10800)입니다. |
결과
이전에 개발 중이었던 애플리케이션은 클론 대상 인스턴스에서 추가 개발에 사용할 수 있습니다.
마케팅 이벤트 애플리케이션 유지
회사에서 이전에 Marketing Events라는 사용자 지정 애플리케이션의 버전 1.0을 만들었다고 가정해 보겠습니다. 이미 Marketing Events 애플리케이션 버전 1.0을 애플리케이션 리포지토리에 게시하고 프로덕션 인스턴스에 설치했습니다.
시간이 지남에 따라 사용자가 애플리케이션에 대한 개선 요청을 제출했으며 이러한 요청을 해결하기 위해 비프로덕션 인스턴스에서 마케팅 이벤트 애플리케이션의 버전 2.0을 개발하기로 결정합니다. 개발이 거의 완료되면 몇 가지 포괄적인 테스트를 위해 비프로덕션 인스턴스를 최신 프로덕션 복사본으로 업데이트하려고 합니다.
이전에 소스 통제 통합을 사용하여 마케팅 이벤트 애플리케이션 버전 1.0을 개발했기 때문에 이미 마케팅 이벤트 애플리케이션을 소스 통제 리포지토리에 연결했습니다. Marketing Events 애플리케이션 버전 2.0을 소스 제어 리포지토리에 커밋합니다.
개발 인스턴스에 프로덕션 인스턴스의 클론을 예약합니다. 완료 후 개발 인스턴스에 로그인하면 소스 인스턴스에 설치된 버전인 Marketing Events 애플리케이션 버전 1.0이 있는 것을 볼 수 있습니다.
애플리케이션이 소스 인스턴스에 이미 설치되어 있었기 때문에 소스 통제 리포지토리의 원격 변경 내용을 적용하여 최신 애플리케이션 버전을 받습니다. 이제 개발 인스턴스에 Marketing Events 애플리케이션 버전 2.0이 있으며 추가 개발 및 테스트에 사용할 수 있습니다.