yaml파일을 접하게 되어 yaml파일이 무엇인지 간단히 남겨두고자 한다.

 

 

YAML : 사람이 읽을 수 있는 데이터 직렬화 언어로서, 구성 파일 작성에 자주 사용됨.

  • 확장자 : .yml 또는 .yaml
  • 특정 구문 규칙
    • # (해시기호) : 코멘트. 여러 줄의 코멘트를 지원하지 않으므로 각 줄 맨 앞에 위치할 것
    • --- : 문서의 시작
    • ... : 문서의 끝
  • 파일 구조는 맵 또는 목록으로 들여쓰기와 키-값 정의 방식에 따라 계층 구조로 이루어져 있음
    • 맵 구조 : 키-값 쌍으로 이루어져있음. 키는 고유해야하고 순서는 상관 없음
    • 목록 구조 : 대시(-) 및 공백으로 시작하고 들여쓰기로 상위 항목과 구분함
      • => 목록 시퀀스는 배열과 같고 목록은 맵 구조에 포함 가능
  • 사용 : configuration 파일을 만들거나 쿠버네티스 리소스 및 배포, GitHub와 같은 소스 제어에 사용됨

 yaml 파일은 생성 후 파일이 유효한지 확인할 때 linter라는 앱을 사용해 파일 구문을 검증하고, yaml 파일 생성 후 앱에 전달하기 전 yamllint라는 커맨드로 유효성을 확인 할 수 있다.

 

 

(참고에 있던 예제. 코멘트, 시작 표시, 키-값 맵 구조 안 배열 구조가 있는 것을 볼 수 있다. )

#Comment: Student record
#Describes some characteristics and preferences
---
name: Martin D'vloper #key-value
age: 26
hobbies: 
  - painting #first list item
  - playing_music #second list item
  - cooking #third list item
programming_languages:
  java: Intermediate
  python: Advanced
  javascript: Beginner
favorite_food: 
  - vegetables: tomatoes 
  - fruits: 
      citrics: oranges 
      tropical: bananas
      nuts: peanuts
      sweets: raisins

 

 

 

 

참고 : https://www.redhat.com/ko/topics/automation/what-is-yaml

 

 

+ Recent posts