当前位置:  开发笔记 > 编程语言 > 正文

如何按标签顺序运行Ansible剧本任务

如何解决《如何按标签顺序运行Ansible剧本任务》经验,为你挑选了0个好方法。

我想按照--tags中给出的标签顺序在ansible剧本中运行任务

我的剧本

---
- hosts: all
  remote_user: root
  vars:
    file_path: '{{filename}}'
  tasks:
    - name: Delete user
      user:
        name: "{{username}}"
        state: absent
        remove: yes
      tags:
        - delete_user

    - name: Create user
      user: 
        name: "{{username}}"
        shell: /bin/bash
        groups: "{{groupname}}"
        password: "{{ password |password_hash('sha512') }}"
      tags:
        - create_user

    - name: Add ssh key
      authorized_key:
        user: "{{username}}"
        key: "{{lookup('file', 'file_path')}}"
        exclusive: yes
      tags:
        - add_ssh_key

运行Ansible

ansible-playbook createuser.yml --extra-vars "username=hello password=helloworld groupname=something filename=/path/to/filename" --tags=create_user,add_ssh_key,delete_user

预期产量

TASK: [Create user] *********************************************************** 
changed: [ip address]

TASK: [Add ssh key] *********************************************************** 
changed: [ip address]

TASK: [Delete user] *********************************************************** 
ok: [ip address]

输出来

TASK: [Delete user] *********************************************************** 
ok: [ip address]

TASK: [Create user] *********************************************************** 
changed: [ip address]

TASK: [Add ssh key] *********************************************************** 
changed: [ip address]

给定标签的顺序

create_user,add_ssh_key,delete_user

但是按顺序执行

delete_user,create_user,add_ssh_key,

推荐阅读
跟我搞对象吧
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有