InfoGrab Docs

스크립트와 잡 로그

GitLab CI/CD `script` 섹션 작성 방법과 특수 구문 또는 구성으로 잡 로그를 개선하는 방법을 알아봅니다.

script 섹션에서 특수 구문을 사용하여 다음을 수행할 수 있습니다: 긴 명령을 여러 줄 명령으로 분할 . 색상 코드를 추가 하여 잡 로그를 더 쉽게 검토. 잡 로그 출력을 단순화하기 위해 커스텀 축소 가능 섹션 생성 . script 에서 특수 문자 사용 # 때로는 script 명령을 작은 따옴표나 큰 따옴표로 묶어야 합니다. 예를 들어 콜론( : )이 포함된 명령은 작은 따옴표( ' )로 묶어야 합니다. YAML 파서는 텍스트를 "key: value" 쌍이 아닌 문자열로 해석해야 합니다. 예를 들어 이 스크립트는 콜론을 사용합니다: job: script: - curl --request POST --header 'Content-Type: application/json' "https://gitlab.example.com/api/v4/projects" 유효한 YAML로 간주되려면 전체 명령을 작은 따옴표로 묶어야 합니다. 명령에 이미 작은 따옴표가 사용된 경우 가능하면 큰 따옴표( " )로 변경해야 합니다: job: script: - 'curl --request POST --header "Content-Type: application/json" "https://gitlab.example.com/api/v4/projects"' CI Lint 도구로 구문이 유효한지 확인할 수 있습니다. 다음 문자를 사용할 때도 주의하세요: { , } , [ , ] , , , & , * , # , ? , | , - , < , > , = , ! , % , @ , ` . 0이 아닌 종료 코드 무시 # 스크립트 명령이 0이 아닌 종료 코드를 반환하면 잡이 실패하고 추가 명령이 실행되지 않습니다. 이 동작을 피하려면 종료 코드를 변수에 저장합니다: job: script: - exit_code=0 - false || exit_code=$? - if [ $exit_code -ne 0 ] ; then echo "Previous command failed" ; fi; 모든 잡에 기본 before_script 또는 after_script 설정 # before_script 와 after_script 를 default 와 함께 사용할 수 있습니다: default 와 함께 before_script 를 사용하여 모든 잡의 script 명령 전에 실행해야 하는 기본 명령 배열을 정의합니다. default 와 함께 after_script 를 사용하여 잡이 완료되거나 취소된 후 실행해야 하는 기본 명령 배열을 정의합니다. 잡에서 다른 것을 정의하여 기본값을 덮어쓸 수 있습니다. 기본값을 무시하려면 before_script: [] 또는 after_script: [] 를 사용합니다: default: before_script: - echo "Execute this `before_script` in all jobs by default." after_script: - echo "Execute this `after_script` in all jobs by default." job1