feat: corrigida a descoberta do Node no executor incremental quand
- corrigida a descoberta do Node no executor incremental quando chamado pelo painel Resumo: - 2 arquivos alterados - 0 novos - 2 modificados - 0 removidos 2 files changed, 25 insertions(+), 7 deletions(-) Arquivos: - .jhonny/analises.db - code/engine/aplicar_montagem_incremental_prototipo.py
This commit is contained in:
Binary file not shown.
@@ -9,9 +9,11 @@ from __future__ import annotations
|
|||||||
|
|
||||||
import argparse
|
import argparse
|
||||||
import json
|
import json
|
||||||
|
import os
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
import sys
|
import sys
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
|
import shutil
|
||||||
|
|
||||||
CAMINHO_DO_CODIGO = Path(__file__).resolve().parent.parent
|
CAMINHO_DO_CODIGO = Path(__file__).resolve().parent.parent
|
||||||
if str(CAMINHO_DO_CODIGO) not in sys.path:
|
if str(CAMINHO_DO_CODIGO) not in sys.path:
|
||||||
@@ -108,13 +110,29 @@ def _nome_da_sequencia(nome_da_origem: str) -> str:
|
|||||||
|
|
||||||
|
|
||||||
def resolver_node() -> str:
|
def resolver_node() -> str:
|
||||||
"""Resolve o Node usado pelo servidor MCP local."""
|
"""Resolve o Node mesmo quando o painel CEP possui um PATH reduzido."""
|
||||||
import shutil
|
caminho_configurado = os.environ.get("PREMIERE_NODE_BIN", "").strip()
|
||||||
|
if caminho_configurado:
|
||||||
caminho = shutil.which("node")
|
if os.path.isfile(caminho_configurado) and os.access(caminho_configurado, os.X_OK):
|
||||||
if caminho:
|
return caminho_configurado
|
||||||
return caminho
|
raise ErroDeMontagemIncremental(
|
||||||
raise ErroDeMontagemIncremental("Node.js não foi encontrado no PATH do painel.")
|
f"Node.js configurado em PREMIERE_NODE_BIN não é executável: {caminho_configurado}"
|
||||||
|
)
|
||||||
|
encontrado_no_path = shutil.which("node.exe" if os.name == "nt" else "node")
|
||||||
|
if encontrado_no_path:
|
||||||
|
return encontrado_no_path
|
||||||
|
caminhos_conhecidos = (
|
||||||
|
("C:/Program Files/nodejs/node.exe", "C:/Program Files/nodejs/nodejs.exe")
|
||||||
|
if os.name == "nt"
|
||||||
|
else ("/opt/homebrew/bin/node", "/usr/local/bin/node", "/usr/bin/node")
|
||||||
|
)
|
||||||
|
for caminho in caminhos_conhecidos:
|
||||||
|
if os.path.isfile(caminho) and os.access(caminho, os.X_OK):
|
||||||
|
return caminho
|
||||||
|
raise ErroDeMontagemIncremental(
|
||||||
|
"Node.js não encontrado. Instale o Node.js ou configure PREMIERE_NODE_BIN "
|
||||||
|
"com o caminho completo do executável."
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
def principal() -> None:
|
def principal() -> None:
|
||||||
|
|||||||
Reference in New Issue
Block a user