
    Vh
                    n    d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	 d dl
mZ d dlmZ  G d d	e	      Zy)
    )annotations)AnsibleActionFail)string_types)boolean)
ActionBase)isidentifierNc                  (     e Zd ZdZdZd fd	Z xZS )ActionModuleFc                f   |
t               }t        t        |   ||      }~i }t	        | j
                  j                  j                  dd            }| j
                  j                  r| j
                  j                  j                         D ]}  \  }}| j                  j                  |      }t        |      st        d|z        t        j                  s/t        |t               r|j#                         dv rt	        |d      }|||<    nt        d      |r||d<   ||d<   |S t        d	      )
N	cacheableFzThe variable name '%s' is not valid. Variables must start with a letter or underscore character, and contain only letters, numbers and underscores.)truefalseyesno)strictzPNo key/value pairs provided, at least one is required for this action to succeedansible_facts_ansible_facts_cacheablez6Unable to create any variables with provided arguments)dictsuperr
   runr   _taskargspopitems_templartemplater   r   CDEFAULT_JINJA2_NATIVE
isinstancer   lower)	selftmp	task_varsresultfactsr   kv	__class__s	           O/home/dcms/DCMS/lib/python3.12/site-packages/ansible/plugins/action/set_fact.pyr   zActionModule.run"   s(   I|T.sI>DJJOO//UCD	::??**////1 AMM**1-#A+ -acd-e f f
 ..:a3NSTSZSZS\`~S~%0Aa $$vww&+F?#1:F-.
  $$\]]    )NN)__name__
__module____qualname__TRANSFERS_FILES_requires_connectionr   __classcell__)r(   s   @r)   r
   r
      s    O " "r*   r
   )
__future__r   ansible.errorsr   ansible.module_utils.sixr   )ansible.module_utils.parsing.convert_boolr   ansible.plugins.actionr   ansible.utils.varsr   ansible.constants	constantsr   r
    r*   r)   <module>r:      s(   $ # , 1 = - + ': 'r*   