yamlier: 매우 간단한 cli yaml 편집기.

7888 단어 yamlbashymlcli

github 저장소: https://github.com/jujumilk3/yamlier

CI/CD 파이프라인이나 다른 상황에서 yaml 파일을 편집해야 한다면 그냥 사용하세요.

설치


wget https://github.com/jujumilk3/yamlier/releases/download/v0.2.0/yamlier.{os}.{arcihtecture} -O ./yamlierchmod +x ./yamlier물론 전역으로 사용하려면 bin dir로 옮겨야 합니다.
귀하의 계정에서 참조하는

예를 들어


  • 맥OS(amd64)

  • $ wget https://github.com/jujumilk3/yamlier/releases/download/v0.2.0/yamlier.darwin.amd64 -O ./yamlier
    chmod +x ./yamlier
    ./yamlier edit ./yamlier edit developer.yaml languages.perl poor ./developer-modified.yaml
    

  • github 작업(github 작업의 ubuntu-최신 이미지는 amd64 아키텍처임)

  • ...
    jobs:
      build:
        runs-on: ubuntu-latest
    ...
        - name: wget
          uses: wei/wget@v1
          with:
            args: https://github.com/jujumilk3/yamlier/releases/download/v0.2.0/yamlier.linux.amd64 -O yamlier
    
        - name: change file mod
          run: sudo chmod +x ./yamlier
    
        - name: run yamlier
          run: ./yamlier edit ./developer.yaml name changed_name ./developer-yamlier.yaml
    ...
    

    용법


  • yamlier --help
  • yamlier 편집[플래그]
  • yamlier edit [file_path] [key] [value] | [output_filepath]


  • 예시



    # developer.yaml
    name: Martin D'vloper
    job: Developer
    skill: Elite
    foods:
      - Apple
      - Orange
      - Strawberry
      - Mango
    languages:
      perl: Elite
      python: Elite
      pascal: Lame
    education: |
      4 GCSEs
      3 A-Levels
      BSc in the Internet of Things
    
    yamlier edit ./developer.yaml name changed_name ./developer-yamlier.yaml
    # developer-yamlier.yaml
    education: |
      4 GCSEs
      3 A-Levels
      BSc in the Internet of Things
    foods:
    - Apple
    - Orange
    - Strawberry
    - Mango
    job: Developer
    languages:
      pascal: Lame
      perl: Elite
      python: Elite
    name: changed_name  # name changed
    skill: Elite
    


    ※ 주의: 새로운 yaml의 키가 주문됩니다.

    또한 더 깊은 값을 처리할 수 있습니다.

    # developer.yaml
    name: Martin D'vloper
    job: Developer
    skill: Elite
    foods:
      - Apple
      - Orange
      - Strawberry
      - Mango
    languages:
      perl: Elite
      python: Elite
      pascal: Lame
    education: |
      4 GCSEs
      3 A-Levels
      BSc in the Internet of Things
    

    yamlier edit ./developer.yaml languages.perl Poor ./developer-yamlier.yaml
    # developer-yamlier.yaml
    education: |
      4 GCSEs
      3 A-Levels
      BSc in the Internet of Things
    foods:
    - Apple
    - Orange
    - Strawberry
    - Mango
    job: Developer
    languages:
      pascal: Lame
      perl: Poor  # languages.perl changed
      python: Elite
    name: Martin D'vloper
    skill: Elite
    



    CI/CD 파이프라인에서 yaml 설정 파일을 수정해야 해서 만들었습니다. 노출되어서는 안 되는 값도 있었습니다. yaml 파일을 편집하는 CLI 도구가 있다고 생각했습니다. kustomize가 실제로 그렇게 하기 때문입니다. 그러나 yaml 편집 CLI 도구는 없습니다.

    cli에서 yaml 파일을 편집해야 하는 모든 사람은 yaml 파일을 편집하기 위해 임시 bash, shell, python 스크립트를 작성하고 있습니다.

    일을 복잡하게 하지 마십시오. 이것을 사용하십시오.

    좋은 웹페이지 즐겨찾기