Metadata-Version: 2.4
Name: jumpstarter-driver-network
Version: 0.8.2.dev113+gb19d6327f
Project-URL: Homepage, https://jumpstarter.dev
Project-URL: source_archive, https://github.com/jumpstarter-dev/repo/archive/b19d6327fda749bdd72caf050a458788ab29375f.zip
Author-email: Miguel Angel Ajo Pelayo <majopela@redhat.com>, Nick Cao <ncao@redhat.com>
License-Expression: Apache-2.0
Requires-Python: >=3.11
Requires-Dist: click>=8.1.8
Requires-Dist: fabric>=3.2.2
Requires-Dist: jumpstarter==0.8.2.dev113+gb19d6327f
Requires-Dist: pexpect>=4.9.0
Requires-Dist: websockets>=15.0.1
Requires-Dist: wsproto>=1.2.0
Description-Content-Type: text/markdown

# Network drivers

`jumpstarter-driver-network` provides functionality for interacting with network
servers and connections, redirecting DUT network services to the client handling
the lease.

## Installation

```{code-block} console
:substitutions:
$ pip3 install --extra-index-url {{index_url}} jumpstarter-driver-network
```

## Configuration

Example configuration:

```yaml
export:
  network:
    type: jumpstarter_driver_network.driver.TcpNetwork
    config:
      host: 192.168.1.2
      port: 5201
      enable_address: true
```

### Config parameters

| Parameter     | Description                                         | Type  | Required | Default            |
| ------------- | --------------------------------------------------- | ----- | -------- | ------------------ |
| host          | Hostname or IP address of the DUT                   | str   | yes      |                    |
| port          | Port number of the DUT service to connect to        | int   | yes      |                    |
| enable_address | Whether to enable address mode (reporting the address of the client) | bool  | no | true   |

## API Reference

Network driver classes:

```{eval-rst}
.. autoclass:: jumpstarter_driver_network.driver.TcpNetwork()
```

```{eval-rst}
.. autoclass:: jumpstarter_driver_network.driver.UdpNetwork()
```

```{eval-rst}
.. autoclass:: jumpstarter_driver_network.driver.UnixNetwork()
```

```{eval-rst}
.. autoclass:: jumpstarter_driver_network.driver.EchoNetwork()
```

Client API:

```{eval-rst}
.. autoclass:: jumpstarter_driver_network.client.NetworkClient()
    :members:
```
