|
Página 1 de 1
|
Autor |
Mensaje |
calcena
Ingeniero Programador
Registrado: Julio 2016
Mensajes: 272
Edad: 47
|
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
|
#1 Martes, 24 Julio 2018, 07:28 |
|
|
jsbsan
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4175
Edad: 51 Ubicación: dos hermanas, sevilla
|
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
|
#2 Martes, 24 Julio 2018, 11:01 |
|
|
shordi
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4982
Edad: 64 Ubicación: Albacete
|
Re: 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.
La primera opción. Es la más profesional y la que armoniza con el S.O.
(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
|
#3 Martes, 24 Julio 2018, 11:42 |
|
|
shordi
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4982
Edad: 64 Ubicación: Albacete
|
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
|
#4 Martes, 24 Julio 2018, 11:55 |
|
|
calcena
Ingeniero Programador
Registrado: Julio 2016
Mensajes: 272
Edad: 47
|
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
|
#5 Jueves, 26 Julio 2018, 10:15 |
|
|
|
|
Página 1 de 1
|
Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado Usuarios registrados conectados: Ninguno
|
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
|
|
|
|
|