提问者:小点点

带变量的可移动password_hash


我正在编写一个创建用户的简单任务。作为该任务的一部分,我想从defaults/main.yml中读取密码

默认值/main.yml

test_user:testuser
test_group:testgroup
test_user_password:somepassword

我的任务文件如下
-名称:“为TestUser创建组”
 · 组:
名称:“{{test_group}}”
状态:当前

-名称:“创建TestUser”
 · 用户:
名称:“{{test_user}}”
密码:“{{[test_user_password]password_hash('sha512')}}”
外壳:/bin/ksh
组:“{{test_group}}”
update_password:on_create

这给了我一个意外的模板错误。我如何从main.yml读取密码并在密码筛选器内部使用它?


共1个答案

匿名用户

在创建testuser任务中,删除test_user_password周围的方括号。当一个变量在ANBABLE中引用时,它必须用{{}}括起来。

- hosts: localhost
  remote_user: user
  become: yes

  vars:
    test_user: testuser
    test_group: testgroup
    test_user_password: somepassword

  tasks:
    - name: Creating Group for testuser
      group:
         name: "{{ test_group }}"
         state: present

    - name: Creating testuser
      user:
         name: "{{ test_user }}"
         password: "{{ test_user_password | password_hash('sha512') }}"
         shell: /bin/bash
         group: "{{ test_group }}"
         update_password: on_create

相关问题