forked from cfengine/cfengine-cli
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathgenerate_vcf_download.py
More file actions
33 lines (25 loc) · 1.14 KB
/
generate_vcf_download.py
File metadata and controls
33 lines (25 loc) · 1.14 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import os
from cfbs.utils import write_json
from cfengine_cli.masterfiles.analyze import (
finalize_vcf,
initialize_vcf,
versions_checksums_files,
)
def generate_vcf_download(dir_path, downloaded_versions):
"""`dir_path`: the path of the directory containing masterfiles versions
subdirectories in the form `dir_path/x.y.z/tarball/`
The `tarball` folder should contain the `masterfiles` folder (older
tarballs also have a `modules` folder alongside the `masterfiles` folder).
"""
versions_dict, checksums_dict, files_dict = initialize_vcf()
for version in downloaded_versions:
files_dir_path = os.path.join(dir_path, version, "tarball")
versions_dict, checksums_dict, files_dict = versions_checksums_files(
files_dir_path, version, versions_dict, checksums_dict, files_dict
)
versions_dict, checksums_dict, files_dict = finalize_vcf(
versions_dict, checksums_dict, files_dict
)
write_json("./masterfiles/versions.json", versions_dict)
write_json("./masterfiles/checksums.json", checksums_dict)
write_json("./masterfiles/files.json", files_dict)