कैसे करने के लिए समय जोड़ने के लिए वर्तमान में टाइमस्टैम्प Ansible?

0

सवाल

मैं कोशिश कर रहा हूँ को स्वचालित करने के लिए कुछ कार्यों में Ansible और जब मैं मिल गया है और सब कुछ काम करने के लिए, मैं करने के लिए की जरूरत है एक start_time और end_time चर कहते हैं कि समय के लिए वर्तमान टाइमस्टैम्प के रूप में ServiceNow प्रणाली को स्वीकार नहीं करता है एक वर्तमान टाइमस्टैम्प बनाने के लिए जब एक परिवर्तन का अनुरोध.

उदाहरण के लिए, मैं एक चर start_time के रूप में "{{ lookup('pipe', date +\"%Y-%m-%d %r\"') }}" लेकिन मैं की जरूरत है कि किया जा करने के लिए वर्तमान समय +5 मिनट के लिए उदाहरण है । इसी तरह पर end_date, लेकिन कुछ की तरह +15 मिनटों.

ansible jinja2
2021-11-23 13:22:47
3

सबसे अच्छा जवाब

2

की तरह कुछ?

{{ ansible_date_time.date }}
{{ ansible_date_time.hour|int +1|int }}
{{ ansible_date_time.minute|int +15|int }}
2021-11-23 15:18:12

यह भी बहुत अच्छा है, धन्यवाद!
oakenshield
1

यदि आप जा रहे हैं करने के लिए का उपयोग करें lookupप्लगइन्स और pipe, आप कर सकते हैं बस जोड़ने के 5 मिनट का उपयोग करके date +"%Y-%m-%d %r" -d "5 mins".

करने के लिए धन्यवाद

फिर भी यह है करने के लिए सलाह देते Ansible की तरह चर ansible_date_time तथ्यों से.

date_time:
  date: '2021-11-23'
  day: '23'
  epoch: '1637678908'
  hour: '15'
  iso8601: '2021-11-23T14:48:28Z'
  iso8601_basic: 20211123T154828773386
  iso8601_basic_short: 20211123T154828
  iso8601_micro: '2021-11-23T14:48:28.773386Z'
  minute: '48'
  month: '11'
  second: '28'
  time: '15:48:28'
  tz: CET
  tz_offset: '+0100'
  weekday: Tuesday
  weekday_number: '2'
  weeknumber: '47'
  year: '2021'

वहाँ के रूप में आप का उपयोग कर सकता है epoch, minute या क्या फिट होगा करने के लिए अपने मामले का उपयोग करें.

2021-11-23 14:50:21

मैं था में सफल हो रही है समय का उपयोग कर जोड़ा date +"%Y-%m-%d %r" -d "+5 minutes" हालांकि मैं इस प्राप्त करने के लिए एक चर का उपयोग कर फ़ाइल के बजाय निष्पादित करने के लिए है कि आदेश में प्रत्येक playbook और भंडारण चर.
oakenshield

पता चला है कि आप यह कर सकते हैं के रूप में संग्रहीत चर की तरह "{{ lookup('pipe', 'date -d \"+5 minutes\" +\"%Y%m%d %r\"') }}"
oakenshield
0

आप का उपयोग कर सकते हैं strftime फिल्टर करने के लिए प्रारूप बार, Ansible निर्मित में तथ्य जुटाने के लिए वर्तमान समय मिलता है, और का एक छोटा सा अंकगणितीय जोड़ने के लिए एक ऑफसेट.

- hosts: localhost
  tasks:
    - debug:
        msg:
          - "{{ '%Y-%m-%d %r' | strftime(ansible_facts.date_time.epoch | int + 300 ) }}"
          - "{{ '%Y-%m-%d %r' | strftime(ansible_facts.date_time.epoch | int + 900 ) }}"
TASK [debug] *******************************************************************
ok: [localhost] => {
    "msg": [
        "2021-11-23 01:10:45 PM",
        "2021-11-23 01:20:45 PM"
    ]
}
2021-11-23 14:41:37

यह बहुत अच्छा है, धन्यवाद!
oakenshield

अन्य भाषाओं में

यह पृष्ठ अन्य भाषाओं में है

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................