- Added the lint to examples - README format moved from Restructuredtext to Markdown - Removed the [INFO] and [ERROR] from output, to avoid confundint with logging structure Signed-off-by: Kairo de Araujo <kdearaujo@vmware.com> |
||
|---|---|---|
| .. | ||
| 1.root.json | ||
| client_example.py | ||
| README.md | ||
Python Client Example
Introduction
Python Client Example, using python-tuf.
For information about installing python-tuf, please refer to the
Installation documentation.
Preparing
To have the example working in your machine, clone the python-tuf in your
system.
$ git clone git@github.com:theupdateframework/python-tuf.git
Repository
This example demonstrates how to use the python-tuf to build a client
application.
The repository will use static files.
The static files are available in the python-tuf source code repository in
tests/repository_data/repository.
Run the repository using the Python3 built-in HTTP module, and keep this session running.
$ python3 -m http.server -d tests/repository_data/repository
Serving HTTP on :: port 8000 (http://[::]:8000/) ...
Client Example
The Client Example source code is available entirely in this source code repository.
How to use the Client Example:
-
Initialize the Client
$ ./client_example.py --initThis action is to create the client infrastructure properly.
This infrastructure consists in:
- Metadata repository
- Download folder for targets
- Bootstrap 1.root.json
-
Download the
file1.txt$ ./client_example.py download file1.txt Top-level metadata is refreshed. Target info gotten. File downloaded available in ./downloads/file2.txt. -
Download a not available
file_na.txt$ ./client_example.py download file_na.txt Top-level metadata is refreshed. Target info gotten. Target file not found. -
Download again
file1.txt$ ./client_example.py download file1.txt Top-level metadata is refreshed. Target info gotten. File is already available in ./downloads/file1.txt.