${{ ... }} 가 템플릿 엔진
Expression syntax ${{ ... }} 는 YAML 문자열 안에서 평가되고, workflow 의 조건/조회/문자열 조작 방법이야.
Context 들
github— repo, ref, sha, actor, event, workflow 정보.env— 현재 scope 의 env var.vars— repo/org/env 변수.secrets— repo/org/env secret.job— 현재 job 정보.steps— 이 job 의 이전 step 출력.matrix— 현재 matrix cell 의 값.needs—needs:job 의 출력.inputs—workflow_dispatch나workflow_call의 입력.runner— runner 정보 (OS, arch, temp dir).
연산자와 함수
- 비교:
==,!=,<,<=,>,>=. - 논리:
&&,||,!. - 흔한 함수:
contains(haystack, needle),startsWith(s, prefix),endsWith(s, suffix),format('hello {0}', name),fromJSON(s),toJSON(obj),hashFiles('**/lockfile'). - 상태:
success(),failure(),cancelled(),always().