Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 20 additions & 1 deletion .github/workflows/ci-cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,26 @@ jobs:
docker build -t ayeonii/leets-be:latest .
docker push ayeonii/leets-be:latest

- name: 배포
deploy-dev:
needs: build-with-gradle
runs-on: ubuntu-latest
steps:
- name: dev 배포
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.DEV_REMOTE_IP }}
username: ${{ secrets.DEV_REMOTE_USER }}
key: ${{ secrets.DEV_REMOTE_IDENTITYFILE }}
port: ${{ secrets.DEV_REMOTE_PORT }}
script: |
cd docker-compose
sudo ./deploy.sh

deploy-prd:
needs: [build-with-gradle, deploy-dev]
runs-on: ubuntu-latest
steps:
- name: prd 배포
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.REMOTE_IP }}
Expand Down
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -43,3 +43,6 @@ src/test/generated/

### Agents ###
.gemini/

### env ###
.env
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,4 @@ COPY ${JAR_FILE} /app.jar

EXPOSE 8080

ENTRYPOINT ["java", "-Dspring.profiles.active=prod", "-jar", "/app.jar"]
ENTRYPOINT ["java", "-jar", "/app.jar"]
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import org.springframework.data.jpa.repository.JpaRepository
import java.util.UUID

interface ApplicationRepository : JpaRepository<Application, Long> {
fun findByUser_Uid(uid: UUID): Application?
fun findByUser_Id(id: UUID): Application?
fun findAllByOrderByAppliedAtDesc(): List<Application>
fun findAllByPositionOrderByAppliedAtDesc(position: Position): List<Application>
fun findAllBySubmitStatusOrderByAppliedAtDesc(submitStatus: SubmitStatus): List<Application>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ class CreateApplicationImpl(
override fun execute(authDetails: AuthDetails, request: ApplicationRequest): Application {
val user: User = userRepository.findById(authDetails.uid).orElseThrow { UserNotFoundException() }

if (applicationRepository.findByUser_Uid(user.id!!) != null) {
if (applicationRepository.findByUser_Id(user.id!!) != null) {
throw ApplicationAlreadyExistsException()
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ class GetApplicationDetailsImpl(
}

override fun execute(uid: UUID): Application {
return applicationRepository.findByUser_Uid(uid) ?: throw ApplicationNotFoundException()
return applicationRepository.findByUser_Id(uid) ?: throw ApplicationNotFoundException()
}

private fun getDetails(application: Application): ApplicationDetailsResponse {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ class UpdateApplicationImpl(
val uid = authDetails.uid
updateUser.execute(uid, request)

val application = applicationRepository.findByUser_Uid(uid) ?: throw ApplicationNotFoundException()
val application = applicationRepository.findByUser_Id(uid) ?: throw ApplicationNotFoundException()

if (request.submitStatus == SubmitStatus.SUBMIT) {
application.updateInfo(LocalDateTime.now())
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,4 @@ import java.util.UUID
interface UserRepository : JpaRepository<User, UUID> {
fun findBySub(sub: String): Optional<User>
fun findByEmail(email: String): Optional<User>
fun findByUid(uid: UUID): Optional<User>
}
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ class GetUserDetailsImpl(
val uid: UUID = authDetails.uid
val user: User = userRepository.findByIdOrNull(uid) ?: throw UserNotFoundException()

val application: Application? = applicationRepository.findByUser_Uid(uid)
val application: Application? = applicationRepository.findByUser_Id(uid)

return UserDetailsResponse.of(user, application?.submitStatus ?: SubmitStatus.NONE)
}
Expand Down
24 changes: 24 additions & 0 deletions src/main/resources/application-dev.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
spring:
config:
activate:
on-profile: dev
security:
oauth2:
client:
registration:
google:
redirect-uri: ${GOOGLE_REDIRECT_URL}

cors:
origin:
development: ${CORS_ORIGIN_DEVELOPMENT}

google:
redirect:
url: ${GOOGLE_REDIRECT_URL}

springdoc:
swagger-ui:
enabled: true
api-docs:
enabled: true
2 changes: 0 additions & 2 deletions src/main/resources/application.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,6 @@ server:
port: ${PORT:8080}

spring:
profiles:
default: dev
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
username: ${DATABASE_USERNAME}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ class CreateApplicationImplTest : DescribeSpec({

it("지원서를 성공적으로 생성한다") {
every { userRepository.findById(uid) } returns Optional.of(user)
every { applicationRepository.findByUser_Uid(uid) } returns null
every { applicationRepository.findByUser_Id(uid) } returns null
every { userRepository.save(any()) } returns user
every { applicationRepository.save(any()) } returnsArgument 0

Expand All @@ -75,12 +75,12 @@ class CreateApplicationImplTest : DescribeSpec({
val application = mockk<Application>()

every { userRepository.findById(uid) } returns Optional.of(user)
every { applicationRepository.findByUser_Uid(uid) } returns application
every { applicationRepository.findByUser_Id(uid) } returns application

shouldThrow<ApplicationAlreadyExistsException> {
createApplication.execute(authDetails, request)
}
}
}
}
})
})
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ class UpdateApplicationImplTest : DescribeSpec({

it("지원서를 성공적으로 수정한다") {
every { updateUser.execute(uid, request) } returns mockk()
every { applicationRepository.findByUser_Uid(uid) } returns application
every { applicationRepository.findByUser_Id(uid) } returns application
every { applicationRepository.save(any()) } returnsArgument 0

updateApplication.execute(authDetails, request)
Expand All @@ -60,4 +60,4 @@ class UpdateApplicationImplTest : DescribeSpec({
}
}
}
})
})
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ class GetUserDetailsImplTest : DescribeSpec({

it("유저가 존재하고 지원서가 없으면 NONE 상태로 반환한다") {
every { userRepository.findById(uid) } returns Optional.of(user)
every { applicationRepository.findByUser_Uid(uid) } returns null
every { applicationRepository.findByUser_Id(uid) } returns null

val response = getUserDetails.execute(authDetails)

Expand All @@ -51,7 +51,7 @@ class GetUserDetailsImplTest : DescribeSpec({
every { submitStatus } returns SubmitStatus.SUBMIT
}
every { userRepository.findById(uid) } returns Optional.of(user)
every { applicationRepository.findByUser_Uid(uid) } returns application
every { applicationRepository.findByUser_Id(uid) } returns application

val response = getUserDetails.execute(authDetails)

Expand Down