Skip to content

Commit d7598a1

Browse files
authored
Merge pull request #186 from Principes-Artis-Mechanicae/develop
chore: main 브랜치 최신화
2 parents 817a851 + 93e28bb commit d7598a1

File tree

920 files changed

+13149
-6722
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

920 files changed

+13149
-6722
lines changed
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
name: deploy to toothlessdev
2+
3+
on:
4+
workflow_dispatch:
5+
push:
6+
branches: [ develop ]
7+
8+
jobs:
9+
deploy:
10+
environment: development
11+
runs-on: toothlessdev
12+
permissions:
13+
checks: write
14+
pull-requests: write
15+
steps:
16+
- uses: actions/checkout@v4
17+
18+
- name: Set up JDK 17
19+
uses: actions/setup-java@v4
20+
with:
21+
distribution: 'zulu'
22+
java-version: 17
23+
24+
- name: Create .env.dev file
25+
run: |
26+
touch .env.dev
27+
echo "${{ secrets.ENV }}" >> .env.dev
28+
29+
- name: Cache Gradle packages
30+
uses: gradle/actions/setup-gradle@v3
31+
with:
32+
cache-read-only: ${{ github.ref != 'refs/heads/main' && github.ref != 'refs/heads/develop' }}
33+
34+
- name: Build with Gradle
35+
run: ./dev.sh
36+
37+
- name: Publish Unit Test Results
38+
uses: EnricoMi/publish-unit-test-result-action@v2
39+
if: always()
40+
with:
41+
files: build/test-results/**/*.xml

.gitignore

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,13 @@ derby.log
1818
# Gradle artifacts
1919
.gradle
2020
.gradletasknamecache
21-
/build
22-
buildSrc/build
23-
/spring-*/build
24-
/framework-*/build
25-
/integration-tests/build
26-
/src/asciidoc/build
27-
spring-test/test-output/
21+
**/build
22+
**/buildSrc/build
23+
**/spring-*/build
24+
**/framework-*/build
25+
**/integration-tests/build
26+
**/src/asciidoc/build
27+
**/spring-test/test-output/
2828

2929
# Maven artifacts
3030
pom.xml
@@ -104,9 +104,9 @@ local.sh
104104
.run/
105105

106106
# Static Resources
107-
src/main/resources/static/*
108-
src/test/resources/static/*
109-
./storage
107+
**/src/main/resources/static/docs/*
108+
**/src/main/resources/static/oas/*
109+
storage/*
110110

111111
# Yml File
112112
local-docker-compose.yml

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
FROM openjdk:17-jdk
22

3-
ARG JAR_FILE=build/libs/*.jar
3+
ARG JAR_FILE=get-p-api/build/libs/*.jar
44
ADD ${JAR_FILE} app.jar
55

66
ENTRYPOINT ["java", "-Duser.timezone=GMT+9", "-Djava.security.egd=file:/dev/./urandom", "-Dspring.profiles.active=dev", "-jar", "/app.jar"]

build.gradle

Lines changed: 53 additions & 114 deletions
Original file line numberDiff line numberDiff line change
@@ -2,137 +2,76 @@ plugins {
22
id 'java'
33
id 'org.springframework.boot' version '3.1.4'
44
id 'io.spring.dependency-management' version '1.1.3'
5-
id 'org.asciidoctor.jvm.convert' version '4.0.2'
5+
id 'java-library'
6+
id 'java-test-fixtures'
7+
id 'maven-publish'
68
}
79

8-
group = 'es.princip'
9-
version = '0.0.1-SNAPSHOT'
10+
allprojects {
11+
group = 'es.princip'
12+
version = '0.0.1-SNAPSHOT'
1013

11-
java {
12-
sourceCompatibility = '17'
13-
}
14-
15-
repositories {
16-
mavenCentral()
17-
}
18-
19-
configurations {
20-
compileOnly {
21-
extendsFrom annotationProcessor
14+
repositories {
15+
mavenCentral()
2216
}
23-
asciidoctorExt
2417
}
2518

26-
dependencies {
27-
implementation 'org.springframework.boot:spring-boot-starter-web'
28-
testImplementation 'org.springframework.boot:spring-boot-starter-test'
29-
developmentOnly 'org.springframework.boot:spring-boot-devtools'
30-
31-
// Validation
32-
implementation 'org.springframework.boot:spring-boot-starter-validation'
33-
implementation 'org.apache.tika:tika-core:2.9.1'
34-
35-
// Jpa
36-
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
37-
38-
// Security
39-
implementation 'org.springframework.boot:spring-boot-starter-security'
40-
testImplementation 'org.springframework.security:spring-security-test'
41-
42-
// Jwt
43-
implementation 'io.jsonwebtoken:jjwt-api:0.11.5'
44-
implementation 'io.jsonwebtoken:jjwt-impl:0.11.5'
45-
implementation 'io.jsonwebtoken:jjwt-jackson:0.11.5'
46-
47-
// Database
48-
runtimeOnly 'com.mysql:mysql-connector-j:9.0.0'
49-
implementation 'org.flywaydb:flyway-core'
50-
implementation 'org.flywaydb:flyway-mysql'
51-
52-
// Lombok
53-
compileOnly 'org.projectlombok:lombok'
54-
annotationProcessor 'org.projectlombok:lombok'
55-
testCompileOnly 'org.projectlombok:lombok'
56-
testAnnotationProcessor 'org.projectlombok:lombok'
57-
58-
// WebSocket
59-
implementation 'org.springframework:spring-websocket:6.0.13'
60-
61-
// QueryDSL
62-
implementation "com.querydsl:querydsl-jpa:5.0.0:jakarta"
63-
annotationProcessor "com.querydsl:querydsl-apt:5.0.0:jakarta"
64-
annotationProcessor "jakarta.annotation:jakarta.annotation-api"
65-
annotationProcessor "jakarta.persistence:jakarta.persistence-api"
66-
67-
// Redis
68-
implementation 'org.springframework.boot:spring-boot-starter-data-redis'
69-
70-
// Mail
71-
implementation 'com.sun.mail:jakarta.mail:2.0.1'
72-
implementation 'org.springframework.boot:spring-boot-starter-mail:3.2.1'
73-
74-
// MapStruct
75-
implementation 'org.mapstruct:mapstruct:1.6.0'
76-
annotationProcessor 'org.mapstruct:mapstruct-processor:1.6.0'
77-
78-
// AOP
79-
implementation 'org.springframework.boot:spring-boot-starter-aop'
80-
81-
// Test Containers
82-
testImplementation 'org.springframework.boot:spring-boot-testcontainers'
83-
testImplementation 'org.testcontainers:testcontainers:1.19.3'
84-
testImplementation 'org.testcontainers:junit-jupiter:1.19.3'
85-
testImplementation 'org.testcontainers:mysql:1.20.0'
19+
subprojects {
20+
apply plugin: 'java'
21+
apply plugin: 'org.springframework.boot'
22+
apply plugin: 'io.spring.dependency-management'
23+
apply plugin: 'java-library'
24+
apply plugin: 'java-test-fixtures'
25+
apply plugin: 'maven-publish'
26+
27+
java {
28+
sourceCompatibility = '17'
29+
targetCompatibility = '17'
30+
}
8631

87-
implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.16.1'
32+
configurations {
33+
compileOnly {
34+
extendsFrom annotationProcessor
35+
}
36+
}
8837

89-
// Swagger
90-
implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.4.0'
38+
test {
39+
useJUnitPlatform()
40+
}
9141

92-
// Monitoring
93-
implementation 'org.springframework.boot:spring-boot-starter-actuator'
94-
implementation 'io.micrometer:micrometer-registry-prometheus'
42+
tasks.register('copyTestResults', Copy) {
43+
from 'build/test-results'
44+
into '../build/test-results'
45+
include '**/*.xml'
46+
}
9547

