mirror of
https://github.com/theupdateframework/python-tuf
synced 2026-05-24 10:08:28 +00:00
Re-generate metadata to adopt spec version format change, using
`generate.py` plus some working around (see script below):
```
# QUICKFIX: Patch add_target to pass file paths relative to targets dir
git apply - <<EOF
diff --git a/tests/repository_data/generate.py b/tests/repository_data/generate.py
index 6c263575..699ed00f 100755
--- a/tests/repository_data/generate.py
+++ b/tests/repository_data/generate.py
@@ -119,12 +119,11 @@ if not options.dry_run:
# about the target (i.e., file permissions in octal format.)
octal_file_permissions = oct(os.stat(target1_filepath).st_mode)[4:]
file_permissions = {'file_permissions': octal_file_permissions}
-repository.targets.add_target(target1_filepath, file_permissions)
-repository.targets.add_target(target2_filepath)
+repository.targets.add_target('file1.txt', file_permissions)
+repository.targets.add_target('file2.txt')
-repository.targets.delegate('role1', [delegation_public],
- [os.path.basename(target3_filepath)])
-repository.targets('role1').add_target(target3_filepath)
+repository.targets.delegate('role1', [delegation_public], ['file3.txt'])
+repository.targets('role1').add_target('file3.txt')
repository.targets('role1').load_signing_key(delegation_private)
repository.targets('role1').delegate('role2', [delegation_public], [])
EOF
# Remove repository and client data
cd repository_data && rm -rf repository client
# Generate metadata
python generate.py
# Duplicate metadata files
cp -r client/test_repository1 client/test_repository2
# Recover non-signed file
git checkout client/map.json
```
Signed-off-by: Lukas Puehringer <lukas.puehringer@nyu.edu>
|
||
|---|---|---|
| .. | ||
| test_repository1/metadata | ||
| test_repository2/metadata | ||
| map.json | ||