クラスターにconfigmapをデプロイしようとしています
- name: Make/Update all configmaps on the cluster
kubernetes:
api_endpoint: blah
url_username: blah
url_password: blah
inline_data:
apiVersion: v1
kind: ConfigMap
metadata:
name: blah
namespace: blah
data: my-data.txt: "{{ data }}"
state: present
data: |
some = foo
foo = some
(using spinnaker to attach it to pods)
ポッドに移動してmy-data.txtを開くと、次のように表示されます。
some = foo\n foo = some\n
テキストとまったく同じように表示し、\ nではなく改行を印刷する
''単一引用符をテキストのどこかに置くと、テキストがそのまま出力されますが、単一引用符があるので、奇妙なことです。
data: |
some = foo
foo = some
' '
まったく同じように印刷します。
調べてみましたが何も見つからず、しばらく悩んでしまいました。
これは、ファイルからconfigMapを作成するときの kubernetes/kubernetes issue 36222 に似ているようです。
あなたの場合、それはdata
ブロックから作成されたときに起こります。
最近の kubernetes/kubernetes issue 635 は、印刷されたすべての問題を参照しています。
A コメントの言及 :
識別のためにタブを使用して、configMapに新しい行を追加しました。タブではなくスペースに変更した後、期待どおりにconfigmapを表示できました...
Githubの問題 で述べたように、各行の末尾からすべての空白を削除する必要があり、特殊文字も含まれていないことを確認してください。
これをプログラムで行っている場合は、複数行ではなく単一行の文字列の方がうまくいきます。例えばgoでは、バッククォートではなく"" + "\n"
を使用します。
正しい結果にはパイプを使用する必要があります|
data: |
some = foo
foo = some