%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/azurearm_compute.pyo

�
���^c@@s3dZddlmZddlZeZy6ddlZddlm	Z	ddl
mZeZWne
k
rqnXdZeje�Zd�Zd�Zd	�Zd
�Zd�Zd�Zd
ed�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z!d�Z"d�Z#dS(su
Azure (ARM) Compute Execution Module

.. versionadded:: 2019.2.0

:maintainer: <devops@decisionlab.io>
:maturity: new
:depends:
    * `azure <https://pypi.python.org/pypi/azure>`_ >= 2.0.0
    * `azure-common <https://pypi.python.org/pypi/azure-common>`_ >= 1.1.8
    * `azure-mgmt <https://pypi.python.org/pypi/azure-mgmt>`_ >= 1.0.0
    * `azure-mgmt-compute <https://pypi.python.org/pypi/azure-mgmt-compute>`_ >= 1.0.0
    * `azure-mgmt-network <https://pypi.python.org/pypi/azure-mgmt-network>`_ >= 1.7.1
    * `azure-mgmt-resource <https://pypi.python.org/pypi/azure-mgmt-resource>`_ >= 1.1.0
    * `azure-mgmt-storage <https://pypi.python.org/pypi/azure-mgmt-storage>`_ >= 1.0.0
    * `azure-mgmt-web <https://pypi.python.org/pypi/azure-mgmt-web>`_ >= 0.32.0
    * `azure-storage <https://pypi.python.org/pypi/azure-storage>`_ >= 0.34.3
    * `msrestazure <https://pypi.python.org/pypi/msrestazure>`_ >= 0.4.21
:platform: linux

:configuration: This module requires Azure Resource Manager credentials to be passed as keyword arguments
    to every function in order to work properly.

    Required provider parameters:

    if using username and password:
      * ``subscription_id``
      * ``username``
      * ``password``

    if using a service principal:
      * ``subscription_id``
      * ``tenant``
      * ``client_id``
      * ``secret``

    Optional provider parameters:

**cloud_environment**: Used to point the cloud driver to different API endpoints, such as Azure GovCloud.
    Possible values:
      * ``AZURE_PUBLIC_CLOUD`` (default)
      * ``AZURE_CHINA_CLOUD``
      * ``AZURE_US_GOV_CLOUD``
      * ``AZURE_GERMAN_CLOUD``

