Tengo un script que en la instancia de desarrollo funciona bárbaro. El problema aparece cuando lo llevo al servidor y lo configuro.
Este script, lo que hace es enviar mails luego de evaluar si las pasantías registradas están próximas a vencer. La idea es que una vez que logre que funcione, incluirlo en el cron del servidor.
El error al ejecutarlo dice:
/usr/local/unpsjb/contrato/toba/bin/toba: 6: dirname: not found
/usr/local/unpsjb/contrato/toba/bin/toba: 8: dirname: not found
/usr/local/unpsjb/contrato/toba/bin/toba: 10: php: not found
Cambiando el formato del PATH, sigue sin funcionar, pero ahora es distinto, surge un mensaje en el archivo salida.log.
INFO_INSTANCIA: No se encuentra definido el archivo de inicializacion de la INSTANCIA: ‘produccion’ (‘/usr/local/unpsjb/contrato/toba/instalacion/i__produccion/instancia.ini’)
Solucione parcialmente el problema. El script tal cual lo presente al comienzo de este hilo, solo funciona en la instancia de desarrollo, no en producción. El archivo script_enviar_mail se encuentra ubicado en la carpeta aplicación del sistema.
Comente todas las lineas export y copie la carpeta i__producción, los archivos bases.ini, instalacion.ini, toba.conf en ../toba/instalacion, solo así logre que funcione en producción.
Se podría realizar de otra manera, sin copiar esas carpetas y archivos???
creo que en el primer script te falto definir la variable de entorno ‘TOBA_INSTALACION_DIR’ ya que en produccion el directorio de instalacion, no necesariamente se encuentra dentro del directorio de toba. Con eso no necesitabas copiar ninguna carpeta.
Por otro lado, salvo que tengas una extension del comando del item… el modificador -u toba, no agrega nada ya que no hay usuario para la consola.