#!/bin/bash echo "Hello world" touch "Hello world" BRANCH=$1 if [[ -z $BRANCH ]]; then BRANCH="main" fi GIT_REPO="ssh://git@ognproject.evlt.uma.es:21987/opengnsys/ogboot.git" # Obtiene el código fuente del proyecto desde el repositorio de GitHub. function downloadCode() { if [ $# -ne 1 ]; then echo "${FUNCNAME}(): invalid number of parameters" exit 1 fi local url="$1" echo "${FUNCNAME}(): downloading code from '$url'..." GIT_SSH_COMMAND="ssh -o StrictHostKeyChecking=accept-new" git archive --remote=$url --format zip --output ogboot.zip --prefix=ogboot/ $BRANCH && unzip ogboot.zip if [ $? -ne 0 ]; then echo "${FUNCNAME}(): error getting OpenGnsys code from $url" return 1 fi rm -f ogboot.zip echo "${FUNCNAME}(): code was downloaded" return 0 } function add_tftpboot_files() { # Navegar al directorio ogboot cd ogboot src_dir="tftpboot" dest_dir="/opt/opengnsys/tftpboot" # Crear el directorio de destino si no existe mkdir -p "$dest_dir" # Copiar los archivos sin sobrescribir los existentes cp -rn "$src_dir/." "$dest_dir/" # Comprobar si la copia fue exitosa if [ $? -eq 0 ]; then echo "Los archivos se añadieron con éxito." else echo "Hubo un error al añadir los archivos." fi # Volver al directorio original cd .. } downloadCode $GIT_REPO if [ $? -ne 0 ]; then echo "Error while getting code from the repository" exit 1 fi add_tftpboot_files if [ $? -ne 0 ]; then echo "Error añadiendo ficheros" exit 1 fi