TFTP Driver
jumpstarter-driver-tftp provides functionality for a read-only TFTP server
that can be used to serve files.
Installation
:substitutions:
$ pip3 install --extra-index-url {{index_url}} jumpstarter-driver-tftp
Configuration
Example configuration:
export:
tftp:
type: jumpstarter_driver_tftp.driver.Tftp
config:
root_dir: /var/lib/tftpboot # Directory to serve files from
host: 192.168.1.100 # Host IP to bind to (optional)
port: 69 # Port to listen on (optional)
remove_created_on_close: true # Clean up temporary boot files (default)
Config parameters
| Parameter | Description | Type | Required | Default |
|---|---|---|---|---|
| root_dir | Root directory for the TFTP server | str | no | "/var/lib/tftpboot" |
| host | IP address to bind the server to | str | no | auto-detect |
| port | Port number to listen on | int | no | 69 |
| remove_created_on_close | Automatically remove created files/directories when driver closes | bool | no | true |
File Management
The TFTP server driver automatically tracks files and directories created during the session. By default, remove_created_on_close is set to true to clean up temporary boot files automatically. Set to false if you want to preserve boot files and firmware images that are reused across sessions.
API Reference
.. autoclass:: jumpstarter_driver_tftp.client.TftpServerClient()
:members:
:show-inheritance:
Exception Classes
.. autoclass:: jumpstarter_driver_tftp.driver.TftpError
:members:
:show-inheritance:
.. autoclass:: jumpstarter_driver_tftp.driver.ServerNotRunning
:members:
:show-inheritance:
Examples
>>> import tempfile
>>> import os
>>> from jumpstarter_driver_tftp.driver import Tftp
>>> from jumpstarter.common.utils import serve
>>> with tempfile.TemporaryDirectory() as tmp_dir:
... # Create a test file
... test_file = os.path.join(tmp_dir, "test.txt")
... with open(test_file, "w") as f:
... _ = f.write("hello")
...
... # Start TFTP server
... with serve(Tftp(root_dir=tmp_dir, host="127.0.0.1", port=6969)) as tftp:
... tftp.start()
...
... # List files
... files = list(tftp.storage.list("/"))
... assert "test.txt" in files
...
... tftp.stop()
Release files for jumpstarter-driver-tftp 0.9.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| jumpstarter_driver_tftp-0.9.0.tar.gz | 13.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| jumpstarter_driver_tftp-0.9.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 27.2 kB
Release files / jumpstarter_driver_tftp-0.9.0.tar.gz
| Download URL | jumpstarter_driver_tftp-0.9.0.tar.gz |
|---|---|
| Size | 13.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
01dde56d953563f3ed886d37046fd3f912f9c19a5d9c7f39ed3f443db6f03357
|
|
BLAKE2b-256 checksum How to use checksums |
35c2b4a724752fb3758f6522640ca82b29bbbc7120b2519b9aa9a3dacacd0d84
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.8.22
|
Release files / jumpstarter_driver_tftp-0.9.0-py3-none-any.whl
| Download URL | jumpstarter_driver_tftp-0.9.0-py3-none-any.whl |
|---|---|
| Size | 14.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a7a928be30a61fd3497d6ac0a81c01e413bcfd2f8d1340c05c4ece3d23697eaa
|
|
BLAKE2b-256 checksum How to use checksums |
cbf5b24fc37321d860994fe0da4fd0e36ddf3c01835f341934da3c7ed81b44a7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.8.22
|