Ansible:有条件的寄存器检查

问题描述 投票:0回答:1

我正在创建一个执行操作的剧本,但有一个条件:仅当日期早于x天时才执行我的命令

这是我尝试使用的

with_items:“ {{(my_register | sort(attribute ='ctime'))[30:] | list}}”]

- name: some action
  shell: some command | grep command
  register: my_register
  ignore_errors: True

- name: conditional action
  shell: command
  become: yes
  when: my_register
  with_items: "{{ (my_register | sort(attribute='ctime'))[x days:] | list }}"

我希望检查“ my_register”中的信息是否早于x天。

python linux ansible redhat
1个回答
0
投票

我已经用测试文件进行了测试。请检查这是否对您的情况有用。在什么情况下可以给出如下

  - name: Test
    stat:
        path: /tmp/test.txt
    register: output
  - name: conditional action
    shell: command
    become: yes
    when: (ansible_date_time.epoch|int - output.stat.ctime|int) < 2592000

注意:2592000是30天,以秒为单位

© www.soinside.com 2019 - 2024. All rights reserved.