Metadata-Version: 1.2
Name: kuryr-lib
Version: 2.8.1.dev2
Summary: Kuryr shared config and utilities
Home-page: https://docs.openstack.org/kuryr/latest/
Author: OpenStack
Author-email: openstack-discuss@lists.openstack.org
License: UNKNOWN
Description: ========================
        Team and repository tags
        ========================
        
        .. image:: https://governance.openstack.org/badges/kuryr.svg
            :target: https://governance.openstack.org/reference/tags/index.html
        
        .. Change things from this point on
        
        ===============================
        kuryr
        ===============================
        
        .. image:: https://raw.githubusercontent.com/openstack/kuryr/master/doc/images/kuryr_logo.png
            :alt: Kuryr mascot
            :align: center
        
        
        Docker for OpenStack Neutron
        
        Kuryr is a Docker network plugin that uses Neutron to provide networking
        services to Docker containers. It provides containerised images for the
        common Neutron plugins.
        
        
        * Free software: Apache license
        * Documentation: https://docs.openstack.org/kuryr/latest/
        * Source: https://opendev.org/openstack/kuryr
        * Bugs: https://bugs.launchpad.net/kuryr
        
        Features
        --------
        
        * TODO
        
        
        Getting Code
        ------------
        
        ::
        
            $ git clone https://opendev.org/openstack/kuryr.git
            $ cd kuryr
        
        Prerequisites
        -------------
        
        ::
        
            $ sudo pip install -r requirements.txt
        
        
        Installing Kuryr's libnetwork driver
        ------------------------------------
        
        For kuryr-libnetwork driver installation refer:
        
        https://docs.openstack.org/kuryr-libnetwork/latest/readme.html
        
        
        Configuring Kuryr
        -----------------
        
        Generate sample config, `etc/kuryr.conf.sample`, running the following
        
        ::
        
            $ tox -e genconfig
        
        
        Rename and copy config file at required path
        
        ::
        
            $ cp etc/kuryr.conf.sample /etc/kuryr/kuryr.conf
        
        
        Edit keystone section in `/etc/kuryr/kuryr.conf`, replace ADMIN_PASSWORD:
        
        ::
        
            auth_type           = v3password
            auth_url            = http://127.0.0.1:5000
            region_name         = regionOne
            user_doamin_name    = Default
            username            = admin
            project_domain_name = Default
            project_name        = service
            password            = ADMIN_PASSWORD
        
        
        In the same file uncomment the `bindir` parameter with the path for the Kuryr
        vif binding executables:
        
        ::
        
            bindir = /usr/local/libexec/kuryr
        
        By default, Kuryr will use veth pairs for performing the binding. However, the
        Kuryr library ships with two other drivers that you can configure in the
        **binding** section::
        
            [binding]
            #driver = kuryr.lib.binding.drivers.ipvlan
            #driver = kuryr.lib.binding.drivers.macvlan
        
        Drivers may make use of other **binding** options. Both Kuryr library drivers in
        the previous snippet can be further configured setting the interface that will
        act as link interface for the virtual devices::
        
            link_iface = enp4s0
        
        
        Running Kuryr
        -------------
        
        Currently, Kuryr utilizes a bash script to start the service. Make sure that
        you have installed `tox` before the execution of the below command.
        
        ::
        
            $ sudo ./scripts/run_kuryr.sh
        
        After the booting, please restart your Docker service, e.g.,
        
        ::
        
            $ sudo service docker restart
        
        The bash script creates the following file if it is missing.
        
        * ``/usr/lib/docker/plugins/kuryr/kuryr.json``: Json spec file for libnetwork.
        
        Note the root privilege is required for creating and deleting the veth pairs
        with `pyroute2 <http://docs.pyroute2.org/>`_ to run.
        
        Testing Kuryr
        -------------
        
        For a quick check that Kuryr is working create a network:
        
        ::
        
            $ docker network create --driver kuryr test_net
            785f8c1b5ae480c4ebcb54c1c48ab875754e4680d915b270279e4f6a1aa52283
            $ docker network ls
            NETWORK ID          NAME                DRIVER
            785f8c1b5ae4        test_net            kuryr
        
        To test it with tox:
        
        ::
        
            $ tox
        
        You can also run specific test cases using the ``-e`` flag, e.g., to only run
        the *fullstack* test case.
        
        ::
        
            $ tox -e fullstack
        
        Generating Documentation
        ------------------------
        
        
        We use `Sphinx <https://pypi.python.org/pypi/Sphinx>`_ to maintain the
        documentation. You can install Sphinx using pip.
        
        ::
        
            $ pip install -U Sphinx
        
        In addition to Sphinx you will also need the following requirements
        (not covered by `requirements.txt`)::
        
            $ pip install openstackdocstheme reno 'reno[sphinx]'
        
        The source code of the documentation are under *doc*, you can generate the
        html files using the following command. If the generation succeeds,a
        *build/html* dir will be created under *doc*.
        
        ::
        
            $ cd doc
            $ make html
        
        Now you can serve the documentation at http://localhost:8080 as a simple
        website.
        
        ::
        
            $ cd build/html
            $ python -m SimpleHTTPServer 8080
        
        
Platform: UNKNOWN
Classifier: Environment :: OpenStack
Classifier: Intended Audience :: Information Technology
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Requires-Python: >=3.6
