-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathinit.py
73 lines (56 loc) · 2.09 KB
/
init.py
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
import os
from box_sdk_gen import (
DocGenTemplateBaseV2025R0,
FileReferenceV2025R0,
)
from tqdm import tqdm
from api import create_folder, upload_file
from client import AppConfig
def main():
ap = AppConfig()
client = ap.get_box_client()
# Create box workshop folder structure
workshop_parent_folder = client.folders.get_folder_by_id(
ap.workshop_parent_folder_id
)
print(f"Using parent folder: {workshop_parent_folder.name}")
base_folder = create_folder(
client, "Workshop (Doc Gen + AI)", workshop_parent_folder
)
print(f"Created folder: {base_folder.name}")
scripts_folder = create_folder(client, "Scripts", base_folder)
print(f"Created folder: {scripts_folder.name}")
template_folder = create_folder(client, "Templates", base_folder)
print(f"Created folder: {template_folder.name}")
merge_folder = create_folder(client, "Merge Docs", base_folder)
print(f"Created folder: {merge_folder.name}")
# upload template folder to box
local_template = "sample_files/template/MovieScriptSummaryTemplate.docx"
box_template = upload_file(
client, local_template, template_folder, ignore_if_exists=False
)
print(f"Uploaded template: {box_template.name}")
# Set uploaded file as template
file_reference = FileReferenceV2025R0(box_template.id)
box_doc_gen_template: DocGenTemplateBaseV2025R0 = (
client.docgen_template.create_docgen_template_v2025_r0(file_reference)
)
# update .env file with the new folder ids
ap.set_workshop_folder_ids(
base_folder.id,
scripts_folder.id,
template_folder.id,
box_doc_gen_template.file.id,
merge_folder.id,
)
ap.write_env_file()
ap.reload_dotenv()
# upload scripts folder to box
local_files = [
"sample_files/scripts/" + f for f in os.listdir("sample_files/scripts")
]
for local_file in tqdm(local_files, desc="Uploading movie scripts"):
upload_file(client, local_file, scripts_folder)
# print(f"Uploaded file: {box_file.name}")
if __name__ == "__main__":
main()