본문 바로가기

트러블 슈팅

ci (자동빌드) 중에 No such file or directory 오류 해결

깃허브 액션으로 CI(자동 빌드) 를 처음 시도하게 되면서 여러 시행착오를 만나게 되었다

그중 한 오류인데 에러 메세지를 보게 되면

"chmod: cannot access 'gradlew': No such file or directory" 

 'gradlew' 에 액세스할 수 없다 왜냐하면 해당 파일 또는 디렉토리가 없다 라는 뜻으로 해석된다.

하지만 이 오류에 대해 구글에 검색하게 되면 생각보다 이에 대한 해결 자료가 많이 없었다  

 

유심히 검색중 어느 한분이 작성해주신 글을 보게 되었는데 https://rutgo-letsgo.tistory.com/80

 

Github Action을 이용해 Psuh, PR 시 Gradle Build Test를 진행해보자.

Github Action을 이용해 Push, PR 시 Gradle Build Test를 진행해보자. 예제코드 Github Action이란? 소프트웨어 WorkFlow를 자동화 할 수 있도록 도와준다. WorkFlow의 대표적인 예 Test Code, 배포, 자동화 스크..

rutgo-letsgo.tistory.com

 

working-directory

  • 하나의 저장소에서 frontEnd폴더와 backEnd 폴더를 분리시켜서 작업하는 경우가 있다.
  • github Action Script를 만들면 저장소의 Root에 github 폴더에 들어가게 된다.
  • 그렇다면 기본적으로 저장소의 root로 Build를 진행할텐데, Spring Project가 없기 때문에 build를 실패할 것이다.
  • 따라서 working-directory 라고, 환경 변수를 설정하고 그 폴더에서 Build를 진행하라고 해야 한다.

첫번째 문단을 읽어보니 지금 진행하는 프로젝트가 한 저장소에서 2갈래로 나누어져 있었고 

그때문에 경로를 못잡는것 같아서 working-directory 코드를 추가 해주기로 하였다.

Gradlew 권한 설정 과 Build 에  working-directory 로 경로를 재 설정 해주었다. 

그 결과 별다른 오류 없이 빌드에 성공하였다.