File manager - Edit - /opt/saltstack/salt/lib/python3.10/site-packages/libcloud/compute/__pycache__/deployment.cpython-310.pyc
Back
o ;j�) � @ s� d Z ddlZddlZddlZddlmZmZmZmZm Z ddl mZ ddlm Z ddlmZ G dd� d�ZG d d � d e�ZG dd� de�ZG d d� de�ZG dd� de�ZG dd� de�ZdS )z; Provides generic deployment steps for machines post boot. � N)�IO�List�Union�Optional�cast)� basestring)� BaseSSHClient)�Nodec @ s e Zd ZdZdd� Zdd� ZdS )� Deploymentz* Base class for deployment tasks. c C s t d��)a Runs this deployment task on node using the client provided. :type node: :class:`Node` :keyword node: Node to operate one :type client: :class:`BaseSSHClient` :keyword client: Connected SSH client to use. :return: :class:`Node` z'run not implemented for this deployment)�NotImplementedError��self�node�client� r �O/opt/saltstack/salt/lib/python3.10/site-packages/libcloud/compute/deployment.py�run# s zDeployment.runc C s6 t |t�st|d�std| ��t|d�r|�� }|S )N�readz2%s argument must be a string or a file-like object)� isinstancer �hasattr� TypeErrorr )r � argument_name�argument_valuer r r �_get_string_value2 s � zDeployment._get_string_valueN)�__name__� __module__�__qualname__�__doc__r r r r r r r s r c @ �0 e Zd ZdZdd� Zdd� Zdd� Zdd � Zd S )�SSHKeyDeploymentz2 Installs a public SSH Key onto a server. c C s | j d|d�| _dS )z� :type key: ``str`` or :class:`File` object :keyword key: Contents of the public key write or a file object which can be read. �key�r r N)r r �r r r r r �__init__C s zSSHKeyDeployment.__init__c C s |j d| jdd� |S )zj Installs SSH key into ``.ssh/authorized_keys`` See also :class:`Deployment.run` z.ssh/authorized_keys�a)�contents�mode)�putr r r r r r L s zSSHKeyDeployment.runc C � | � � S �N��__repr__�r r r r �__str__V � zSSHKeyDeployment.__str__c C s | j d d� }d| S )N�d z<SSHKeyDeployment key=%s...>)r r"