Ansibleで変数単位のvaultパスワードを生成する方法

スポンサーリンク
スポンサーリンク

Ansibleで、変数単位のvaultパスワードをコマンド生成する方法を記載していきます。

と言っても単純です。
以下のコマンドの「–vault-password-file」に「.vault_password」ファイルを指定して実行するだけです。


$ echo -n '暗号化したいパスワード' | ansible-vault encrypt_string --vault-password-file .vault_password --stdin-name 'パスワードを設定する変数名'

すると以下のように出力されます。


Reading plaintext input from stdin. (ctrl-d to end input)
パスワードを設定する変数名: !vault |
          $ANSIBLE_VAULT;1.1;AES256
          35323662663633616662636134363330333766323637303037663861333537386566353336336538
          6262393432306562376363346236626365346135303939390a613935343336393165373833663966
          35303332393130393333303064366134643364656562393766313862396239386431626636633864
          3738653439363030320a663536343335643762636236643764633135616630623235636431333733
          34323861326563313137666137316361393863376534383933373362653233366535333239616533
          3663343264643562363537383733353762333962633566376233
Encryption successful

group_varsやroles配下のymlファイルに直接出力する場合は、以下のように「>>」でファイルへの追記出力を指定すればオッケーです。


$ echo -n '暗号化したいパスワード' | ansible-vault encrypt_string --vault-password-file .vault_password --stdin-name 'パスワードを設定する変数名' >> group_vars/local.yml

Ansibleを使ってて感じるのは便利ですね!(特にローカル環境構築!!)
ただ、まだまだ内部的な処理の仕様が把握できていないところも多く、例えばnpm installでnode_modulesのディレクトリを作成する際なんかは、Ansibleの実行をやり直すと、ディレクトリを一度削除して再作成されるとは知らず、node_modulesにシンボリックリンクを貼っていたけど「あれっ」てなることもありました(^^;
こちらは、最終的には、yarnコマンドでのインストールに落ち着きました。

コメント

タイトルとURLをコピーしました