??????????????
Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 173

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 174

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 175

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 176

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 177

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 178
 Udac@`sddlmZmZmZeZdZdZddlm Z ddl m Z ddl m Z ddlmZmZddlmZdd lmZmZmZydd lZdd lZWnek re d nXd eeefd YZd S(i(tabsolute_importtdivisiontprint_functions name: aws_rds plugin_type: inventory short_description: rds instance source description: - Get instances and clusters from Amazon Web Services RDS. - Uses a YAML configuration file that ends with aws_rds.(yml|yaml). options: regions: description: A list of regions in which to describe RDS instances and clusters. Available regions are listed here U(https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RegionsAndAvailabilityZones.html) default: [] filters: description: A dictionary of filter value pairs. Available filters are listed here U(https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html#options). If you filter by db-cluster-id and I(include_clusters) is True it will apply to clusters as well. default: {} strict_permissions: description: By default if an AccessDenied exception is encountered this plugin will fail. You can set strict_permissions to False in the inventory config file which will allow the restrictions to be gracefully skipped. type: bool default: True include_clusters: description: Whether or not to query for Aurora clusters as well as instances type: bool default: False statuses: description: A list of desired states for instances/clusters to be added to inventory. Set to ['all'] as a shorthand to find everything. type: list default: - creating - available extends_documentation_fragment: - inventory_cache - constructed - aws_credentials requirements: - boto3 - botocore author: Sloane Hertel (@s-hertel) s plugin: aws_rds regions: - us-east-1 - ca-central-1 keyed_groups: - key: 'db_parameter_groups|json_query("[].db_parameter_group_name")' prefix: rds_parameter_group - key: engine prefix: rds - key: tags - key: region (t AnsibleError(t to_native(tis_boto3_error_code(t!ansible_dict_to_boto3_filter_listtboto3_tag_list_to_ansible_dict(tcamel_dict_to_snake_dict(tBaseInventoryPlugint Constructablet CacheableNs=The RDS dynamic inventory plugin requires boto3 and botocore.tInventoryModulecB`seZdZdZdZdZedZdZdZ dZ dZ d Z d Z d Zd Zed ZRS(taws_rdscC`s)tt|ji|_d|_dS(N(tsuperR t__init__t credentialstNonet boto_profile(tself((sE/usr/lib/python2.7/site-packages/ansible/plugins/inventory/aws_rds.pyRQs cc`sx|D]}y.tjjd|jjd||j}Wntjjtjj fk r}|jry(tjjd|jjd|}Wqtjjtjj fk r}t dt |qXqt dt |nX||fVqWdS(s :param regions: A list of regions to create a boto3 client Generator that yields a boto3 client and the region t profile_nametrdss"Insufficient credentials found: %sN( tboto3tsessiontSessionRtclientRtbotocoret exceptionstProfileNotFoundtPartialCredentialsErrorRR(Rtregionstregiont connectionte((sE/usr/lib/python2.7/site-packages/ansible/plugins/inventory/aws_rds.pyt _boto3_connVs .! (!c`s"dfd}|S(NcS`sx|D]~}d|kr&|d}n |d}y|jd|d}Wn.tdk rz}|sqg}q{|nX||dscS`s|dS(NtDBClusterIdentifier((R@((sE/usr/lib/python2.7/site-packages/ansible/plugins/inventory/aws_rds.pyRAs( R"t get_paginatortextendR;tpaginatetbuild_full_resulttdescribe_db_clusterstlisttsortedtfind_hosts_with_valid_statuses( RRtinstance_filterstcluster_filtersR+tstatusestgather_clusterst all_instancest all_clustersR Rt paginatort sorted_hosts((sE/usr/lib/python2.7/site-packages/ansible/plugins/inventory/aws_rds.pyt_get_all_hostss cC`sud|kr|Sg}xX|D]P}|jd|krH|j|q|jd|kr|j|qqW|S(NtalltDBInstanceStatustStatus(tgettappend(RR*RMt valid_hostsR,((sE/usr/lib/python2.7/site-packages/ansible/plugins/inventory/aws_rds.pyRJs  cC`sLd}|jj||rH|jd|d||jjd|ndS(NR R*tgroupRT(t inventoryt add_groupt _add_hostst add_child(RR*RZ((sE/usr/lib/python2.7/site-packages/ansible/plugins/inventory/aws_rds.pyt _populates cC`s|jdijdi}x|D]}|dkr=q%q%|jj|||jdg}x0|D](}|j|g|j|i|qjW|jjd|q%WdS(Nt_metathostvarsRTR*(tpopRWR[R\t_populate_host_varsR^(Rt source_dataRaRZR*R,((sE/usr/lib/python2.7/site-packages/ansible/plugins/inventory/aws_rds.pyt_populate_from_sources   &cC`s#|jdr|dS|dSdS(NR?RB(RW(RR,((sE/usr/lib/python2.7/site-packages/ansible/plugins/inventory/aws_rds.pyt _get_hostnamescC`siiid6d6}d}igd6||s*