Instalar proyecto en modo producción en toba 3.4

¿Cómo puedo hacer para instalar un proyecto en modo producción y usar las operaciones de toba_usuarios para abm de perfiles, restricciones, permisos, etc. dentro de ese proyecto?

Sigo necesitando ayuda con este tema, instalé el repositorio framework de github pero me aparece toba_editor, yo quisiera tener separado el toba_editor para hacer desarrollo y por otro lado el proyecto que se ubica en la carpeta proyectos y además poder tener integradas las operaciones de toba_usuarios en ese proyecto, cómo puedo hacerlo?

Hola Matias,

en sintesis, asi derecho viejo no podes… toba_usuarios existe separado por una razon, conceptualmente es parte de la instancia y esta pensado para que lo use unicamente un administrador.

Mas alla de eso, suponiendo que repliques dentro del proyecto las operaciones de toba_usuarios se te presentaria a la larga un problema de mantenimiento ya que deberias ir ajustando manualmente todos los cambios que se incorporan en la version del framework.

toba_editor es un proyecto Toba en si mismo, por tanto no lo podes separar aparte como si fuera Netbeans o PHPStorm, no te traeria ningun beneficio extra tenerlo asi ya que no podes usar un mismo codigo para editar instancias en versiones disimiles.

Tene en cuenta que Toba hoy x hoy actua como una dependencia del proyecto, cuasi un runtime te diria por lo que la carpeta es el proyecto y entre sus dependencias esta el framework y de cachetada cae el editor.

Para esto tendrias que replicar las operaciones que existen dentro de toba_usuarios, podes utilizar un asistente dentro de toba_editor e importar los metadatos de la operacion… pero aun asi vas a tener que replicar el archivo que posee las consultas a la bd.

Una vez tengas eso resuelto (y hayas agregado la bd de toba como fuente de datos) seguramente puedas operar desde tu proyecto pero como quien diria… te exilas del progreso de dichas operaciones.

El problema lo vas a tener como te decia antes cuando debas trasladar los cambios del framework, ya que los mismos toman en cuenta el codigo de toba… no de los proyectos propios, si muevo una tabla de schema… tu version replicada va a explotar.

Saludos

Gracias @richard, ya voy entendiendo un poco, decime si me equivoco en esto: para generar el instalador del proyecto que creé con toba proyecto crear tengo que ejecutar toba proyecto empaquetar, esto me crea la carpeta instalador_nombre_del_proyecto/version en la carpeta padre del framework, ¿después cómo tengo que hacer para instalar este proyecto desde la carpeta instalador_nombre_del_proyecto/version?

Matias,

ese era el mecanismo viejo si, te generaba un instalador web que necesitaba de un web_server para poder instalar el proyecto.

Hace varios años lo dejamos de lado y nos mudamos hacia este mecanismo, que es similar en algun sentido pero que solo necesita composer y una consola.

Saludos

Y hay algún paso previo a crear el instalador? Lo digo porque pongo “siu/instalador”: “v2.1.0”, en composer.json del framework, después ejecuto composer update y me da este error:

Hola Matias,

no hay paso previo, lo que te aparece ahi es un conflicto de versiones ya que el instalador tambien tiene su historia y requerimientos propios.

Yo probaria con la version ~3.0 en la restriccion de composer, que por otra parte es la ultima version del paquete ese.

Saludos

Estoy tratando de crear el instalador como dice el tutorial que me pasaste, pero me da el error que no existe el archivo proyecto.ini, ¿desde qué carpeta tengo que ejecutar el comando ./bin/instalador proyecto:definir-variables y cuál es la sintaxis para un proyecto llamado ciftoba?

Hola Matias,

ese archivo deberias tenerlo en la raiz del proyecto, de hecho es donde se suelen incorporar ciertas configuraciones de parametros basicos.

El comando deberias correrlo desde la carpeta donde se encuentra el proyecto, fijate que el paso previo al que mencionas te genera ese archivo mediante la copia de un archivo especifico.

Ahí pude ejecutar el instalador y me generó el archivo instalador.env, pero tengo tres dudas:

  1. ¿Qué valores tengo que poner en el archivo instalador.env para las config de las bases de datos de negocio y de toba?
  2. ¿Qué valores tengo que poner para la config de toba?
  3. ¿Y cómo ejecuto el instalador para instalarlo en modo producción en una url pública (https://www.gestionsindicato.com.ar)?

Hola Matias,

Eso depende de si estan en la misma bd o bases separadas, en gral si es la misma bd simplemente repetis los valores a excepcion del schema.

Es muy generica tu pregunta, que variables son las que te generan dudas?

Lo ejecutas via consola de comandos en donde sea que estes hosteando el proyecto, solo instala en modo produccion… asi que esa parte deberia dejartela OK.

Si creaste pasos propios o extendiste existentes, revisa como usas las envs y asegurate de que se invoque la clase padre cuando sea necesario.

Saludos

Las variables que me generan dudas son: TOBA_INSTALACION_DIR, TOBA_PROYECTO_DIR, TOBA_PASSWORD, TOBA_USUARIO y TOBA_URL_BASE, aunque supongo que TOBA_USUARIO es toba y TOBA_PASSWORD es la contraseña que escribì para el usuario toba cuando ejecutè toba instalacion instalar, es correcto?

Bien, paso a enumerarte lo que deberian llevar:

  • TOBA_PROYECTO_DIR: Directorio en el servidor donde se encuentra fisicamente el codigo del proyecto.

  • TOBA_INSTALACION_DIR: Directorio en el servidor donde se alojara la carpeta de instalacion que contendra los archivos de configuraciones y los logs de la consola y proyecto durante su ejecucion. Puede o no estar contenida dentro de la ruta que marca TOBA_PROYECTO_DIR

  • TOBA_PASSWORD: Clave para el usuario administrador de la instancia

  • TOBA_USUARIO: Nombre del usuario administrador de la instancia

  • TOBA_URL_BASE: URL donde se pueden conseguir los assets del framework, normalmente apunta al dir frameworkDir/www … digamos, si tu dominio es gestionsindicato.com.ar … el framework podria estar en un alias, esa info va aca.

Exacto

Y cómo genero el empaquetado para instalarlo en la url pública? En mi caso www.gestionsindicato.com.ar

No hay empaquetado, es lo que te decia mas arriba… llevas el codigo del proyecto, ejecutas composer para bajar los paquetes, ejecutas el instalador y luego configuras el webserver para que sirva el proyecto.

Qué comando tengo que ejecutar en la consola para instalar el proyecto y cómo hago para agregar las operaciones de mantenimiento de usuarios, perfiles funcionales, perfiles de datos y restricciones funcionales al proyecto que quero instalar?

Creo que tienes que aplicar el comando exportar local

Matias,

eso es parte de la ejecucion del instalador, fijate que en la raiz del repositorio que te pase hay un Readme con links a mas documentacion.

Si te referis al uso de toba_usuarios fijate que podes incluir dicho proyecto mediante la configuracion de variables de entorno del instalador.

Saludos

O sea, al proyecto toba_usuarios lo puedo usar completo con la url https://www.gestionsindicato.com.ar/toba_usuarios?