YAML语法介绍

更新时间: 2025-01-03 09:34:24

本文主要介绍YAML语法使用与说明。

基本结构

YAML是一种简洁的、易于阅读的数据序列化格式。它常用于配置文件,支持数据结构如映射(键值对)、序列(列表)和标量(单个值)。以下是YAML的一些基本语法介绍:

  • 缩进:YAML使用缩进来表示层级关系,通常使用两个空格进行缩进,不推荐使用制表符。

  • 冒号:用于分隔键和值,例如 key: value

  • 短横线:用于表示列表项,例如:

    fruits:
      - apple
      - banana
      - orange

数据类型

  • 标量:单个值,可以是字符串、整数、浮点数等。

    name: John Doe
    age: 30
  • 列表:有序的值的集合。

    items:
      - item1
      - item2
      - item3
  • 映射:键值对的集合。

    person:
      name: John Doe
      age: 30

  • 注释

    使用 # 符号进行注释。

    # This is a comment
    name: John Doe # This is also a comment
  • 引用

    使用 & 和 * 进行锚点和别名。

    defaults: &defaults
      timeout: 30
      retries: 3
    
    task1:
      <<: *defaults
      name: Task 1
    
    task2:
      <<: *defaults
      name: Task 2
      timeout: 60

    复杂结构

    YAML支持嵌套的复杂结构。

    services:
      web:
        build: .
        ports:
          - "5000:5000"
      db:
        image: postgres
        environment:
          POSTGRES_PASSWORD: example

    示例:GitHub Actions工作流配置

    以下是一个简单的GitHub Actions工作流配置示例,展示了YAML的使用:

    name: CI
    
    on:
      push:
        branches:
          - main
      pull_request:
        branches:
          - main
    
    jobs:
      build:
        runs-on: ubuntu-latest
    
        steps:
        - uses: actions/checkout@v2
        - name: Set up JDK 11
          uses: actions/setup-java@v2
          with:
            java-version: '11'
            distribution: 'adopt'
        - name: Build with Maven
          run: mvn -B package --file pom.xml

    在这个示例中:

    通过掌握这些基本的YAML语法,可以有效地编写和管理各种配置文件和数据交换格式。

    • name 是工作流的名称。

    • on 定义了触发流水线的事件。

    • jobs 定义了流水线中的作业,每个作业包含多个步骤。

上一篇: YAML初步体验 下一篇: 语法细则
阿里云首页 云效 相关技术圈