
    VhD                     P    d dl Z d dlZdZd Zd Zd Zd Zd Zedk(  r e        yy)	    Nz*.github/workflows/ansible-test-plugins.ymlc                      t        t        d      5 } 	 t        j                  |       cd d d        S # t        j                  $ r}t        |       Y d }~nd }~ww xY w	 d d d        y # 1 sw Y   y xY w)Nr)opengithub_workflow_fileyaml	safe_load	YAMLErrorprint)gh_fileexcs     a/home/dcms/DCMS/lib/python3.12/site-packages/ansible_collections/community/mysql/run_all_tests.pyread_github_workflow_filer   	   sa    	"C	( G	>>'*  ~~ 	#JJ		  s,   A&1AAA&AA&&A/c                 F    |j                         D ]  \  }}|| k(  s|c S  y )N)items)target	dict_yamlkeyvalues       r   extract_valuer      s(    oo' 
U&=L    c                 f    t        d|       }t        d|      }t        d|      }t        d|      }|S )Njobsintegrationstrategymatrix)r   )workflow_yamlr   r   r   r   s        r   extract_matrixr      s7    /Dt4KZ5H8X.FMr   c                 F   d}| D ]  }d}d|v r(|j                  d      |j                  d      k(  r|dz  }d|v r(|j                  d      |j                  d      k(  r|dz  }d|v r(|j                  d      |j                  d      k(  r|dz  }d|v r(|j                  d      |j                  d      k(  r|dz  }d|v r(|j                  d      |j                  d      k(  r|dz  }d	|v r(|j                  d	      |j                  d	      k(  r|dz  }|dkD  sd
}|c S  |S )NFr   ansible   db_engine_namedb_engine_versionpythonconnector_nameconnector_versionT)get)exclude_list
test_suitetest_is_excludedexclmatchs        r   
is_excluder,      sA    $xx	"jnnY&??
t#xx()Z^^<L-MM
$&xx+,
?R0SS
txx!Z^^H%==
t#xx()Z^^<L-MM
$&xx+,
?R0SS
19###;$> r   c                     t               } t        |       }g }|j                  d      }|j                  d      D ]  }|j                  d      D ]  }|j                  d      D ]k  }|j                  d      D ]U  }|j                  d      D ]?  }|j                  d      D ])  }	||||||	d}
t        ||
      r|j	                  |
       + A W m   |D ]  }|j                  d      }|j                  d      }|j                  d      }|j                  d      }|j                  d      }|j                  d      }d	| d
| d| d| d| d| d}t        d| d| d| d| d| d|        t        j                  |        y )Nexcluder   r!   r"   r#   r$   r%   )r   r!   r"   r#   r$   r%   zmake ansible="z" db_engine_name="z" db_engine_version="z
" python="z" connector_name="z" connector_version="z" test-integrationzRun tests for: Ansible: z, DB:  z
, Python: z, Connector: )r   r   r&   r,   appendr
   ossystem)r   tests_matrix_yamlr   r'   r   r!   r"   r#   r$   r%   r(   testsadndvpcncvmake_cmds                      r   mainr<   C   s   -/M&}5F$((3L$((3 :/334DE 	:N%6%:%:;N%O :!/33H= :F*;*?*?@P*Q :1B1F1FGZ1[ 
:-+22@5F*02@5F*J $.lJ#G &j 9
::::	::"  IIi YY'(YY*+IIhYY'(YY*+s !d #""$ &c !d #""$ &  	 	(6"Qrd*QC}UWTXXYZ\Y]^_
		(%r   __main__)	r   r1   r   r   r   r   r,   r<   __name__ r   r   <module>r@      sB     	C !H)^ zF r   