Metadata-Version: 2.1
Name: rustack-esu
Version: 0.1.22
Summary: Rustack Cloud Platform API Wrapper
Home-page: https://github.com/rustack-cloud-platform/rcp-python
Author: Vladimir K Urushev
Author-email: urushev@yandex.ru
Maintainer: Vladimir K Urushev
Maintainer-email: urushev@yandex.ru
License: MIT
Download-URL: https://github.com/rustack-cloud-platform/rcp-python/tarball/0.1.22
Keywords: cloud,api
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3 :: Only
Requires-Python: >=3.4
Requires-Dist: requests>=2.2.1
Provides-Extra: dev
Requires-Dist: responses; extra == "dev"
Requires-Dist: yapf==0.30.0; extra == "dev"
Requires-Dist: sphinx-rtd-theme==2.0.0; extra == "dev"
Requires-Dist: pylint; extra == "dev"
Requires-Dist: tox>=3.9.0; extra == "dev"
Requires-Dist: pytest>=4.6.2; extra == "dev"
Requires-Dist: pytest-cov>=2.7.1; extra == "dev"
Requires-Dist: tox-pyenv; platform_system == "darwin" and extra == "dev"
Requires-Dist: isort>=5.1.1; python_version >= "3.6" and extra == "dev"

|PyPI Version| |Build Status| |Codecov Badge|

===========
rcp-python
===========

Python-библиотека для работы с BCC


Установка
=========

Минимальная версия Python для установки пакета: 3.5.

.. code-block:: bash

    $ pip install rustack-esu

Примеры использования
=====================


Создание ВЦОД
-------------

.. code:: python

    from esu import Manager, Project, Vdc

    token = '72321013a102d2d3da2eaa79f0a613d40cf642fb'

    manager = Manager(token=token)
    client = manager.get_all_clients()[0]
    project = Project(name='Новый проект', client=client, token=token)
    project.create()

    hypervisor = next(h for h in project.get_available_hypervisors() \
        if h.type == 'kvm')

    vdc = Vdc(name='Новый ВЦОД', hypervisor=hypervisor, project=project,
              token=token)
    vdc.create()

    print(f'ID нового ВЦОД: {vdc.id}')

Напечатает:

.. code:: bash

    ID нового ВЦОД: 62a2df46-5412-4ca2-9d60-f6fcbe5f4b5f


Создание сервера
----------------

.. code:: python

    from esu import Manager, Project, Vdc

    vdc = Vdc.get_object('62a2df46-5412-4ca2-9d60-f6fcbe5f4b5f', token=token)
    vm = vdc.create_vm('Новый сервер', 'KVM Ubuntu 18', 'xj3$mNW11')

    print(f'ID нового сервера: {vm.id}')
    print(f'URL VNC консоли: {vm.get_vnc_url()}')  # login: ubuntu

Напечатает:

.. code:: bash

    ID нового сервера: 6c53c690-bd65-4fa5-888a-c9f8054a8ddc
    URL VNC консоли: https://...


Документация
============

Более подробную информация можно получить в
`документации <https://rcp-python.readthedocs.io/>`_.


.. |PyPI Version| image:: https://badge.fury.io/py/rustack-esu.svg
   :target: https://badge.fury.io/py/rustack-esu
.. |Build Status| image:: https://github.com/pilat/rustack-esu/actions/workflows/tests.yaml/badge.svg?branch=master
   :target: https://github.com/pilat/rustack-esu/actions/workflows/tests.yaml
.. |Codecov Badge| image:: https://codecov.io/gh/pilat/rustack-esu/branch/master/graph/badge.svg?token=KZ4T5XZ8T3 
   :target: https://codecov.io/gh/pilat/rustack-esu


