Guilherme Silberfarb Costa commited on
Commit
950e36a
·
1 Parent(s): 55eda43

Aceita zip portátil com arquivos na raiz

Browse files
build/windows/package_portable_release.py CHANGED
@@ -117,6 +117,23 @@ def create_zip(source_dir: Path, output_zip: Path) -> None:
117
  archive.write(file_path, file_path.relative_to(source_dir))
118
 
119
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
120
  def main() -> None:
121
  args = parse_args()
122
 
@@ -136,9 +153,7 @@ def main() -> None:
136
  inner_zip = find_inner_portable_zip(artifact_dir)
137
  extract_zip(inner_zip, portable_dir)
138
 
139
- source_app_dir = portable_dir / "MesaFrame"
140
- if not source_app_dir.exists():
141
- raise FileNotFoundError(f"Pasta MesaFrame nao encontrada dentro de {inner_zip}")
142
 
143
  final_app_dir = stage_dir / "MesaFrame"
144
  final_app_dir.mkdir(parents=True, exist_ok=True)
 
117
  archive.write(file_path, file_path.relative_to(source_dir))
118
 
119
 
120
+ def resolve_portable_app_dir(extracted_portable_dir: Path) -> Path:
121
+ direct_exe = extracted_portable_dir / "MesaFrame.exe"
122
+ direct_internal = extracted_portable_dir / "_internal"
123
+ if direct_exe.exists() and direct_internal.exists():
124
+ return extracted_portable_dir
125
+
126
+ nested_dir = extracted_portable_dir / "MesaFrame"
127
+ nested_exe = nested_dir / "MesaFrame.exe"
128
+ nested_internal = nested_dir / "_internal"
129
+ if nested_exe.exists() and nested_internal.exists():
130
+ return nested_dir
131
+
132
+ raise FileNotFoundError(
133
+ f"Nao encontrei a estrutura portatil esperada dentro de {extracted_portable_dir}"
134
+ )
135
+
136
+
137
  def main() -> None:
138
  args = parse_args()
139
 
 
153
  inner_zip = find_inner_portable_zip(artifact_dir)
154
  extract_zip(inner_zip, portable_dir)
155
 
156
+ source_app_dir = resolve_portable_app_dir(portable_dir)
 
 
157
 
158
  final_app_dir = stage_dir / "MesaFrame"
159
  final_app_dir.mkdir(parents=True, exist_ok=True)