1. ホーム
  2. yaml

このコンテキストではYAMLマッピング値は許可されません

2023-10-14 20:32:59

質問

私はこの形式のYAMLファイルを設定しようとしています。

jobs:
 - name: A
   - schedule: "0 0/5 * 1/1 * ? *"
   - type: mongodb.cluster
    - config:
       - host: mongodb://localhost:27017/admin?replicaSet=rs
       - minSecondaries: 2
       - minOplogHours: 100
       - maxSecondaryDelay: 120
 - name: B
   - schedule: "0 0/5 * 1/1 * ? *"
   - type: mongodb.cluster
    - config:
       - host: mongodb://localhost:27017/admin?replicaSet=rs
       - minSecondaries: 2
       - minOplogHours: 100
       - maxSecondaryDelay: 120

このアイデアは、私がjob要素内のコンテンツを読み、パース可能な一連の異なるジョブ設定を持つことができるということです。

しかし yamllint.com のせいで、これは違法な YAML であると教えてくれました。 mapping values are not allowed in this context at line 2 ここで line 2jobs: の行になります。

私は何を間違えているのでしょうか?

どうすればよいのでしょうか?

これは有効なYAMLです。

jobs:
 - name: A
   schedule: "0 0/5 * 1/1 * ? *"
   type: mongodb.cluster
   config:
     host: mongodb://localhost:27017/admin?replicaSet=rs
     minSecondaries: 2
     minOplogHours: 100
     maxSecondaryDelay: 120
 - name: B
   schedule: "0 0/5 * 1/1 * ? *"
   type: mongodb.cluster
   config:
     host: mongodb://localhost:27017/admin?replicaSet=rs
     minSecondaries: 2
     minOplogHours: 100
     maxSecondaryDelay: 120

注意点としては すべての '-' は 新しい 要素を開始します。また、マップ内のキーのインデントは 全く同じ .