2025-04-29 17:35:21 +02:00
|
|
|
|
#
|
|
|
|
|
|
# Erminig - Analyse d'arguments pour govel
|
|
|
|
|
|
# Copyright (C) 2025 L0m1g
|
|
|
|
|
|
# Sous licence DOUARN - Voir le fichier LICENCE pour les détails
|
|
|
|
|
|
#
|
|
|
|
|
|
# Ce fichier fait partie du projet Erminig.
|
|
|
|
|
|
# Libre comme l’air, stable comme un menhir, et salé comme le beurre.
|
|
|
|
|
|
#
|
|
|
|
|
|
|
2025-04-29 17:15:19 +02:00
|
|
|
|
import argparse
|
2025-05-03 18:33:53 +02:00
|
|
|
|
from pathlib import Path
|
|
|
|
|
|
from erminig.core.config import Config
|
2025-04-29 17:15:19 +02:00
|
|
|
|
from erminig.controllers.govel.pakva import Pakva
|
|
|
|
|
|
from erminig.controllers.govel.build import run_build_function
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def main():
|
|
|
|
|
|
parser = argparse.ArgumentParser(description="Govel – Build artisanal Erminig")
|
|
|
|
|
|
subparsers = parser.add_subparsers(dest="command")
|
|
|
|
|
|
|
|
|
|
|
|
build_parser = subparsers.add_parser("build")
|
|
|
|
|
|
build_parser.add_argument("--name", help="Nom du paquet à builder")
|
|
|
|
|
|
|
|
|
|
|
|
args = parser.parse_args()
|
|
|
|
|
|
|
|
|
|
|
|
if args.command == "build":
|
|
|
|
|
|
if args.name:
|
2025-05-03 18:33:53 +02:00
|
|
|
|
pakva = Pakva.load_from_name(args.name)
|
2025-04-29 17:15:19 +02:00
|
|
|
|
else:
|
2025-05-03 18:33:53 +02:00
|
|
|
|
pakva_path = Path.cwd() / "Pakva"
|
|
|
|
|
|
if not pakva_path.exists():
|
|
|
|
|
|
print("[GOVEL] Erreur : Aucun Pakva trouvé dans le dossier courant.")
|
2025-04-29 17:15:19 +02:00
|
|
|
|
return
|
2025-05-03 18:33:53 +02:00
|
|
|
|
pakva = Pakva.read(pakva_path)
|
2025-04-29 17:15:19 +02:00
|
|
|
|
|
2025-05-03 18:33:53 +02:00
|
|
|
|
build_success = run_build_function(pakva.path, pakva.name, pakva.version)
|
2025-04-29 17:15:19 +02:00
|
|
|
|
|
|
|
|
|
|
if build_success:
|
|
|
|
|
|
print(f"[GOVEL] Build réussi pour {pakva.name}")
|
|
|
|
|
|
else:
|
|
|
|
|
|
print(f"[GOVEL] Build échoué pour {pakva.name}")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if __name__ == "__main__":
|
|
|
|
|
|
main()
|