Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
Despligue Empresarial
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Despligue Empresarial 
 
Buenas a todos, tengo una pregunta a nivel de despligue de aplicaciones.
En el caso de que se desarrolle una app con gambas y llegados al punto de despligue en varias máquinas cliente, cómo hacéis para las actualizaciones???
 
1- Creáis un repositorio y que el soft se conecte para ver si hay nuevas versiones?
2 - O manualmnte se instalan cliente por cliente.

(1) En caso de crear un repositorio de versiones cómo hacéis que el software se conecte para revisar si está en su última versión??


Saludos y gracias
 



 
última edición por calcena el Martes, 24 Julio 2018, 07:53; editado 1 vez 
calcena - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Despligue Empresarial 
 
calcena:

Creo que hablamos ya una vez de este tema. Shordi creaba repositorios , y sus programas se iban actualizando cuando lo hace el sistema.

Yo cree un método (menos profesional), que lo que hacia era:
- Poner en una página web la información del programa: version, nombre dle programa, ruta donde estaba el archivo  y mejora incluida
- El programa leeia esa página web, cada vez que se iniciaba y comprobaba la versión. Si era inferior la que tenia , mostraba un mensaje al usuario, diciendo que habia una versión superior e inidicaba donde la podia descargar.

http://jsbsan.blogspot.com/2016/02/...pdate-para.html
http://jsbsan.blogspot.com/2011/10/...der-buscar.html
 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
jsbsan - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Despligue Empresarial 
 
calcena escribió: [Ver mensaje]
Buenas a todos, tengo una pregunta a nivel de despligue de aplicaciones.
En el caso de que se desarrolle una app con gambas y llegados al punto de despligue en varias máquinas cliente, cómo hacéis para las actualizaciones???
 
1- Creáis un repositorio y que el soft se conecte para ver si hay nuevas versiones?
2 - O manualmnte se instalan cliente por cliente.

La primera opción. Es la más profesional y la que armoniza con el S.O.

calcena escribió: [Ver mensaje]

(1) En caso de crear un repositorio de versiones cómo hacéis que el software se conecte para revisar si está en su última versión??


Saludos y gracias


Símplemente añadiéndo tu repositorio en la lista de repositorios a comprobar por el sistema. Se comprueba y/o actualiza automáticamente con el resto del Software.
 




===================
No podemos regresar
 
última edición por shordi el Martes, 24 Julio 2018, 11:42; editado 1 vez 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Despligue Empresarial 
 
Otro detalle, no basta con que el software se actualice en las máquinas de los usuarios, porque hay usuarios que no actualizan nunca y te arriesgas a que unos usen una versión y otros otra.
Para prevenir eso yo lo que hago es mantener una tabla "Versiones" en una de mis bases de datos y en ella guardo la versión del programa, si es obligatorio su uso y si requiere un reinicio de configuración (dbsettings) en su primera ejecución. Lo primero que hacen mis programas es contactar con esa base y cotejar la versión instalada con la versión que figura en la tabla.
Si no es la misma versión ta avisa para que actualices el sistema. Si, además, la última es una versión obligatoria, no te deja seguir y si requiere reconfiguración en la primera ejecución ejecuta tal procedimiento.

Como ejemplo te pongo el códido del evento Open del formulario FMain de uno de mis programas llamado Shinigami.

Este es el formato de la tabla "versiones"
CREATE TABLE `versiones` (
 `programa` varchar(50) NOT NULL,
 `actual` varchar(20) NOT NULL,
 `obligatoria` tinyint(1) NOT NULL,
 `reconfigurar` tinyint(1) NOT NULL,
 PRIMARY KEY (`programa`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
 


Public Sub Form_Open()
  
    Dim f As Object
    Dim r As Result
    Dim pathEntorno As String
    
    pathEntorno = User.Home &/ ".config" &/ Application.Name
    If Not Exist(pathEntorno) Then
        f = New Entorno(True)   ''Entorno es el formulario de configuración
        Me.visible = False
        f.showmodal
        Me.close
        Return
    Else
        Settings.Read(Me)
        mComun.usuario = New Usuario
        Me.title = Application.Name
        lienzo.Visible = False
        Inc Application.Busy
        mComun.cargaentorno()
        If mComun.entorno.Count = 0 Then ''Este es el caso en que se hubiese eliminado el entorno anterior por cambio de versión
            f = New Entorno(True)
            Me.Visible = False
            f.Showmodal
            Me.close
            Return
        Endif
        If Not mComun.abreConexiones() Then ''hay algún problema con la red y no se pudieron abrir las bases de datos
            Me.Close()
            Return
        Endif
        Dec Application.Busy
        r = Connections["nombre_de_la_conexion"].Exec("select * from versiones where programa=&1", Application.Name)
        If r!actual <> Application.Version Then
            If r!obligatoria Then  
                Message.Warning("Existe una nueva versión de shinigami que contiene cambios sin los que no es posible continuar. Actualice su sistema.")
                Me.close()
                Return
            Else
                Message("Existe una nueva versión de shinigami. Actualice su sistema cuanto antes.") ''No está actualizado, pero la última no es obligatoria. Sólo un aviso y se continúa.
            Endif
        Endif
        If r!reconfigurar = True And mComun.entorno["version"] <> Application.Version Then
            bienvenida.Text = "Ejecutando acciones post-actualización"
            Message("La actualización instalada requiere reiniciar el entorno de trabajo. \n A continuación se generará el entorno por defecto.\n Puede afinar su configuración en la opción de Configurar Entorno del menú Administración.")
            f = New Entorno(True)
            Me.Visible = False
            f.Showmodal
            Me.close
            Return
        Endif
        bienvenida.Text = "Versión: " & Application.Version
    Endif
    menuconsultas()
    mConectar_Click()

Catch

    mEMail.sendmail(mComun.entorno["mailprograma"], [mComun.entorno["mailerrores"]], "Error en Shinigami", "Usuario: " & mComun.usuario.nick & "\nFecha: " & Format(Now(), "dd-mm-yyyy hh:mm:ss") & "\n" & Error.Text & " - " & Error.where, mcomun.servidores["mailserver"])
 
    Message("Error: " & Error.Text & "\nEn: " & Error.where)

End
 

 




===================
No podemos regresar
 
última edición por shordi el Martes, 24 Julio 2018, 11:58; editado 1 vez 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Despligue Empresarial 
 
Muchas gracias Shordi por tu información y sobre todo por el ejemplo in situ, además tu planteamiento lo veo muy correcto y lo mejor.
Tendré que ir testeando estos sistemas porque nunca me lo había planteado de esta forma, que es muy profesional.

Saludos
 



 
calcena - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 

Publicar nuevo tema  Responder al tema  Página 1 de 1
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron