failed
আপনার কমান্ড চালানোর পরে আপনি জিনজা 2 ফিল্টারটি পরীক্ষা করতে পারেন যা প্রক্রিয়াটি চলছে কিনা তা পরীক্ষা করে।
systemctl status apache2
অ্যাপাচি চলছে কিনা তা নির্ধারণের জন্য কমান্ডের আউটপুট ব্যবহার করে এমন একটি উদাহরণ এখানে দেওয়া হয়েছে :
- name: Check if Apache is running
command: systemctl status apache2
ignore_errors: yes
changed_when: false
register: service_apache_status
- name: Report status of Apache
fail:
msg: |
Service apache2 is not running.
Output of `systemctl status apache2`:
{{ service_apache_status.stdout }}
{{ service_apache_status.stderr }}
when: service_apache_status | failed
যদি প্রথম টাস্কের কমান্ড ব্যর্থ হয় তবে দ্বিতীয় কাজটি ব্যর্থ হবে এবং প্রথম কার্যটি কেন ব্যর্থ হয়েছিল তা প্রদর্শিত হবে show
রিটার্ন কোডটি সংরক্ষণ করা হয় service_apache_status.rc
।
ব্যর্থতার উদাহরণ আউটপুট:
TASK: [Check if Apache is running] ***********************
failed: [localhost] => {"changed": false, "cmd": ["systemctl", "status", "apache2"], "delta": "0:00:00.009379", "end": "2016-06-06 15:17:27.827172", "rc": 3, "start": "2016-06-06 15:17:27.817793", "stdout_lines": ["* apache2.service", " Loaded: not-found (Reason: No such file or directory)", " Active: inactive (dead)"], "warnings": []}
stdout: * apache2.service
Loaded: not-found (Reason: No such file or directory)
Active: inactive (dead)
...ignoring
TASK: [Report status of Apache] ***************************
failed: [localhost] => {"failed": true}
msg: apache2 is not running
systemctl status apache2 output:
* apache2.service
Loaded: not-found (Reason: No such file or directory)
Active: inactive (dead)
pgrep
প্রক্রিয়াটি চলছে কিনা তা পরীক্ষা করে দেখার জন্য এখানে আলাদা (সম্ভবত কম নির্ভরযোগ্য হলেও) উপায় রয়েছে :
- name: Check if Apache is running
shell: pgrep apache2
ignore_errors: yes
changed_when: false
register: service_apache_status
- name: Report status of Apache
fail:
msg: |
Service apache2 is not running.
Return code from `pgrep`:
{{ service_apache_status.rc }}
when: service_apache_status.rc != 0
when: service_apache_status | failed
কাজ করে? এটি কিfailed
টোকেনের সন্ধান করেservice_apache_status
?