무엇을 하고 있었냐면..FCM을 이용하여 푸시 알림을 구현했다. 알림 전송을 요청하는 과정에서 fcm access token을 받아와 정상적인 서버인지 검사하는데, 이 때 파이어베이스에서 발급 받은 json 형식의 서비스 키를 이용한다. 노출되면 안 되는 파일이기 때문에 secrets에 등록하여 자동 배포할 때 서버에 적재했다.([CI/CD] GitHub Actions와 AWS CodeDeploy를 활용한 SpringBoot 프로젝트 EC2에 자동 배포 적용 - CD편] 참고) 처음에 작성한 deploy.yml 중 파이어베이스 키 파일 적재 코드#firebase 키 데이터 파일 정보- name: Set Firebase Service Key JSON File run: | cd ./src/main/r..
Server
CD편이 필요하다는 친구의 요청으로 작성해보는 계속되는 구글링 + 나홀로 CI/CD 도전기.. CD(지속적 제공/배포)에 앞서, CI(지속적 통합)편을 읽어보는 것을 권장합니다. [CI/CD] GitHub Actions와 AWS CodeDeploy를 활용한 SpringBoot 프로젝트 EC2에 자동 배포 적용 - CI편CI(Continuous Integration): 지속적 통합졸프 중 수많은 구글링과 함께 나홀로 CI/CD 시도하기.. 1. Repository의 Actions 창에서 Java with Gradle 선택Spring Boot, Gradle 프로젝트를 자동 배포하고 싶기 때문에 GitHubroel-yomojomo.tistory.com CD(Continuous Delivery/Deploymen..
CI(Continuous Integration): 지속적 통합졸프 중 수많은 구글링과 함께 나홀로 CI/CD 시도하기.. 1. Repository의 Actions 창에서 Java with Gradle 선택Spring Boot, Gradle 프로젝트를 자동 배포하고 싶기 때문에 GitHub Actions에서 Java with Gradle 선택 2. 자동으로 생성되는 gradle.yml(CI.yml) 템플릿 수정main 또는 dev 브랜치에 pull request시 아래의 작업이 실행됨- jobs: 실행될 작업들name: Java CI with Gradleon: pull_request: branches: [ "main", "dev" ]jobs: build: runs-on: ubuntu-late..
알게 되는 내용 조금씩이라도 기록하기😛 Column Default 설정 두 가지 방법 status의 기본 값을 1이라고 설정하고 싶을 때 @Column(columnDefinition = “type default value”) or @ColumnDefault(”value”) **@Column(columnDefinition = "integer default 1")** private Integer status; // or **@ColumnDefault("1")** private Integer status; 실행 결과 DB에 insert할 때 default 값이 적용되도록 설정 문제점 status와 history에 default 값을 각각 1과 0으로 설정했는데, 새로운 약속 생성 기능에서 **em.persis..
문제 Code @Entity @Getter public class Member { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @Column(name = "name", nullable = false) private String userName; private Long age; } @Transactional void test() { Member member = new Member(); member.setName("김이름"); member.setAge(23L); em.persist(member); System.out.println("김이름의 id = " + member.getId()); // } 의문점 JPA는 em.per..
문제 spring 프로젝트 실행시 Column "start_value" not found 오류 발생 및 실행 안 됨 원인 스프링 프로젝트의 H2 데이터베이스 버전(2.1.214)과 로컬 H2 데이터베이스 버전(1.4.xxx)이 상이함 build.gradle에서 dependency 추가한 h2 database 버전 확인 방법 우측 Gradle > Dependencies > runtimeClasspath > com.h2database:h2:version 로컬 H2 database의 버전 확인 h2 실행 후 콘솔에서 아래 명령어 실행 select h2version() from dual; 해결 로컬 H2 삭제 스프링에 설치된 버전에 맞추어 재설치
CoNet 프로젝트 백엔드 파트 기록 OverView AWS S3 bucket 설정 AWS IAM user 생성 Spring Project Setting (여기까지 이전 포스트) 이미지 업로드 및 객체 url 가져오기 이미지 삭제 API Test 이전 포스트 [AWS/Spring] AWS S3 버킷 생성 및 연동 CoNet 프로젝트 백엔드 파트 기록 AWS S3 (Simple Storage Service) OverView AWS S3 bucket 설정 AWS IAM user 생성 Spring Project Setting 이미지 업로드 및 url 가져오기 (여기부터 다음 포스트) 이미지 삭제 API Test AWS 1. S3 roel-yomojomo.tistory.com 이미지 업로드 Spring 프로젝트..
CoNet 프로젝트 백엔드 파트 기록 AWS S3 (Simple Storage Service)OverViewAWS S3 bucket 설정AWS IAM user 생성Spring Project Setting이미지 업로드 및 url 가져오기 (여기부터 다음 포스트)이미지 삭제API Test AWS1. S3 Bucket 생성1) 버킷 이름 & AWS 리전 설정이름: 사용자 정의리전: 아시아 태평양(서울) ap-northeast-2 2) 퍼블릭 액세스 허용 (차단 해제)차단을 해제하지 않으면 업로드한 파일에 접근 시 403 Access Denied 에러 남 3) 객체 소유권 - ACL 활성화됨 선택‘ACL이 복원된다는 것을 확인합니다.’ 까지 선택 Trouble Shooting- 비활성화하면 프로젝트에서 버킷에 ..