Skip to content

Commit

Permalink
Merge pull request #72 from belljun3395/test-multi
Browse files Browse the repository at this point in the history
Test multi
  • Loading branch information
belljun3395 authored Jan 7, 2025
2 parents 73453ed + 0cae9af commit 9e6df4f
Show file tree
Hide file tree
Showing 11 changed files with 107 additions and 18 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/ecs-dev-cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ jobs:
ECR_REGISTRY: ${{ steps.login-ecr.outputs.registry }}
run: |
GIT_HASH=$(git rev-parse --short HEAD)
./gradlew buildEcsDockerImage -PimageName=${ECR_REGISTRY}/${ECR_REPOSITORY}:latest
./gradlew :buildEcsDockerImage -PimageName=${ECR_REGISTRY}/${ECR_REPOSITORY}:latest
docker tag ${ECR_REGISTRY}/${ECR_REPOSITORY}:latest ${ECR_REGISTRY}/${ECR_REPOSITORY}:${GIT_HASH}
docker push ${ECR_REGISTRY}/${ECR_REPOSITORY} --all-tags
- name: Get ECR Repository image path
Expand Down
20 changes: 20 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
FROM openjdk:18-oracle

RUN mkdir -p /logs

ENV PROFILE default
ENV TZ=Asia/Seoul
EXPOSE 8080

ARG JAVA_OPTS

ARG RELEASE_VERSION
ENV DD_VERSION=${RELEASE_VERSION}

ARG API_JAR_FILE="api/build/libs/api.jar"
COPY ${API_JAR_FILE} app.jar

ARG CRM_JAR_FILE="domain/crm/build/libs/crm.jar"
COPY ${CRM_JAR_FILE} crm.jar

ENTRYPOINT java -XX:MaxGCPauseMillis=100 -XX:InitialRAMPercentage=50.0 -XX:MaxRAMPercentage=80.0 -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005 $JAVA_OPTS -jar app.jar & java -XX:MaxGCPauseMillis=100 -XX:InitialRAMPercentage=50.0 -XX:MaxRAMPercentage=80.0 -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005 $JAVA_OPTS -jar crm.jar
3 changes: 0 additions & 3 deletions api/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,6 @@ plugins {
}

dependencies {
/** domain */
implementation(project(":domain:crm"))

/** module */
implementation(project(":library:email"))
implementation(project(":library:storage"))
Expand Down
4 changes: 2 additions & 2 deletions api/src/main/kotlin/com/few/api/config/ApiConfig.kt
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package com.few.api.config

import com.few.crm.config.CrmConfig
// import com.few.crm.config.CrmConfig
import email.config.MailConfig
import org.springframework.boot.context.properties.ConfigurationPropertiesScan
import org.springframework.context.annotation.ComponentScan
Expand All @@ -19,7 +19,7 @@ import web.config.WebConfig
DocumentStorageConfig::class,
WebConfig::class,
SecurityConfig::class,
CrmConfig::class,
// CrmConfig::class,
)
@ConfigurationPropertiesScan(basePackages = [ApiConfig.BASE_PACKAGE])
class ApiConfig {
Expand Down
5 changes: 1 addition & 4 deletions api/src/main/resources/application.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,6 @@ spring:
- api-repo-local
# api
- thread-local
# domain
- crm-local
prd:
# module
- security-prd
Expand All @@ -24,8 +22,7 @@ spring:
- api-repo-prd
# api
- thread-prd
# domain
- crm-prd

auth:
batch: ${AUTH_BATCH:0518}

Expand Down
37 changes: 37 additions & 0 deletions build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import org.hidetake.gradle.swagger.generator.GenerateSwaggerUI
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
import java.util.*

plugins {
kotlin("jvm") version DependencyVersion.KOTLIN
Expand Down Expand Up @@ -265,4 +266,40 @@ tasks.named("gitExecutableHooks").configure {

tasks.named("clean").configure {
dependsOn("gitExecutableHooks")
}

val imageName =
project.hasProperty("imageName").let {
if (it) {
project.property("imageName") as String
} else {
"fewletter/api"
}
}
val releaseVersion =
project.hasProperty("releaseVersion").let {
if (it) {
project.property("releaseVersion") as String
} else {
Random().nextInt(90000) + 10000
}
}

tasks.register("buildEcsDockerImage") {
dependsOn("build")

doLast {
exec {
workingDir(".")
commandLine(
"docker",
"build",
"-t",
imageName,
"--build-arg",
"RELEASE_VERSION=$releaseVersion",
'.',
)
}
}
}
11 changes: 3 additions & 8 deletions domain/crm/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,11 +1,3 @@
tasks.getByName("bootJar") {
enabled = false
}

tasks.getByName("jar") {
enabled = true
}

plugins {
id("com.vaadin") version DependencyVersion.VAADIN
}
Expand All @@ -21,6 +13,9 @@ dependencies {
/** jpa */
implementation("org.springframework.boot:spring-boot-starter-data-jpa")

/** mysql */
implementation("com.mysql:mysql-connector-j")

/** aws - sqs */
implementation("io.awspring.cloud:spring-cloud-aws-starter-sqs:${DependencyVersion.AWS_SQS}")

Expand Down
11 changes: 11 additions & 0 deletions domain/crm/src/main/kotlin/com/few/crm/CrmMain.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
package com.few.crm

import org.springframework.boot.autoconfigure.SpringBootApplication
import org.springframework.boot.runApplication

@SpringBootApplication
class CrmMain

fun main(args: Array<String>) {
runApplication<CrmMain>(*args)
}
11 changes: 11 additions & 0 deletions domain/crm/src/main/kotlin/com/few/crm/config/CrmJpaConfig.kt
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,10 @@ package com.few.crm.config
import jakarta.persistence.EntityManagerFactory
import org.springframework.beans.factory.ObjectProvider
import org.springframework.beans.factory.annotation.Qualifier
import org.springframework.boot.autoconfigure.EnableAutoConfiguration
import org.springframework.boot.autoconfigure.data.jpa.JpaRepositoriesAutoConfiguration
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
import org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration
import org.springframework.boot.autoconfigure.orm.jpa.HibernateProperties
import org.springframework.boot.autoconfigure.orm.jpa.HibernateSettings
import org.springframework.boot.autoconfigure.orm.jpa.JpaProperties
Expand Down Expand Up @@ -35,6 +39,13 @@ import javax.sql.DataSource
CrmDataSourceConfig::class,
],
)
@EnableAutoConfiguration(
exclude = [
DataSourceAutoConfiguration::class,
JpaRepositoriesAutoConfiguration::class,
HibernateJpaAutoConfiguration::class,
],
)
class CrmJpaConfig {
companion object {
const val JPA_PROPERTIES = CrmConfig.BEAN_NAME_PREFIX + "JpaProperties"
Expand Down
20 changes: 20 additions & 0 deletions domain/crm/src/main/resources/application.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
server:
port: 8081

spring:
profiles:
group:
local:
# module
- security-local
- web-local
- email-local
# domain
- crm-local
prd:
# module
- security-prd
- web-prd
- email-prd
# domain
- crm-prd
1 change: 1 addition & 0 deletions resources/docker/docker-compose-api.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ services:
image: fewletter/api:latest
ports:
- "8080:8080"
- "8081:8081"
volumes:
- /var/log/api:/var/log/api
environment:
Expand Down

0 comments on commit 9e6df4f

Please sign in to comment.