app.ymlへのプラグイン追加で書式設定の問題

こんにちは、昨日からDiscourseユーザーになりました。提供されたコードを使用しても、常に次のエラーが表示されるため、プラグインをインストールできませんでした。

(不明):ブロックマッピングの解析中に予期したキーが見つかりませんでした。10行目の1列目です -e LANG=en_US.UTF-8
YAML構文エラーです。containers/*.yml設定ファイルを確認してください。

しかし、少なくとも1つのプラグインをインストールすることに成功しました。最初の基本コードの右側にあるこのコードを使用しました。

&& sudo -E -u discourse git clone GitHub - discourse/discourse-solved: Allow accepted answers on topics

しかし、そのエラーが常に表示されるため、それ以上インストールできません。
私のインストールはスペイン語であることに注意してください。en_USをes_ESに変更してみましたが、問題は解決しませんでした。

「いいね!」 1

after_codeブロックのスニペットを共有していただけますか? yamlはスペースに非常に敏感なので、インデントすべきでない行を誤ってインデントしてしまった可能性があります。

「いいね!」 4

Fireup が提案したように、インデントに余分なスペースを追加したり削除したりしていないことを確認してください。

https://yamlchecker.com/ のようなツールを使用して、すべてが正しいかどうかを確認できます。 :+1:

「いいね!」 2

これは

それらの行は、その上の行と同じインデントレベルにする必要があります。たとえば、次のようになります。

      cmd:
         - git clone...
         - git clone...
「いいね!」 5

やあ、友達、本当にありがとう。そのサイトのおかげで問題を解決することができました。これからは間違いなく私の一番の味方になるでしょう。:grin:

「いいね!」 4

コンパイル後、最後にこのエラーが発生します。

以前に投稿したこの画像から:

ここに記載されているように、最初の元の行の形式にも従う必要があります。

したがって、あなたのものは次のようになるでしょう。


hooks:
  after_code:
    - exec:
        cd: $home/plugins
        cmd:
          - git clone https://github.com/discourse/docker_manager.git
          - git clone https://github.com/discourse/discourse-akismet.git
          - git clone https://github.com/discourse/discourse-whos-online.git

「いいね!」 4

このトピックに付け加えたいのですが、VS Code を使用している場合、indent-rainbow という拡張機能をインストールすることを強くお勧めします。

名前: indent-rainbow
ID: oderwat.indent-rainbow
説明: インデントを読みやすくします
バージョン: 8.3.1
発行者: oderwat
VS Marketplace リンク: indent-rainbow - Visual Studio Marketplace

このような見た目になります。

これにより、YAML ファイルのインデントがはるかに見やすくなります。また、VS Code では Cmd + [ または Cmd + ] のようなショートカットキーを使用してインデントを増減することもできます。

ああ、それと、表示される空白文字もオンにするのを忘れました。これは、スクリーンショットで見える小さな灰色の点です。

「いいね!」 3