diff --git a/installer/ogboot_installer.py b/installer/ogboot_installer.py index 032f545..f8974a8 100755 --- a/installer/ogboot_installer.py +++ b/installer/ogboot_installer.py @@ -6,6 +6,9 @@ ################################################################################# import platform, os, sys, subprocess, datetime, shutil, argparse, time, pwd, glob +import subprocess +import os +import shutil global UBUNTU_OS_VERSION, OPENGNGYS_VERSION, PYTHON_VERSION_LAST, PYTHON_VERSION, DEPENDENCIES2, INSTALL_OGBOOT_TARGET, WORK_DIR, LOG_FILE, CHECKPKG, INSTALLPKG, PATH, PROGRAM_DIR, OPENGNSYS_SERVER, UPDATEPKGLIST @@ -291,6 +294,22 @@ def generate_config_url(): arch = os.uname().machine return f"https://dl.cloudsmith.io/public/isc/kea-2-0/config.deb.txt?distro=ubuntu&codename={codename}&version={version}&arch={arch}" +def downloadComposer(): + echoAndLog("Downloading composer.phar...") + os.makedirs(os.path.join(WORKDIR, "ogboot", "bin"), exist_ok=True) + + # Download composer.phar to the destination directory + subprocess.run(["curl", "-sS", "-o", os.path.join(WORKDIR, "ogboot", "bin", "composer.phar"), "https://getcomposer.org/installer"], check=True) + + # Check if the download was successful + if not os.path.isfile(os.path.join(WORKDIR, "ogboot", "bin", "composer.phar")): + errorAndLog("Failed to download composer.phar") + return 1 + + echoAndLog("composer.phar downloaded to /opt/ogboot/bin") + return 0 + + def create_ogboot_project(path_opengnsys_base): # Verificar si el usuario 'ogboot' ya existe try: @@ -318,7 +337,8 @@ def create_ogboot_project(path_opengnsys_base): with open('/etc/hosts', 'a') as hosts_file: hosts_file.write('172.17.8.82 opengnsys\n') print("Entrada 'opengnsys' agregada a /etc/hosts") - + + downloadComposer() # Descargar composer.phar # Copiar los archivos .env y composer.json primero shutil.copy(f"{WORKDIR}/ogboot/.env", os.path.join(path_opengnsys_base, ".env")) shutil.copy(f"{WORKDIR}/ogboot/composer.json", os.path.join(path_opengnsys_base, "composer.json")) @@ -592,7 +612,7 @@ def copyClientFiles(): echoAndLog(f"{copyClientFiles.__name__}(): Copying OpenGnsys Cloning Engine files.") os.makedirs(f"{INSTALL_TARGET}/client/lib/engine/bin", exist_ok=True) - + engine_files = glob.glob(f"{WORKDIR}/ogboot/client/engine/*.lib*") # Copiar cada archivo individualmente