i(tabsolute_importN(tSerializationError(t
CloudErrortazurearm_computecC@ststdfStS(Ns�The following dependencies are required to use the AzureARM modules: Microsoft Azure SDK for Python >= 2.0rc6, MS REST Azure (msrestazure) >= 0.4(tHAS_LIBStFalset__virtualname__(((sA/usr/lib/python2.7/site-packages/salt/modules/azurearm_compute.pyt__virtual__DscK@s�d|krMtd||�}d|kr<tjd�tS|d|d<ntdd|�}t|jd�t�r�g}x`|jd�D]O}tdd	|d
||�}d|kr�|jit	|d�d6�q�q�W||d<nytddd
|�}Wn0t
k
r:}	idjt	|	��d6}
|
SXy1|jj
d|d|d|�}|j�}
Wnntk
r�}	tddt	|	�|�it	|	�d6}
n/tk
r�}	idjt	|	��d6}
nX|
S(sd
    .. versionadded:: 2019.2.0

    Create or update an availability set.

    :param name: The availability set to create.

    :param resource_group: The resource group name assigned to the
        availability set.

    CLI Example:

    .. code-block:: bash

        salt-call azurearm_compute.availability_set_create_or_update testset testgroup

    tlocations$azurearm_resource.resource_group_getterrors;Unable to determine location from resource group specified.sazurearm.get_clienttcomputetvirtual_machiness$azurearm_compute.virtual_machine_gettnametresource_grouptidsazurearm.create_object_modeltAvailabilitySets*The object model could not be built. ({0})tresource_group_nametavailability_set_namet
parameterssazurearm.log_cloud_errors+The object model could not be parsed. ({0})(t__salt__tlogR	Rt	__utils__t
isinstancetgettlisttappendtstrt	TypeErrortformattavailability_setstcreate_or_updatetas_dictRR(RR
tkwargstrg_propstcompconntvm_listtvm_nametvm_instancetsetmodeltexctresulttav_set((sA/usr/lib/python2.7/site-packages/salt/modules/azurearm_compute.pyt!availability_set_create_or_updatePsH
	%
	 cK@spt}tdd|�}y#|jjd|d|�t}Wn-tk
rk}tddt|�|�nX|S(sP
    .. versionadded:: 2019.2.0

    Delete an availability set.

    :param name: The availability set to delete.

    :param resource_group: The resource group name assigned to the
        availability set.

    CLI Example:

    .. code-block:: bash

        salt-call azurearm_compute.availability_set_delete testset testgroup

    sazurearm.get_clientR
RRsazurearm.log_cloud_error(RRRtdeletetTrueRR(RR
R R(R"R'((sA/usr/lib/python2.7/site-packages/salt/modules/azurearm_compute.pytavailability_set_delete�s
cK@s�tdd|�}y+|jjd|d|�}|j�}Wn@tk
r�}tddt|�|�it|�d6}nX|S(sn
    .. versionadded:: 2019.2.0

    Get a dictionary representing an availability set's properties.

    :param name: The availability set to get.

    :param resource_group: The resource group name assigned to the
        availability set.

    CLI Example:

    .. code-block:: bash

        salt-call azurearm_compute.availability_set_get testset testgroup

    sazurearm.get_clientR
RRsazurearm.log_cloud_errorR	(RRRRRR(RR
R R"R)R(R'((sA/usr/lib/python2.7/site-packages/salt/modules/azurearm_compute.pytavailability_set_get�s	cK@s�i}tdd|�}yBtd|jjd|��}x|D]}|||d<qBWWn@tk
r�}tddt|�|�it|�d6}nX|S(s-
    .. versionadded:: 2019.2.0

    List all availability sets within a resource group.

    :param resource_group: The resource group name to list availability
        sets within.

    CLI Example:

    .. code-block:: bash

        salt-call azurearm_compute.availability_sets_list testgroup

    sazurearm.get_clientR
sazurearm.paged_object_to_listRRsazurearm.log_cloud_errorR	(RRRRR(R
R R(R"t
avail_setst	avail_setR'((sA/usr/lib/python2.7/site-packages/salt/modules/azurearm_compute.pytavailability_sets_list�s
cK@s�i}tdd|�}yHtd|jjd|d|��}x|D]}|||d<qHWWn@tk
r�}tddt|�|�it|�d6}nX|S(	s
    .. versionadded:: 2019.2.0

    List all available virtual machine sizes that can be used to
    to create a new virtual machine in an existing availability set.

    :param name: The availability set name to list available
        virtual machine sizes within.

    :param resource_group: The resource group name to list available
        availability set sizes within.

    CLI Example:

    .. code-block:: bash

        salt-call azurearm_compute.availability_sets_list_available_sizes testset testgroup

    sazurearm.get_clientR
sazurearm.paged_object_to_listRRRsazurearm.log_cloud_errorR	(RRtlist_available_sizesRR(RR
R R(R"tsizestsizeR'((sA/usr/lib/python2.7/site-packages/salt/modules/azurearm_compute.pyt&availability_sets_list_available_sizes�s
scapture-c
K@s�ttjjjd�}tdd|�}y\|jjd|d|d|d|d|d	|��}|j�|j	�}	|	j
�}
Wn@tk
r�}td
dt|�|�it|�d6}
nX|
S(s�
    .. versionadded:: 2019.2.0

    Captures the VM by copying virtual hard disks of the VM and outputs
    a template that can be used to create similar VMs.

    :param name: The name of the virtual machine.

    :param destination_name: The destination container name.

    :param resource_group: The resource group name assigned to the
        virtual machine.

    :param prefix: (Default: 'capture-') The captured virtual hard disk's name prefix.

    :param overwrite: (Default: False) Overwrite the destination disk in case of conflict.

    CLI Example:

    .. code-block:: bash

        salt-call azurearm_compute.virtual_machine_capture testvm testcontainer testgroup

    tVirtualMachineCaptureParameterssazurearm.get_clientR
RR$Rt
vhd_prefixtdestination_container_nametoverwrite_vhdssazurearm.log_cloud_errorR	(
tgetattrtazuretmgmtR
tmodelsRRtcapturetwaitR(RRR(Rtdestination_nameR
tprefixt	overwriteR R6R"tvmt	vm_resultR(R'((sA/usr/lib/python2.7/site-packages/salt/modules/azurearm_compute.pytvirtual_machine_captures$
cK@s�|jd�}tdd|�}y1|jjd|d|d|�}|j�}Wn@tk
r�}tddt|�|�it|�d6}nX|S(s�
    .. versionadded:: 2019.2.0

    Retrieves information about the model view or the instance view of a
    virtual machine.

    :param name: The name of the virtual machine.

    :param resource_group: The resource group name assigned to the
        virtual machine.

    CLI Example:

    .. code-block:: bash

        salt-call azurearm_compute.virtual_machine_get testvm testgroup

    texpandsazurearm.get_clientR
RR$sazurearm.log_cloud_errorR	(RRRRRR(RR
R RFR"RCR(R'((sA/usr/lib/python2.7/site-packages/salt/modules/azurearm_compute.pytvirtual_machine_getSs	cK@s�tdd|�}yA|jjd|d|�}|j�|j�}|j�}Wn@tk
r�}tddt|�|�it|�d6}nX|S(s�
    .. versionadded:: 2019.2.0

    Converts virtual machine disks from blob-based to managed disks. Virtual
    machine must be stop-deallocated before invoking this operation.

    :param name: The name of the virtual machine to convert.

    :param resource_group: The resource group name assigned to the
        virtual machine.

    CLI Example:

    .. code-block:: bash

        salt-call azurearm_compute.virtual_machine_convert_to_managed_disks testvm testgroup

    sazurearm.get_clientR
RR$sazurearm.log_cloud_errorR	(RRtconvert_to_managed_disksR?R(RRR(RR
R R"RCRDR(R'((sA/usr/lib/python2.7/site-packages/salt/modules/azurearm_compute.pyt(virtual_machine_convert_to_managed_disksxs	
cK@s�tdd|�}yA|jjd|d|�}|j�|j�}|j�}Wn@tk
r�}tddt|�|�it|�d6}nX|S(s�
    .. versionadded:: 2019.2.0

    Power off a virtual machine and deallocate compute resources.

    :param name: The name of the virtual machine to deallocate.

    :param resource_group: The resource group name assigned to the
        virtual machine.

    CLI Example:

    .. code-block:: bash

        salt-call azurearm_compute.virtual_machine_deallocate testvm testgroup

    sazurearm.get_clientR
RR$sazurearm.log_cloud_errorR	(RRt
deallocateR?R(RRR(RR
R R"RCRDR(R'((sA/usr/lib/python2.7/site-packages/salt/modules/azurearm_compute.pytvirtual_machine_deallocate�s	
cK@spt}tdd|�}y#|jjd|d|�t}Wn-tk
rk}tddt|�|�nX|S(sk
    .. versionadded:: 2019.2.0

    Set the state of a virtual machine to 'generalized'.

    :param name: The name of the virtual machine.

    :param resource_group: The resource group name assigned to the
        virtual machine.

    CLI Example:

    .. code-block:: bash

        salt-call azurearm_compute.virtual_machine_generalize testvm testgroup

    sazurearm.get_clientR
RR$sazurearm.log_cloud_error(RRRt
generalizeR,RR(RR
R R(R"R'((sA/usr/lib/python2.7/site-packages/salt/modules/azurearm_compute.pytvirtual_machine_generalize�s
cK@s�i}tdd|�}yBtd|jjd|��}x|D]}|||d<qBWWn@tk
r�}tddt|�|�it|�d6}nX|S(s*
    .. versionadded:: 2019.2.0

    List all virtual machines within a resource group.

    :param resource_group: The resource group name to list virtual
        machines within.

    CLI Example:

    .. code-block:: bash

        salt-call azurearm_compute.virtual_machines_list testgroup

    sazurearm.get_clientR
sazurearm.paged_object_to_listRRsazurearm.log_cloud_errorR	(RRRRR(R
R R(R"tvmsRCR'((sA/usr/lib/python2.7/site-packages/salt/modules/azurearm_compute.pytvirtual_machines_list�s
cK@s�i}tdd|�}y<td|jj��}x|D]}|||d<q<WWn@tk
r�}tddt|�|�it|�d6}nX|S(s�
    .. versionadded:: 2019.2.0

    List all virtual machines within a subscription.

    CLI Example:

    .. code-block:: bash

        salt-call azurearm_compute.virtual_machines_list_all

    sazurearm.get_clientR
sazurearm.paged_object_to_listRsazurearm.log_cloud_errorR	(RRtlist_allRR(R R(R"RNRCR'((sA/usr/lib/python2.7/site-packages/salt/modules/azurearm_compute.pytvirtual_machines_list_alls

cK@s�i}tdd|�}yHtd|jjd|d|��}x|D]}|||d<qHWWn@tk
r�}tddt|�|�it|�d6}nX|S(	s�
    .. versionadded:: 2019.2.0

    Lists all available virtual machine sizes to which the specified virtual
    machine can be resized.

    :param name: The name of the virtual machine.

    :param resource_group: The resource group name assigned to the
        virtual machine.

    CLI Example:

    .. code-block:: bash

        salt-call azurearm_compute.virtual_machines_list_available_sizes testvm testgroup

    sazurearm.get_clientR
sazurearm.paged_object_to_listRR$Rsazurearm.log_cloud_errorR	(RRR2RR(RR
R R(R"R3R4R'((sA/usr/lib/python2.7/site-packages/salt/modules/azurearm_compute.pyt%virtual_machines_list_available_sizess
cK@s�tdd|�}yA|jjd|d|�}|j�|j�}|j�}Wn@tk
r�}tddt|�|�it|�d6}nX|S(sa
    .. versionadded:: 2019.2.0

    Power off (stop) a virtual machine.

    :param name: The name of the virtual machine to stop.

    :param resource_group: The resource group name assigned to the
        virtual machine.

    CLI Example:

    .. code-block:: bash

        salt-call azurearm_compute.virtual_machine_power_off testvm testgroup

    sazurearm.get_clientR
RR$sazurearm.log_cloud_errorR	(RRt	power_offR?R(RRR(RR
R R"RCRDR(R'((sA/usr/lib/python2.7/site-packages/salt/modules/azurearm_compute.pytvirtual_machine_power_offAs	
cK@s�tdd|�}yA|jjd|d|�}|j�|j�}|j�}Wn@tk
r�}tddt|�|�it|�d6}nX|S(sY
    .. versionadded:: 2019.2.0

    Restart a virtual machine.

    :param name: The name of the virtual machine to restart.

    :param resource_group: The resource group name assigned to the
        virtual machine.

    CLI Example:

    .. code-block:: bash

        salt-call azurearm_compute.virtual_machine_restart testvm testgroup

    sazurearm.get_clientR
RR$sazurearm.log_cloud_errorR	(RRtrestartR?R(RRR(RR
R R"RCRDR(R'((sA/usr/lib/python2.7/site-packages/salt/modules/azurearm_compute.pytvirtual_machine_restartds	
cK@s�tdd|�}yA|jjd|d|�}|j�|j�}|j�}Wn@tk
r�}tddt|�|�it|�d6}nX|S(s^
    .. versionadded:: 2019.2.0

    Power on (start) a virtual machine.

    :param name: The name of the virtual machine to start.

    :param resource_group: The resource group name assigned to the
        virtual machine.

    CLI Example:

    .. code-block:: bash

        salt-call azurearm_compute.virtual_machine_start testvm testgroup

    sazurearm.get_clientR
RR$sazurearm.log_cloud_errorR	(RRtstartR?R(RRR(RR
R R"RCRDR(R'((sA/usr/lib/python2.7/site-packages/salt/modules/azurearm_compute.pytvirtual_machine_start�s	
cK@s�tdd|�}yA|jjd|d|�}|j�|j�}|j�}Wn@tk
r�}tddt|�|�it|�d6}nX|S(s\
    .. versionadded:: 2019.2.0

    Redeploy a virtual machine.

    :param name: The name of the virtual machine to redeploy.

    :param resource_group: The resource group name assigned to the
        virtual machine.

    CLI Example:

    .. code-block:: bash

        salt-call azurearm_compute.virtual_machine_redeploy testvm testgroup

    sazurearm.get_clientR
RR$sazurearm.log_cloud_errorR	(RRtredeployR?R(RRR(RR
R R"RCRDR(R'((sA/usr/lib/python2.7/site-packages/salt/modules/azurearm_compute.pytvirtual_machine_redeploy�s	
($t__doc__t
__future__RtloggingRRtazure.mgmt.compute.modelsR;tmsrest.exceptionsRtmsrestazure.azure_exceptionsRR,tImportErrorRt	getLoggert__name__RRR*R-R.R1R5RERGRIRKRMRORQRRRTRVRXRZ(((sA/usr/lib/python2.7/site-packages/salt/modules/azurearm_compute.pyt<module>/s<

		D	!	!	"	'4	%	$	#	 	!		%	#	#	#

Zerion Mini Shell 1.0