i have this ansible simple playbook :
where "/home/ec2-user/test1.txt" exists on disk 

   
 ---
    - name: check if exsist
      hosts: localhost
      gather_facts: false
      tasks:
    
        - name: Get project name
          shell: "echo 'hhhhhhhh'"
          register: name_var
    
    
        - name: Check if thetest.log exists in path
          stat:
            path: "/home/ec2-user/test1.txt1"
          register: log_result_1
    
        - name: Check if TheTest.log exists in p_home
          stat:
            path: "/home/ec2-user/test1.txt"
          register: log_result_2
          when: name_var.stdout is match("hhhhhhhh")
    
        - set_fact:
            my_result: "{{ log_result_1.stat.exists or (log_result_2 is not 
skipped and log_result_2.stat.exists) }}"
    
        - debug:
            msg: "#################################### result_value 
######################################"
        - debug:
            var: my_result
    
    
        - name: Create temporary log folder
          file:
            path: "/home/ec2-user/log_tmp"
            state: directory
          when: my_result.stat.exists







I expect that the my_result will have the value of the right register in 
this case log_result_2

but I'm getting this error:

  
  ansible-playbook 2.9.7
      config file = /etc/ansible/ansible.cfg
      configured module search path = [
'/home/ec2-user/.ansible/plugins/modules', 
'/usr/share/ansible/plugins/modules']
      ansible python module location = /home/ec2-user/venv_ansible_new/lib64
/python3.7/site-packages/ansible
      executable location = /home/ec2-user/venv_ansible_new/bin/ansible-
playbook
      python version = 3.7.6 (default, Feb 26 2020, 20:54:15) [GCC 7.3.1 
20180712 (Red Hat 7.3.1-6)]
    Using /etc/ansible/ansible.cfg as config file
    [WARNING]: No inventory was parsed, only implicit localhost is available
    [WARNING]: provided hosts list is empty, only localhost is available. 
Note that the implicit localhost does not match 'all'
    
    PLAYBOOK: test3.yml 
*************************************************************************************************************************************************************************************************************************
    1 plays in test3.yml
    
    PLAY [check if exsist] 
**********************************************************************************************************************************************************************************************************************
    META: ran handlers
    
    TASK [Get project name] 
*********************************************************************************************************************************************************************************************************************
    task path: /home/ec2-user/test3.yml:7
    Tuesday 05 May 2020  09:56:22 +0000 (0:00:00.070)       0:00:00.070 
***********
    changed: [localhost] => changed=true
      cmd: echo 'hhhhhhhh'
      delta: '0:00:00.002594'
      end: '2020-05-05 09:56:22.684370'
      rc: 0
      start: '2020-05-05 09:56:22.681776'
      stderr: ''
      stderr_lines: <omitted>
      stdout: hhhhhhhh
      stdout_lines: <omitted>
    
    TASK [Check if thetest.log exists in path] 
**************************************************************************************************************************************************************************************************
    task path: /home/ec2-user/test3.yml:12
    Tuesday 05 May 2020  09:56:22 +0000 (0:00:00.256)       0:00:00.327 
***********
    ok: [localhost] => changed=false
      stat:
        exists: false
    
    TASK [Check if TheTest.log exists in p_home] 
************************************************************************************************************************************************************************************************
    task path: /home/ec2-user/test3.yml:17
    Tuesday 05 May 2020  09:56:22 +0000 (0:00:00.250)       0:00:00.577 
***********
    ok: [localhost] => changed=false
      stat:
        atime: 1588660417.6106787
        attr_flags: ''
        attributes: []
        block_size: 4096
        blocks: 8
        charset: us-ascii
        checksum: 75bae7e3ee07809acd2477a8427b5b32e605a6b4
        ctime: 1588660417.6106787
        dev: 66305
        device_type: 0
        executable: false
        exists: true
        gid: 1000
        gr_name: ec2-user
        inode: 77678
        isblk: false
        ischr: false
        isdir: false
        isfifo: false
        isgid: false
        islnk: false
        isreg: true
        issock: false
        isuid: false
        mimetype: text/plain
        mode: '0664'
        mtime: 1588660417.6106787
        nlink: 1
        path: /home/ec2-user/test1.txt
        pw_name: ec2-user
        readable: true
        rgrp: true
        roth: true
        rusr: true
        size: 18
        uid: 1000
        version: '1015088889'
        wgrp: true
        woth: false
        writeable: true
        wusr: true
        xgrp: false
        xoth: false
        xusr: false
    
    TASK [set_fact] 
*****************************************************************************************************************************************************************************************************************************
    task path: /home/ec2-user/test3.yml:23
    Tuesday 05 May 2020  09:56:23 +0000 (0:00:00.188)       0:00:00.765 
***********
    ok: [localhost] => changed=false
      ansible_facts:
        my_result: true
    
    TASK [debug] 
********************************************************************************************************************************************************************************************************************************
    task path: /home/ec2-user/test3.yml:26
    Tuesday 05 May 2020  09:56:23 +0000 (0:00:00.030)       0:00:00.796 
***********
    ok: [localhost] =>
      msg: '#################################### result_value 
######################################'
    
    TASK [debug] 
********************************************************************************************************************************************************************************************************************************
    task path: /home/ec2-user/test3.yml:28
    Tuesday 05 May 2020  09:56:23 +0000 (0:00:00.011)       0:00:00.808 
***********
    ok: [localhost] =>
      my_result: true
    
    TASK [Create temporary log folder] 
**********************************************************************************************************************************************************************************************************
    task path: /home/ec2-user/test3.yml:32
    Tuesday 05 May 2020  09:56:23 +0000 (0:00:00.010)       0:00:00.819 
***********
    fatal: [localhost]: FAILED! =>
      msg: |-
        The conditional check 'my_result.stat.exists' failed. The error was: 
error while evaluating conditional (my_result.stat.exists): 'bool object' 
has no attribute 'stat'
    
        The error appears to be in '/home/ec2-user/test3.yml': line 32, 
column 7, but may
        be elsewhere in the file depending on the exact syntax problem.
    
        The offending line appears to be:
    
    
            - name: Create temporary log folder
              ^ here



-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/11ca92bf-0a19-486a-abac-875e5589bd21%40googlegroups.com.

Reply via email to