"""Carrega configuração A1 protegida; não executa runtime ou chamada fiscal."""
import os
from pathlib import Path

from acbr import AcbrError, CertificadoA1, Configuracao


def carregar_configuracao() -> Configuracao:
    caminho = os.environ.get("ACBR_PFX_PATH")
    senha = os.environ.get("ACBR_PFX_PASSWORD")
    if not caminho or senha is None:
        raise ValueError("Defina ACBR_PFX_PATH e ACBR_PFX_PASSWORD pelo mecanismo de segredos.")
    certificado = CertificadoA1(pfx=Path(caminho).read_bytes(), senha=senha)
    return Configuracao(cnpj="00000000000000", uf="CE", modelo=55,
                        ambiente=2, certificado=certificado)


def main() -> int:
    try:
        carregar_configuracao()
    except AcbrError as erro:
        print(erro.codigo)
        return 1
    except (OSError, ValueError):
        print("CONFIGURACAO_A1_INDISPONIVEL: confira a injeção de segredos e o arquivo protegido.")
        return 1
    print("Configuração em HOMOLOGAÇÃO carregada; nenhuma chamada fiscal realizada.")
    return 0


if __name__ == "__main__":
    raise SystemExit(main())
