From b267a292ef1d2f702d97dfc3b74ae3a9a3741fe0 Mon Sep 17 00:00:00 2001 From: JuHyeonPark Date: Wed, 24 Jan 2024 22:56:07 +0900 Subject: [PATCH 1/3] =?UTF-8?q?refactor:=20API=20=EB=B2=84=EC=A0=84=20?= =?UTF-8?q?=EB=AA=85=EC=8B=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit API 버전 명시 --- .../accommodation/controller/AccommodationController.java | 2 +- .../yanabada/domain/chat/controller/ChatController.java | 2 +- .../yanabada/domain/member/controller/MemberController.java | 2 +- .../domain/notification/controller/NotificationController.java | 2 +- .../yanabada/domain/order/controller/OrderController.java | 2 +- .../yanabada/domain/payment/controller/PaymentController.java | 2 +- .../yanabada/domain/payment/controller/TradeController.java | 2 +- .../yanabada/domain/product/controller/ProductController.java | 2 +- 8 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/main/java/kr/co/fastcampus/yanabada/domain/accommodation/controller/AccommodationController.java b/src/main/java/kr/co/fastcampus/yanabada/domain/accommodation/controller/AccommodationController.java index 150d91be..eea8cad7 100644 --- a/src/main/java/kr/co/fastcampus/yanabada/domain/accommodation/controller/AccommodationController.java +++ b/src/main/java/kr/co/fastcampus/yanabada/domain/accommodation/controller/AccommodationController.java @@ -16,7 +16,7 @@ import org.springframework.web.bind.annotation.RestController; @RestController -@RequestMapping("/accommodations") +@RequestMapping("/v1/accommodations") @RequiredArgsConstructor public class AccommodationController { diff --git a/src/main/java/kr/co/fastcampus/yanabada/domain/chat/controller/ChatController.java b/src/main/java/kr/co/fastcampus/yanabada/domain/chat/controller/ChatController.java index d08580b1..6f5ebe13 100644 --- a/src/main/java/kr/co/fastcampus/yanabada/domain/chat/controller/ChatController.java +++ b/src/main/java/kr/co/fastcampus/yanabada/domain/chat/controller/ChatController.java @@ -29,7 +29,7 @@ import org.springframework.web.bind.annotation.RestController; @RestController -@RequestMapping("/chats") +@RequestMapping("/v1/chats") @RequiredArgsConstructor public class ChatController { diff --git a/src/main/java/kr/co/fastcampus/yanabada/domain/member/controller/MemberController.java b/src/main/java/kr/co/fastcampus/yanabada/domain/member/controller/MemberController.java index 14e28936..59ae0a17 100644 --- a/src/main/java/kr/co/fastcampus/yanabada/domain/member/controller/MemberController.java +++ b/src/main/java/kr/co/fastcampus/yanabada/domain/member/controller/MemberController.java @@ -21,7 +21,7 @@ @Slf4j @RestController @RequiredArgsConstructor -@RequestMapping("/member") +@RequestMapping("/v1/members") public class MemberController { private final MemberService memberService; diff --git a/src/main/java/kr/co/fastcampus/yanabada/domain/notification/controller/NotificationController.java b/src/main/java/kr/co/fastcampus/yanabada/domain/notification/controller/NotificationController.java index 3fc6ca0d..43548622 100644 --- a/src/main/java/kr/co/fastcampus/yanabada/domain/notification/controller/NotificationController.java +++ b/src/main/java/kr/co/fastcampus/yanabada/domain/notification/controller/NotificationController.java @@ -21,7 +21,7 @@ @Slf4j @RestController @RequiredArgsConstructor -@RequestMapping("/notifications") +@RequestMapping("/v1/notifications") public class NotificationController { private final NotificationService notificationService; diff --git a/src/main/java/kr/co/fastcampus/yanabada/domain/order/controller/OrderController.java b/src/main/java/kr/co/fastcampus/yanabada/domain/order/controller/OrderController.java index 0168ed42..54ee40eb 100644 --- a/src/main/java/kr/co/fastcampus/yanabada/domain/order/controller/OrderController.java +++ b/src/main/java/kr/co/fastcampus/yanabada/domain/order/controller/OrderController.java @@ -20,7 +20,7 @@ @Slf4j @RestController @RequiredArgsConstructor -@RequestMapping("/orders") +@RequestMapping("/v1/orders") public class OrderController { private final OrderService orderService; diff --git a/src/main/java/kr/co/fastcampus/yanabada/domain/payment/controller/PaymentController.java b/src/main/java/kr/co/fastcampus/yanabada/domain/payment/controller/PaymentController.java index 3376e941..97139e4f 100644 --- a/src/main/java/kr/co/fastcampus/yanabada/domain/payment/controller/PaymentController.java +++ b/src/main/java/kr/co/fastcampus/yanabada/domain/payment/controller/PaymentController.java @@ -24,7 +24,7 @@ import org.springframework.web.bind.annotation.RestController; @RestController -@RequestMapping("/payments") +@RequestMapping("/v1/payments") @RequiredArgsConstructor public class PaymentController { diff --git a/src/main/java/kr/co/fastcampus/yanabada/domain/payment/controller/TradeController.java b/src/main/java/kr/co/fastcampus/yanabada/domain/payment/controller/TradeController.java index 93ecc433..dfd2438f 100644 --- a/src/main/java/kr/co/fastcampus/yanabada/domain/payment/controller/TradeController.java +++ b/src/main/java/kr/co/fastcampus/yanabada/domain/payment/controller/TradeController.java @@ -28,7 +28,7 @@ @Slf4j @RestController @RequiredArgsConstructor -@RequestMapping("/trades") +@RequestMapping("/v1/trades") public class TradeController { private final TradeService tradeService; diff --git a/src/main/java/kr/co/fastcampus/yanabada/domain/product/controller/ProductController.java b/src/main/java/kr/co/fastcampus/yanabada/domain/product/controller/ProductController.java index 0d640cf4..432d6b05 100644 --- a/src/main/java/kr/co/fastcampus/yanabada/domain/product/controller/ProductController.java +++ b/src/main/java/kr/co/fastcampus/yanabada/domain/product/controller/ProductController.java @@ -32,7 +32,7 @@ @Slf4j @RestController @RequiredArgsConstructor -@RequestMapping("/products") +@RequestMapping("/v1/products") public class ProductController { private final ProductService productService; From 31c9066c1e626cfc254f531bfce46fe177c7dbd1 Mon Sep 17 00:00:00 2001 From: JuHyeonPark Date: Wed, 24 Jan 2024 22:56:33 +0900 Subject: [PATCH 2/3] =?UTF-8?q?ci:=20=EB=A6=B4=EB=A6=AC=EC=A6=88=20?= =?UTF-8?q?=EB=B8=8C=EB=9E=9C=EC=B9=98=20=EB=B0=B0=ED=8F=AC=20=EC=8A=A4?= =?UTF-8?q?=ED=81=AC=EB=A6=BD=ED=8A=B8=20=EC=9E=91=EC=84=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 릴리즈 브랜치 배포 스크립트 작성 --- .github/workflows/cd-release.yml | 59 ++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 .github/workflows/cd-release.yml diff --git a/.github/workflows/cd-release.yml b/.github/workflows/cd-release.yml new file mode 100644 index 00000000..62bdf038 --- /dev/null +++ b/.github/workflows/cd-release.yml @@ -0,0 +1,59 @@ +name: Java CI with Gradle + +on: + push: + branches: [ release ] + +permissions: + contents: read + +jobs: + build-release: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Set up JDK 17 + uses: actions/setup-java@v3 + with: + java-version: '17' + distribution: 'temurin' + - name: application.yml + run: | + mkdir -p src/main/resources + touch ./src/main/resources/application.yml + echo "${{ secrets.RELEASE_APPLICATION_YML }}" > ./src/main/resources/application.yml + cat ./src/main/resources/application.yml + - name: Run chmod to make gradlew executable + run: chmod +x ./gradlew + - name: Build with Gradle + uses: gradle/gradle-build-action@bd5760595778326ba7f1441bcf7e88b49de61a25 # v2.6.0 + with: + arguments: build -x test + - name: Upload artifact + uses: actions/upload-artifact@v2 + with: + name: build-file + path: build/libs/*.jar + + deploy: + needs: build-release + runs-on: ubuntu-latest + steps: + - name: Download artifact + uses: actions/download-artifact@v2 + with: + name: build-file + - name: Setup SSH + uses: webfactory/ssh-agent@v0.5.4 + with: + ssh-private-key: ${{ secrets.RELEASE_SSH_PRIVATE_KEY }} + - name: Add remote server to known hosts + run: | + mkdir -p ~/.ssh + ssh-keyscan ${{ secrets.RELEASE_SERVER_IP }} >> ~/.ssh/known_hosts + - name: SCP transfer + run: scp *.jar ${{ secrets.RELEASE_SERVER_USERNAME }}@${{ secrets.RELEASE_SERVER_IP }}:~/cicd + - name: Execute remote commands + run: | + ssh -v ${{ secrets.RELEASE_SERVER_USERNAME }}@${{ secrets.RELEASE_SERVER_IP }} "sudo fuser -k 80/tcp || true" + ssh -v ${{ secrets.RELEASE_SERVER_USERNAME }}@${{ secrets.RELEASE_SERVER_IP }} "sudo nohup /usr/bin/java -jar ~/cicd/*.jar > ~/cicd/nohup.log 2>&1 &" \ No newline at end of file From e856761e1f21e36c6b05703ef52534d630793d74 Mon Sep 17 00:00:00 2001 From: JuHyeonPark Date: Wed, 24 Jan 2024 23:06:46 +0900 Subject: [PATCH 3/3] =?UTF-8?q?fix:=20product=20=EC=97=94=ED=8B=B0?= =?UTF-8?q?=ED=8B=B0=20=EB=B2=A0=EC=9D=B4=EC=8A=A4=EC=97=94=ED=8B=B0?= =?UTF-8?q?=ED=8B=B0=20=EC=83=81=EC=86=8D=20=EB=88=84=EB=9D=BD=20=EC=88=98?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit product 엔티티 베이스엔티티 상속 누락 수정 --- .../co/fastcampus/yanabada/domain/product/entity/Product.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/kr/co/fastcampus/yanabada/domain/product/entity/Product.java b/src/main/java/kr/co/fastcampus/yanabada/domain/product/entity/Product.java index cca4adcb..d89be89a 100644 --- a/src/main/java/kr/co/fastcampus/yanabada/domain/product/entity/Product.java +++ b/src/main/java/kr/co/fastcampus/yanabada/domain/product/entity/Product.java @@ -19,6 +19,7 @@ import jakarta.persistence.Table; import java.time.LocalDate; import java.time.LocalDateTime; +import kr.co.fastcampus.yanabada.common.baseentity.BaseEntity; import kr.co.fastcampus.yanabada.domain.order.entity.Order; import kr.co.fastcampus.yanabada.domain.product.entity.enums.ProductStatus; import lombok.AccessLevel; @@ -29,7 +30,7 @@ @NoArgsConstructor(access = AccessLevel.PROTECTED) @Table(name = "product") @Entity -public class Product { +public class Product extends BaseEntity { @Id @GeneratedValue(strategy = GenerationType.IDENTITY)