• gradle upgrade 하기

    SpringBoot를 2.1.0 으로 올리려니까 gradle plugin 버전이 4.4 이어야 한다고 오류가 떴다. gradle을 upgrade 하자. 먼저 시스템에 설치되어 있는 gradle을 upgrade 할 것인데 Homebrew 로 설치했어서 간단하게 upgrade 가 가능했다. Homebrew는 참 좋은 것 같다. Mac OS, Homebrew brew upgrade gradle 그러면 쭉쭉 알아서 업그레이드가 되고 (시간이 좀 걸렸다) 현재...


  • certbot renew 실패할 때 시도해볼 만한 것

    let’s encrypt는 https 를 무료로 사용할 수 있게 해주고 certbot은 설치를 간편하게 해준다. 단점이 있다면 3개월 마다 갱신을 해줘야 한다는 것. 하지만 이것 마저 crontab 같은 스케줄러를 이용해서 자동화 할 수 있기 때문에 크게 문제가 되지는 않는다. 그런데 나에게 닥친 진짜 문제는 renew 하는데 오류가 발생한다는 것이다. ImportError: No module...


  • git repo가 아닌 디렉토리를 remote repo와 병합하면서 git repo로 만들기

    리모트에 있는 git 서버에 repogitory가 있는데 이것과 git 리포지토리가 아닌 디렉토리를 병합해야 하는 경우에 어떻게 하는지 알아본다. 예를들면 이런 경우이다. A가 프로젝트를 만들고 틀을 짠뒤에 전체 소스를 하드카피를 해서 B에게 전달한다. 서로 각자 개발을 진행하다가 형상 관리가 필요해서 A가 본인 소스를 git repository로 만들고 remote에도 bare repository를 만들어서 upstream으로 사용한다....


  • Spring-boot가 아닌 프로젝트를 Spring-boot-test로 테스트하기

    Spring을 사용하는 라이브러리를 구현하고 spring-boot-test 로 테스트하고자 한다. 문제는 스프링부트 테스트를 만들어도 정상적으로 DI를 받을 수가 없다. 아래와 같이 컴포넌트를 만들고 테스트를 한번 만들어보자. package cothe.springboottestfornormalproject.sample; import org.springframework.stereotype.Component; @Component public class User { private String name; public User() { this.name = "default"; } public String getName() { return name; }...


  • Spring Security로 Security 서비스 구축하기 4

    계층구조 Role 우리가 정의한 Role은 부모 Role을 가지질 수 있는 계층적인 구조이다. 따라서 부모가 가지고 있는 Permission 이 그대로 상속되고, 권한 체크할 때 부모가 가진 Permission도 모두 검증해봐야 한다. 그러기 전에 먼저, JPA의 JpaRepository interface가 계층적인 구조에서 잘 동작하는지 검증해보자. RoleRepositoryTest.java package cothe.security.core.repositories; @RunWith(SpringRunner.class) @SpringBootTest public class RoleRepositoryTest { @Autowired...