我如何仅在服务存在时采取行动?

How do i take action only if a service exists?

试图消除我的剧本中的跳过错误。我只想在服务存在时采取行动。

  tasks:
  - name: check service exists
    win_service:
     name: god_mode
    register: service_info

这个returns

"service_info": {
        "changed": false,
        "exists": false,
        "failed": false

我在想这样的事情,但它不起作用。尝试了不同的变化。希望有人对此有一些经验。谢谢!

  - name: disable service god_mode
    win_service:
     name: god_mode
     state: stopped
    when: service_info == exists": true

您的字典查询不正确。它应该是这样的:

when: service_info.exists

请注意,您不需要 == true。请记住,如果您的变量未定义或只是字符串类型,它将失败。根据您提供的信息,它会起作用。