96-
// Spring REST Docs
97-
asciidoctorExt 'org.springframework.restdocs:spring-restdocs-asciidoctor'
98-
testImplementation 'org.springframework.restdocs:spring-restdocs-mockmvc'
99-
}
48+
test.finalizedBy(copyTestResults)
10049

101-
ext {
102-
snippetsDir = file('build/generated-snippets')
103-
}
50+
dependencies {
51+
// Lombok 라이브러리
52+
compileOnly 'org.projectlombok:lombok:1.18.34'
53+
annotationProcessor 'org.projectlombok:lombok:1.18.34'
54+
testCompileOnly 'org.projectlombok:lombok:1.18.34'
55+
testAnnotationProcessor 'org.projectlombok:lombok:1.18.34'
10456

105-
test {
106-
outputs.dir snippetsDir
107-
useJUnitPlatform()
108-
}
57+
// MapStruct 라이브러리
58+
implementation 'org.mapstruct:mapstruct:1.6.0'
59+
annotationProcessor 'org.mapstruct:mapstruct-processor:1.6.0'
10960

110-
asciidoctor {
111-
inputs.dir snippetsDir
112-
configurations 'asciidoctorExt'
113-
dependsOn test
114-
sources {
115-
include('**/index.adoc')
116-
}
117-
baseDirFollowsSourceFile()
118-
}
61+
// Jackson 라이브러리
62+
implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.16.1'
11963

120-
tasks.register('copyDocument', Copy) {
121-
dependsOn asciidoctor
122-
doFirst {
123-
delete file('src/main/resources/static/docs')
64+
// 테스트 프레임워크
65+
testImplementation 'org.springframework.boot:spring-boot-starter-test:3.3.5'
66+
testImplementation 'org.junit.jupiter:junit-jupiter:5.9.2'
67+
testRuntimeOnly 'org.junit.platform:junit-platform-launcher'
12468
}
125-
from asciidoctor.outputDir
126-
into file('src/main/resources/static/docs')
12769
}
12870

129-
build {
130-
dependsOn copyDocument
71+
bootJar {
72+
enabled = false
13173
}
13274

133-
bootJar {
134-
dependsOn copyDocument
135-
from ("${asciidoctor.outputDir}") {
136-
into 'static/docs'
137-
}
75+
jar {
76+
enabled = true
13877
}

0 commit comments

Comments
 (0)