Skip to content

[FEAT] Lambda 의존성 및 빌드 태스크 추가#395

Merged
softmoca merged 1 commit intodevelopfrom
394-feat-lambda-dependencies
Jan 14, 2026
Merged

[FEAT] Lambda 의존성 및 빌드 태스크 추가#395
softmoca merged 1 commit intodevelopfrom
394-feat-lambda-dependencies

Conversation

@softmoca
Copy link
Member

@softmoca softmoca commented Jan 14, 2026

🔗 관련 이슈

Related to #394

📋 작업 내용 요약

AWS Lambda 배포를 위한 의존성 및 Gradle 빌드 태스크를 추가합니다.

주요 변경사항

  • AWS Serverless Java Container 의존성 추가 (Spring Boot 3 지원)
  • aws-lambda-java-core, aws-lambda-java-events 의존성 추가
  • lambdaJar Gradle 태스크 추가 (Lambda 배포용 ZIP 생성)
  • jar.enabled = true 설정 변경

추가된 의존성 (build.gradle - root)

// AWS Lambda Dependencies
implementation 'com.amazonaws.serverless:aws-serverless-java-container-springboot3:2.1.5'
implementation 'com.amazonaws:aws-lambda-java-core:1.4.0'
implementation 'com.amazonaws:aws-lambda-java-events:3.16.1'

추가된 빌드 태스크 (operation-api/build.gradle)

task lambdaJar(type: Zip) {
    dependsOn bootJar
    archiveBaseName = 'operation'
    archiveClassifier = 'lambda'
    destinationDirectory = file("${buildDir}/distributions")
    duplicatesStrategy = DuplicatesStrategy.EXCLUDE
    zip64 = true
    
    into('lib') {
        from(jar)
        from(configurations.runtimeClasspath) {
            exclude "META-INF/*.SF"
            exclude "META-INF/*.DSA"
            exclude "META-INF/*.RSA"
            exclude "META-INF/MANIFEST.MF"
            exclude "**/module-info.class"
        }
    }
}

빌드 명령어

용도 명령어 출력 위치
EC2 배포 (기존) ./gradlew :operation-api:bootJar build/libs/operation.jar
Lambda 배포 (신규) ./gradlew :operation-api:lambdaJar operation-api/build/distributions/*-lambda.zip

🧪 테스트

  • ./gradlew :operation-api:bootJar -x test 정상 동작 (기존 EC2 배포 영향 없음)
  • ./gradlew :operation-api:lambdaJar -x test 정상 동작
  • Lambda ZIP 파일 생성 확인 (~88MB)
  • 기존 Docker 빌드 영향 없음

📁 변경된 파일

  • build.gradle (root) - Lambda 의존성 추가
  • operation-api/build.gradle - lambdaJar 태스크 추가, jar.enabled 변경

⚠️ 주의사항

  • Breaking Change 없음
  • 기존 CI/CD 파이프라인 영향 없음
  • 기존 Docker 빌드 정상 동작 확인

📚 참고


✅ Issue 1 완료 체크리스트 (수정)

☐ root build.gradle에 Lambda 의존성 3개 추가
☐ operation-api/build.gradle - jar.enabled = true 변경
☐ operation-api/build.gradle - lambdaJar 태스크 추가
☐ operation-api/build.gradle - Tomcat exclude 제거 확인 ⚠️
☐ ./gradlew :operation-api:bootJar -x test 성공
☐ ./gradlew :operation-api:lambdaJar -x test 성공
☐ operation-api/build/distributions/*-lambda.zip 파일 생성 확인

image image

- AWS Serverless Java Container(Spring Boot 3) 의존성 추가
- aws-lambda-java-core, aws-lambda-java-events 의존성 추가
- Lambda 배포용 ZIP 생성을 위한 lambdaJar Gradle 태스크 추가
- EC2 배포용 bootJar와 Lambda 빌드 병행 가능하도록 설정
- 기존 Docker/EC2 빌드 및 CI/CD 파이프라인 영향 없음
@softmoca softmoca linked an issue Jan 14, 2026 that may be closed by this pull request
8 tasks
@pull-request-size pull-request-size bot added the size/M API 개발 label Jan 14, 2026
@softmoca softmoca merged commit ef51342 into develop Jan 14, 2026
1 check passed
@softmoca softmoca self-assigned this Jan 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/M API 개발

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[FEAT] Lambda 의존성 및 빌드 태스크 추가

1 participant