- 수정된 파일
- m
- nexpring/nexpring/a_ini/Makefile
- 추가된 파일
- nexpring/nexpring/a_ini/files/ini_patch.sh
- nexpring/nexpring/a_ini/files/ini_patch_test.sh
- tools/scripts/make_patch.sh
- 사용법
- 패치파일 생성 (빌드 전)
- ./m patch
- 패치테스트 (단말 접속 후)
- 패치 테스트는 ini파일을 tmp로 복사하여 tmp안에서만 수행하며 실제 값에는 영향을 주지 않습니다.
- 테스트 스크립트 : /oemapp/ini_patch_test.sh
- 테스트 스크립트의 수정 :
- /oemapp/ini_patch_test.sh 파일을 /tmp/ini_patch_test.sh 로 복사한뒤 수정 후 실행 가능
- 패치 적용 (단말의 시작 서비스에서 호출되어야 하는 파일)
- /ormapp/ini_patch.sh : 기본값은 무결성검사 활성화, md5검사 활성화
- /ormapp/ini_patch.sh -t : 테스트 모드 실행
- /ormapp/ini_patch.sh -i (0|1) -m (0|1) : 검사 옵션 설정
- i : ini파일 무결성 검사 (1이 기본값이며, 1일때 수행)
- m : 패치된 sysconfig.ini과 복사된 sysconfig.ini이 md5sum이 같은지 검사 (1이 기본값이며, 1일 때 수행)
- "/ormapp/ini_patch.sh -t -i 1 -m 1" : 이와 같이 테스트 해보실 수 있습니다.
- 패치파일 생성 (빌드 전)
- 단말의 동작
-
아래의 형태의 파일이 있는 경우 패치 동작
- /etc/patch_config/ini_merge_2501011212.ini
- /etc/patch_config/ini_update_2501011212.ini
- /etc/patch_config/sh_patch_2501011212.ini
- 날짜는 패치 생성시 해당 일시로 적용됨. 포멧은 "년월일시분" 이며 초는 없음
-
패치 순서
- 날짜 부분만 파싱하여 낮은 순으로 먼저 수행됨.
-
패치 완료시
- 성공한 패치는 해당 패치 폴더를 "/tmp/patch_work/success/"에 저장
- 성공시 원본 패치 파일(/etc/patch_config/*.ini or .sh) 삭제
- 실패한 패치는 해당 패치 폴더를 "/tmp/patch_work/fail/"에 저장
- 실패시 원본 패치 파일(/etc/patch_config/*.ini or .sh) 삭제 하지 않음.
- 완료시 /tmp/patch_work를 압축하여 "/etc/patch_archive/ini_patch.tar.gz" 에 저장함.
- 성공한 패치는 해당 패치 폴더를 "/tmp/patch_work/success/"에 저장
-
2회차 이상의 패치
- "/etc/patch_archive/ini_patch.tar.gz"을 먼저 /tmp/patch_work에 압축을 해지함
- 패치 파일명의 폴더가 "/tmp/patch_work/success/"에 있는 경우 해당 패치 무시
-