# 이슈 상황
Github Action을 이용한 배포 자동화 시스템 구축 할때
gradlew을 통한 빌드를 위한 gradle.yml을 작성할때
발단 1. 현재 프로젝트는 하나의 레포지토리에 front / backend 두개로 나뉘어 있음. 그렇기 때문에 backend브런치에 gradle.yml을 작성해야함. -> 기본 작성시에는 자동으로 main에 작성되게 됨
발단 2. 인텔리제이로 스프링 부트 프로젝트를 설정했고 root경로가 래핑되어 잡혀 버림
## 이슈 키워드
Run chmod +x /backend/server/gradlew
chmod: cannot access '/backend/server/gradlew': No such file or directory
Error: Process completed with exit code 1.A Gradle build should contain a 'settings.gradle' or 'settings.gradle.kts' file in its root directory. It may also contain a 'build.gradle' or 'build.gradle.kts' file.
# 해결
## 발단 1
- gradle.yml을 만들고 난후, main에 바로 커밋을 하는것이 아니다. backend브런치에서 서브 브런치를 판 후, .github/workflows/gradle.yml파일을 개별 생성 한 후, 내용 작성 후 커밋하자
## 발단 2
- 경로를 찾지 못하는 에러가 발생했다.

- working-directory를 . 로 설정 후 경로를 잡아주는 방식으로 변경했더니 아래와 같이, setting.gradle을 찾을 수 없다는 에러가 발생한다.

- 위에 까지 에러를 종합해보면 어찌저찌 gradlew까지 접근은 성공했지만, 이후 build과정에서 찾게 되는 setting.gradle에 대한 경로가 잡히지 않는 것으로 보인다. 해당 이슈는 인텔리제이로 생성한 프로젝트 때문에 backend/server와 같이 프로젝트가 한번더 상위에 묶여 버렸다.
### 해결 방법
name: Spring Boot & Gradle CI/CD 
on:
  push:
    branches: [ "backend" ]
  pull_request:
    branches: [ "backend" ]
permissions:
  contents: read
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v3
    - name: Set up JDK 11
      uses: actions/setup-java@v3
      with:
        java-version: '11'
        distribution: 'temurin'
    - name: Grant execute permission for gradlew
      run: chmod +x ./gradlew
      working-directory: backend/server
      # working-directory: .
    - name: Build with Gradle
      run : ./gradlew clean build --exclude-task test # Test 생략
      working-directory: backend/server
      # working-directory: .- working-direcotry를 프로젝트의 디렉토리로 잡아주어 해결했다.
'• 개발 > Spring boot' 카테고리의 다른 글
| [SpringBoot] Amazon Linux 2 AMI JDK11 설치 및 타임존 설정하기 (0) | 2023.08.08 | 
|---|---|
| [SpringBoot&트러블슈팅] ddl-auto를 validate로 변경했을때 missing table 에러 해결하기 (0) | 2023.08.01 | 
| [SpringBoot&트러블슈팅] 연관관계 편의 메소드에서 @Builder를 사용할때 발생하는 NPE (0) | 2023.07.06 | 
| [트러블슈팅] 타임리프에서 소수점 반올림 하는 방법 (0) | 2023.05.20 | 
| [Spring boot] 스프링부트 배포시 타임리프(Thymeleaf) 경로 에러 (0) | 2023.02.17 | 
![[트러블슈팅] Github Action으로 스프링부트 CI/CD 적용중 생기는 경로 이슈](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FrUNUc%2Fbtsd00SW08y%2FAAAAAAAAAAAAAAAAAAAAAPpGIIFe3M12p4x6Qzh4bUGVm9cbgMb2eiYJLKJ6cLvD%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1761922799%26allow_ip%3D%26allow_referer%3D%26signature%3DxsEWANzifKqoc%252FKa8y9xXENK%252BlE%253D)