- sourceBundle Gradle task 추가: 내부망 소스 번들 빌드 지원
- Jenkinsfile 수정: sourceBundle 빌드/아티팩트 보관 적용 - README 갱신: sourceBundle 사용법 추가
This commit is contained in:
@@ -39,14 +39,35 @@ gradle runBypassSmoke # bypass 모드 (기본값, 옵션 없음)
|
||||
gradle runFakeSmoke # fake 모드 (-Ddamo-manager.enabled=true, scpdb 부재)
|
||||
```
|
||||
|
||||
### 내부망 반입용 소스 번들 (sourceBundle)
|
||||
|
||||
빌드된 jar 를 이메일에 첨부하면 수신 측 메일 서버에서 차단되는 경우가 많다. 대신 소스 + 빌드 스크립트를 zip 으로 패키징해 반입하고, 내부망에서 빌드한다.
|
||||
|
||||
```bash
|
||||
gradle sourceBundle
|
||||
ls build/distributions/ # damo-manager-src-1.0.0.zip
|
||||
```
|
||||
|
||||
zip 에는 소스 전체와 **JDK 만으로 동작하는** 빌드 스크립트(`build-internal.sh` / `build-internal.bat`)가 들어 있다. 내부망에 Gradle·인터넷이 없어도 된다.
|
||||
|
||||
```bash
|
||||
# 내부망에서 (JDK 8+ 필요)
|
||||
unzip damo-manager-src-1.0.0.zip
|
||||
cd damo-manager-src-1.0.0
|
||||
sh build-internal.sh # Windows 는 build-internal.bat
|
||||
java -jar build-internal/damo-manager.jar sha256 test # 검증
|
||||
```
|
||||
|
||||
JDK 9 이상이면 스크립트가 자동으로 `--release 8` 을 적용한다. 상세는 번들 내 `BUILD-INTERNAL.md` 참고. zip 첨부도 차단되는 메일 서버라면 확장자를 `.zip.txt` 로 바꿔 발송 후 내부에서 원복한다.
|
||||
|
||||
### Jenkins 빌드
|
||||
|
||||
저장소 루트에 `Jenkinsfile` 이 있다. `djb-vm` 에이전트에서 `pollSCM` 으로 트리거되며 다음을 수행한다.
|
||||
|
||||
1. **Build JAR** — `gradle clean build --no-daemon`
|
||||
1. **Build JAR** — `gradle clean build sourceBundle --no-daemon`
|
||||
2. **Smoke test** — fake / bypass 모드 main + CLI `info` 실행
|
||||
3. **Package & checksum** — `build/dist/` 에 `damo-manager.jar` + `README.md` 복사 후 `SHA1SUMS` / `SHA256SUMS` 생성
|
||||
4. **archiveArtifacts** — `damo-manager.jar`, `README.md`, `SHA1SUMS`, `SHA256SUMS` 보관 (fingerprint)
|
||||
3. **Package & checksum** — `build/dist/` 에 `damo-manager.jar` + `damo-manager-src-*.zip` + `README.md` 복사 후 파일별 `*.sha256` 생성
|
||||
4. **archiveArtifacts** — `damo-manager.jar`, `damo-manager-src-*.zip`, `README.md`, `*.sha256` 보관 (fingerprint)
|
||||
|
||||
빌드 환경(JDK8/Gradle 경로)은 다른 djb-eapim Jenkinsfile 과 동일한 `/apps/opts/*` 경로를 사용한다.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user