${{ ... }} 가 템플릿 엔진
표현식 문법인 ${{ ... }}는 YAML 문자열 안에서 평가돼. 워크플로의 조건을 걸거나 값을 조회하고, 문자열을 조작할 때 쓰는 방법이야.
컨텍스트들
github— 저장소, ref, sha, actor, event, 워크플로 정보.env— 현재 범위의 환경 변수.vars— 저장소, 조직, 환경 변수.secrets— 저장소, 조직, 환경 비밀값.job— 현재 작업 정보.steps— 이 작업에서 이전 단계의 출력값.matrix— 현재 매트릭스 셀의 값.needs—needs:에 지정한 작업의 출력값.inputs—workflow_dispatch나workflow_call의 입력값.runner— 러너 정보(OS, 아키텍처, 임시 디렉터리).
연산자와 함수
- 비교:
==,!=,<,<=,>,>=. - 논리:
&&,||,!. - 자주 쓰는 함수:
contains(haystack, needle),startsWith(s, prefix),endsWith(s, suffix),format('hello {0}', name),fromJSON(s),toJSON(obj),hashFiles('**/lockfile'). - 상태 확인:
success(),failure(),cancelled(),always().