%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/lib/python2.7/site-packages/salt/modules/
Upload File :
Create Path :
Current File : //usr/lib/python2.7/site-packages/salt/modules/boto_sqs.pyo

�
���^c@@sqdZddlmZmZmZddlZddlZddlZddl	m
Z
ddlmZ
eje�Zidd6Zy;ddlZddlZejd�jej�eZWnek
r�eZnXd	�Zd
�Zddddd�Zdddddd�Zddddd
�Zdddddd�Z ddddd�Z!ddddd�Z"dS(u�
Connection module for Amazon SQS

.. versionadded:: 2014.7.0

:configuration: This module accepts explicit sqs credentials but can also utilize
    IAM roles assigned to the instance through Instance Profiles. Dynamic
    credentials are then automatically obtained from AWS API and no further
    configuration is necessary. More information available at:

    .. code-block:: text

        http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html

    If IAM roles are not used you need to specify them either in a pillar or
    in the minion's config file:

    .. code-block:: yaml

        sqs.keyid: GKTADJGHEIQSXMKKRBJ08H
        sqs.key: askdjghsdfjkghWupUjasdflkdfklgjsdfjajkghs

    A region may also be specified in the configuration:

    .. code-block:: yaml

        sqs.region: us-east-1

    If a region is not specified, the default is us-east-1.

    It's also possible to specify key, keyid and region via a profile, either
    as a passed in dict, or as a string to pull from pillars or minion config:

    .. code-block:: yaml

        myprofile:
            keyid: GKTADJGHEIQSXMKKRBJ08H
            key: askdjghsdfjkghWupUjasdflkdfklgjsdfjajkghs
            region: us-east-1

:depends: boto3
i(tabsolute_importtprint_functiontunicode_literalsN(tsix(turlparseulistulist_uboto3cC@s6tjjj�}|tkr2tdtd�n|S(u-
    Only load if boto3 libraries exist.
    uboto3.assign_funcsusqs(tsalttutilstversionstcheck_boto_reqstTruet	__utils__t__name__(t
has_boto_reqs((s9/usr/lib/python2.7/site-packages/salt/modules/boto_sqs.pyt__virtual__Nsc@sVt|tj�r*tjjj|�}nd��t�fd�tj|�D��S(uC
    Pre-process incoming queue attributes before setting them
    cS@s&t|t�r"tjjj|�S|S(N(t
isinstancetdictRRtjsontdumps(tval((s9/usr/lib/python2.7/site-packages/salt/modules/boto_sqs.pytstringified_sc3@s'|]\}}|�|�fVqdS(N((t.0tattrR(R(s9/usr/lib/python2.7/site-packages/salt/modules/boto_sqs.pys	<genexpr>gs(	RRtstring_typesRRRtloadsRt	iteritems(t
attributes((Rs9/usr/lib/python2.7/site-packages/salt/modules/boto_sqs.pyt_preprocess_attributesXs
	c	C@s�td|d|d|d|�}y|jd|�Wn`tjjk
r�}d}|jjdi�jd�|kr�itd	6Sitd
|�d6SXit	d	6S(u�
    Check to see if a queue exists.

    CLI Example:

    .. code-block:: bash

        salt myminion boto_sqs.exists myqueue region=us-east-1
    tregiontkeytkeyidtprofilet	QueueNameu'AWS.SimpleQueueService.NonExistentQueueuErroruCodeuresultuboto3.get_erroruerror(
t	_get_connt
get_queue_urltbotocoret
exceptionstClientErrortresponsetgettFalseR
R	(tnameRRRRtconntetmissing_code((s9/usr/lib/python2.7/site-packages/salt/modules/boto_sqs.pytexistsks
!$c	C@s�td|d|d|d|�}|d
kr6i}nt|�}y|jd|d|�Wn+tjjk
r�}itd|�d6SXitd	6S(u�
    Create an SQS queue.

    CLI Example:

    .. code-block:: bash

        salt myminion boto_sqs.create myqueue region=us-east-1
    RRRRRt
Attributesuboto3.get_erroruerroruresultN(	R tNoneRtcreate_queueR"R#R$R
R	(R(RRRRRR)R*((s9/usr/lib/python2.7/site-packages/salt/modules/boto_sqs.pytcreate�s!	c	C@s�td|d|d|d|�}y*|jd|�d}|jd|�Wn+tjjk
rx}itd|�d	6SXitd
6S(u�
    Delete an SQS queue.

    CLI Example:

    .. code-block:: bash

        salt myminion boto_sqs.delete myqueue region=us-east-1
    RRRRRuQueueUrltQueueUrluboto3.get_erroruerroruresult(R R!tdelete_queueR"R#R$R
R	(R(RRRRR)turlR*((s9/usr/lib/python2.7/site-packages/salt/modules/boto_sqs.pytdelete�s
!uc	C@s�td|d|d|d|�}d�}yL|jd|�}|jdg�}ig|D]}	||	�^q[d6SWn+tjjk
r�}
itd	|
�d
6SXdS(u�
    Return a list of the names of all visible queues.

    .. versionadded:: 2016.11.0

    CLI Example:

    .. code-block:: bash

        salt myminion boto_sqs.list region=us-east-1
    RRRRcS@st|�jjd�dS(Nu/i(t	_urlparsetpathtsplit(t	queue_url((s9/usr/lib/python2.7/site-packages/salt/modules/boto_sqs.pytextract_name�stQueueNamePrefixu	QueueUrlsuresultuboto3.get_erroruerrorN(R tlist_queuesR&R"R#R$R
(tprefixRRRRR)R9trturlsR3R*((s9/usr/lib/python2.7/site-packages/salt/modules/boto_sqs.pytlist_�s!	(c		C@s�td|d|d|d|�}yD|jd|�d}|jd|dd	g�}i|d
d6SWn+tjjk
r�}itd|�d
6SXdS(u�
    Return attributes currently set on an SQS queue.

    CLI Example:

    .. code-block:: bash

        salt myminion boto_sqs.get_attributes myqueue
    RRRRRuQueueUrlR1tAttributeNamesuAllu
Attributesuresultuboto3.get_erroruerrorN(R R!tget_queue_attributesR"R#R$R
(	R(RRRRR)R3R=R*((s9/usr/lib/python2.7/site-packages/salt/modules/boto_sqs.pytget_attributes�s
!c		C@s�td|d|d|d|�}t|�}y0|jd|�d}|jd|d|�Wn+tjjk
r�}itd	|�d
6SXitd6S(u�
    Set attributes on an SQS queue.

    CLI Example:

    .. code-block:: bash

        salt myminion boto_sqs.set_attributes myqueue '{ReceiveMessageWaitTimeSeconds: 20}' region=us-east-1
    RRRRRuQueueUrlR1R-uboto3.get_erroruerroruresult(	R RR!tset_queue_attributesR"R#R$R
R	(	R(RRRRRR)R3R*((s9/usr/lib/python2.7/site-packages/salt/modules/boto_sqs.pytset_attributes�s!(#t__doc__t
__future__RRRtloggingtsalt.utils.jsonRtsalt.utils.versionstsalt.extRtsalt.ext.six.moves.urllib.parseRR5t	getLoggerRtlogt__func_alias__tboto3R"tsetLeveltCRITICALR	t	HAS_BOTO3tImportErrorR'R
RR.R,R0R4R?RBRD(((s9/usr/lib/python2.7/site-packages/salt/modules/boto_sqs.pyt<module>+s>



	
	

Zerion Mini Shell 1.0