All

DevOps

Github Actions CI/CD - 트러블 슈팅 정리 (submodule, 파일 중복, ec2 용량)

SW 마에스트로에 합격하기 전부터 진행했던 팀 프로젝트가 벌써 마무리 단계에 있다. 마무리 작업을 진행하면서 여러가지 문제와 요구사항이 발생했다. 이러한 부분들을 코드에 반영할 때마다 EC2에서 매번 서버를 내리고 다시 jar 파일을 실행시키곤 했는데, 이 과정이 배우 비효율적이라 생각했기 때문에 최근에 배웠던 Github Actions를 사용한 CI/CD 파이프라인을 프로젝트에 적용시키기로 했다. Github Action을 최근에 사용해보았기 때문에 별 문제 없이 빠르게 적용할 수 있을 것이라 생각했지만.. 뭐든 호락호락하게 넘어가는 법이 없다. 팀 프로젝트에 Github action을 적용하면서 이 전까진 볼 수 없었던 다양한 문제와 마주쳤고 이에 대한 해결 과정에 대해 기록하려 한다. 🔨 1. su..

DevOps

Github Actions로 CI/CD 구축하기 #2 (CodeDeploy, Test)

이전 발행글에서 이어지는 내용입니다. 처음부터 따라오고 싶으시다면 이전 포스팅을 참고해주세요 Github Actions로 CI/CD 구축하기 #1 Github Actions로 CI/CD 구축하기 (EC2, S3, CodeDeploy) 📌 Spring Boot ProjectGithub Actions 를 활용한 CI/CD를 구축해보기 위해 이전에 진행했던 개인 프로젝트를 이용하였습니다. 모든 코드는 아래 URL에서 확인 가능합니다. https://github.com/KAispread/ModuForms GitHu rachel0115.tistory.com 📌 CodeDeploy CodeDeploy Agent 설치 본 CI/CD 실습에 사용되는 EC2 인스턴스의 운영체제 및 버전은 Ubuntu - 22.04 ve..

DevOps

Github Actions로 CI/CD 구축하기 #1 (EC2, S3 생성 및 설정)

📌 Spring Boot Project Github Actions 를 활용한 CI/CD를 구축해보기 위해 이전에 진행했던 개인 프로젝트를 이용하였습니다. 모든 코드는 아래 URL에서 확인 가능합니다. https://github.com/KAispread/ModuForms GitHub - KAispread/ModuForms: 📝It's a simple survey application. (with SpringBoot, JPA, MariaDB, AWS) 📝It's a simple survey application. (with SpringBoot, JPA, MariaDB, AWS) - GitHub - KAispread/ModuForms: 📝It's a simple survey application. (with ..

JPA/Spring Data JPA

[QueryDsl] Page, Slice (페이지네이션, 무한 스크롤)

개요 페이지네이션과 무한 스크롤은 사용자가 컨텐츠를 조작할 때 중요한 역할을 합니다. 사용자가 특정 정보를 탐색하는 과정에 영향을 미치기 때문에 UX에서 매우 중요한 요소라고 볼 수 있습니다. 페이지네이션 페이지네이션은 일반적으로 웹 사이트나 애플리케이션에서 긴 목록이나 검색 결과를 페이지 단위로 분할하는 방법입니다. 이를 통해 사용자는 전체 목록을 한 번에 볼 필요 없이 필요한 부분만 볼 수 있습니다. 이는 사용자가 페이지를 넘기는 데 필요한 시간을 줄이고, 빠르게 원하는 정보를 찾을 수 있도록 도와줍니다. 무한 스크롤 반면, 무한 스크롤은 사용자가 스크롤을 내릴 때마다 새로운 컨텐츠가 계속해서 로드되는 방식입니다. 이것은 사용자가 스크롤을 내리는 행위, 즉 새로운 컨텐츠를 필요로 할 때마다 일정량의 ..

JPA/Spring Data JPA

[QueryDsl] 동적 쿼리 사용하기 [검색 기능 구현]

개요 프로젝트를 진행하면서, 여러 조건에 따라 선택적으로 게시글을 조회하는 요구사항이 생겼습니다. 쉽게 말해 검색 기능을 구현해야했던 것입니다. 요구사항에서 추출한 검색 조건 및 필터는 다음과 같습니다. 제목 (포함) 태그 (포함) 카테고리 (정확히 일치) 게시글 상태 (정확히 일치) N일전 게시글 (포함) 조건은 주어진 텍스트가 값에 포함되어있다면 조회하고, (정확히 일치) 조건은 말 그대로 값이 정확히 일치해야 조회한다는 뜻입니다. 위 요구사항대로 검색조건을 구현하기 위해선, SQL의 WHERE 조건절에 'LIKE'나 '=' 연산자를 통해 주어진 조건에 일치하는 데이터만 조회해야합니다. 앞선 검색 조건들이 항상 모두 적용되지는 않고, 보통 일부 조건만 사용하기 때문에 순수 SQL문을 사용한다면 검색 ..

JPA/Spring Data JPA

[QueryDsl] @DataJpaTest 에서 @Repository 테스트하기

개요 프로젝트 진행중에 QueryDsl을 사용하는 CustomRepository를 만들었다. 여러 엔티티를 JOIN하여 데이터를 조회할 예정이였기 때문에 JpaRepository에 상속하지 않고 @Repository 어노테이션을 붙여 스프링 빈으로 등록하여 사용하고 있었다. 코드는 다음과 같다. Repository @RequiredArgsConstructor @Repository public class AdminRepository implements ApplimentSearchRepository { private final JPAQueryFactory queryFactory; @Override public Optional findApplimentMemberById(Long applyId) { ... } ..

KAispread
'분류 전체보기' 카테고리의 글 목록 (5 Page)