Kubernetesのsecretsはbase64でエンコードした値を入力します。

$ echo 'secrets value' | base64
c2VjcmV0cyB2YWx1ZQo=

 

この時エンコードする文字列が長いとエンコード結果が2行になってしまうときがあります。

$ echo 'long long long long long long long long long long secrets value' | base64
bG9uZyBsb25nIGxvbmcgbG9uZyBsb25nIGxvbmcgbG9uZyBsb25nIGxvbmcgbG9uZyBzZWNyZXRz
IHZhbHVlCg==

 

2行の文字列をどうやってsecretsのymlファイルに書こうか少し迷いましたが、2行を単純に連結するだけで問題ありませんでした (知らなかった…)。

$ echo 'bG9uZyBsb25nIGxvbmcgbG9uZyBsb25nIGxvbmcgbG9uZyBsb25nIGxvbmcgbG9uZyBzZWNyZXRzIHZhbHVlCg==' | base64 -d
long long long long long long long long long long secrets value

 

ちなみにecho ‘hoge’ | base64してもいいですが、base64 <<< ‘hoge’ とした方が短くてスマートですね (こちらも知らなかった…)。