인프런 커뮤니티 질문&답변

HeeSeok Noh님의 프로필 이미지

작성한 질문수

실전! GitHub Actions으로 CI/CD 시작하기

matrix

run 할때 | 의미는?

24.05.08 12:23 작성

·

139

0

yml 파일에 run: |

이렇게 하고서 밑에 리눅스 명령어를 사용하는데

| 는 왜 하는걸까요??

답변 1

0

이상원님의 프로필 이미지
이상원
지식공유자

2024. 05. 09. 16:24

안녕하세요 HeeSeok Noh 님

질문주신 | 에 대해서, 편하게 바라는 명칭으로 표현하겠습니다.

 

코드로 설명하면 좀 더 이해하기 쉬울 거 같아서, 간단한 코드로 설명드리겠습니다.

예를 들어, 특정 step에서 run 이라는 키워드를 사용해서 커맨드를 실행한다고 해보겠습니다.

커맨드는 echo "hello", cat text.txt 이렇게 실행한다고 가정하겠습니다.

 

만약 바가 없이 정상적으로 실행하려면 코드를 아래처럼 구성해야 합니다.

이렇게 커맨드를 이어서 작성해야 합니다.

run: echo "hello" cat text.txt 

 

만약 바가 없이, 아래처럼 표현하면 깃헙액션 문법에 의해서 정상적으로 실행이 안됩니다.

run: echo "hello"
     cat text.txt 

 

그래서, 결론적으로 말씀드리면 바를 사용하면 깃헙액션 문법을 지키기 + 가시성도 확보가 가능해집니다.

 

run 뿐만 아니라, if condition을 사용하는 경우도 마찬가지입니다.

이렇게 표현해서 정상적으로 실행할 수 있지만, 조건이 많아지면 코드가 길어지니까 보기가 불편합니다.

if: needs.test.result == 'success' && needs.test2.result == 'success' && needs.test3.result == 'success'

 

바를 사용한다면, 이렇게 표현할 수 있습니다.

if: |
    needs.test.result == 'success' &&
    needs.test2.result == 'success' &&
    needs.test3.result == 'success'

 

답변이 도움이 되면 좋겠습니다.