From 9c5438da65bba198bba2a2a127f3f6448dcb56c5 Mon Sep 17 00:00:00 2001
From: Jacek Kowalski <Jacek@jacekk.info>
Date: Sun, 03 May 2026 14:12:59 +0000
Subject: [PATCH] NetworkDriver: fix return type annotation in create_interface

---
 README.md |   59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 55 insertions(+), 4 deletions(-)

diff --git a/README.md b/README.md
index 46ee19d..aa1a02a 100644
--- a/README.md
+++ b/README.md
@@ -6,9 +6,12 @@
 
 It should be a drop-in replacement for macvlan module.
 
+![Build status](https://github.com/jacekkow/docker-plugin-pyveth/workflows/Release/badge.svg)
+
 ## Installation
 
 Plugin is packaged as [Docker Engine-managed plugin](https://docs.docker.com/engine/extend/).
+Check out [plugin page on Docker Hub](https://hub.docker.com/p/jacekkow/pyveth).
 
 To install it simply run:
 
@@ -28,13 +31,63 @@
 One will be pushed inside the container and another will remain on host
 (without any IP assigned).
 
-Plugin accepts optional `parent` parameter, which is be a name of bridge
-interface that the second interface should be added to:
+## Options
+
+To use options, add `--opt option=value` as an argument of `docker network create`:
 
 ```bash
 docker network create --driver jacekkow/pyveth:latest --opt parent=br0 new-network
 ```
 
+Available options:
+
+`parent=brname`
+
+Automatically attach host interface to the bridge interface `brname`.
+
+`nogw=1`
+
+Disable assignment of gateway IP.
+
+`nogw4=1`
+
+Disable assignment of IPv4 gateway IP.
+
+`nogw6=1`
+
+Disable assignment of IPv6 gateway IP.
+
+`gw4=IP`
+
+`gw6=IP`
+
+Forces assignment of a specified gateway (only if one is not provided by the IPAM module)
+when creating the interface. Useful for [pyipam](https://github.com/jacekkow/docker-plugin-pyipam)
+with `ptp=1` option and `nogw=1`/`nogw4=1`/`nogw6=1` here.
+
+Using these would add routes like:
+```
+default via IP dev eth0
+IP dev eth0 scope link
+```
+
+## Container creation options
+
+To use these options add `--network name=network_name,driver-opt=option=value,driver-opt=option=value`
+to the `docker run` invocation:
+
+```bash
+docker run -i -t --rm --network name=test,ip=192.168.1.1,driver-opt=gw4=192.168.0.1,driver-opt=gw6=fe80:: alpine
+```
+
+Available options:
+
+`gw4=IP`
+
+`gw6=IP`
+
+Overrides network-level gw4/gw6 options.
+
 ## Manual packaging
 
 In order to test this module in development environment, you can build it
@@ -42,5 +95,3 @@
 
 You can also use `package.sh` helper script which will perform
 all the steps (including installation) automatically.
-
-

--
Gitblit v1.10.0