Autor |
Mensaje |
aristicol
Aprendiz
Registrado: Septiembre 2009
Mensajes: 87
Edad: 37 Ubicación:
|
Crear Rutina Para Brindar Actualizaciones A Nuestras Aplicaciones
Hola compañeros más que brindarles un código que debería ser así, les solicito en favor de comentar como se puede implementar una rutina para que una aplicación busque actualizaciones cuando las publiquemos.
Mi idea seria montar un servidor Ubuntu y habilitar los servicios necesarios para que sea accesible desde la web "eso ya lo se hacer" pero lo que me gustaría es conocer la forma menos complicada o practica que exista para que en una opción de la aplicación que creemos haya una opción "Buscar actualizaciones"
Como lo hace la mayoría de aplicaciones.
¿Como se hace?
|
#1 Viernes, 26 Noviembre 2010, 02:24 |
|
|
soplo
Analista Programador
Registrado: Septiembre 2009
Mensajes: 843
Edad: 44
|
Re: Crear Rutina Para Brindar Actualizaciones A Nuestras Aplicaciones
Hola
Aquí tienes unos códigos para jugar con apt.
Obtener paquqtes y dependencias
Yo probaría a pegar los objetos tal como dice el código en un formulario para ver como funciona porque se formatea la salida y tal. No es nada del otro jueves pero seguro que te vale de ejemplo.
Pero supongo que tu no vas por el tema de dependencias sino por hacer como hace firefox. Que de vez en cuando al iniciarlo te avisa que hay una nueva versión. Para eso lo que debes hacer es lo siguiente:
Tu aplicación cuando se inicia mira si existe un script específico. Si existe lo ejecuta. Si no existe envia una señal a una ubicación determinada. Recibe la respuesta de la versión disponible. Si es mayor que la versión actual se inicia el proceso de actualización.
1. descarga el nuevo ejecutable con otro nombre en el mismo path (un simple wget por ejemplo)
2. crea un script mencionado antes de cinco simples lineas.
2.1 La primera matar el proceso del ejecutable.
2.2 La segunda borrar el ejecutable.
2.3 La tercera renombrar el archivo descargado con el nombre del ejecutable.
2.4 Dar permisos de ejecución al nuevo ejecutable
2.5 Ejecutar el ejecutable
Y ya está.
Yo aconsejaría también incluir el CRC a la hora de descargar el fichero. Un procedimiento de tipo md5sum o similar
Un saludo
última edición por soplo el Viernes, 26 Noviembre 2010, 04:56; editado 1 vez
|
#2 Viernes, 26 Noviembre 2010, 04:55 |
|
|
jsbsan
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4175
Edad: 51 Ubicación: dos hermanas, sevilla
|
Re: Crear Rutina Para Brindar Actualizaciones A Nuestras Aplicaciones
Yo me hice este "modulo" para buscar actualizaciones...
http://jsbsan.wordpress.com/2009/06...s-shell-y-wget/
descargado el archivo desde un ftp.
Saludos
|
#3 Viernes, 26 Noviembre 2010, 12:30 |
|
|
aristicol
Aprendiz
Registrado: Septiembre 2009
Mensajes: 87
Edad: 37 Ubicación:
|
Re: Crear Rutina Para Brindar Actualizaciones A Nuestras Aplicaciones
Yo me hice este "modulo" para buscar actualizaciones...
http://jsbsan.wordpress.com/2009/06...s-shell-y-wget/
descargado el archivo desde un ftp.
Saludos
Gracias jsbsan te confieso que esta esperando tu respuesta pues recordaba que una vez estuve viendo el ejemplo que comentas, compañero he intentado descargar el ejemplo en código fuente para ir directo al análisis pero el enlace al parecer esta roto.
Gracias.
|
#4 Viernes, 26 Noviembre 2010, 15:03 |
|
|
Capa
Técnico Programador
Registrado: Septiembre 2009
Mensajes: 158
Edad: 44 Ubicación: Catalunya
|
Re: Crear Rutina Para Brindar Actualizaciones A Nuestras Aplicaciones
A mí el enlace hacía el código fuente me funciona perfectamente:
Citar: http://www.proyectojulio.webcindario.com/home/julio/update/update-0.0.4.tar.gz
=================== www.capasoft.cat
|
#5 Viernes, 26 Noviembre 2010, 19:02 |
|
|
shordi
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4982
Edad: 64 Ubicación: Albacete
|
Re: Crear Rutina Para Brindar Actualizaciones A Nuestras Aplicaciones
Personalmente no veo la necesidad de hacer una gestión de actualizaciones disponiendo de la del sistema. Yo he creado un repositorio en mi servidor web, lo he añadido al sources.list de mis clientes y con subir el .deb vía ftp se les actualizan mis programas al tiempo que el resto del sistema. Cierto que he reinventado la rueda muchas veces, pero hay ruedas que están bien hechas y no vale la pena reinventar... digo.
De todas formas el tratar de hacer las cosas de otra manera es, casi por definición, lo que define al mundo del software libre.
Suerte
=================== No podemos regresar
|
#6 Viernes, 26 Noviembre 2010, 19:20 |
|
|
CanihoJR
Ingeniero Programador
Registrado: Septiembre 2009
Mensajes: 269
Edad: 38 Ubicación: San Pedro Alcantara
|
Re: Crear Rutina Para Brindar Actualizaciones A Nuestras Aplicaciones
haciendo caso a lo que shordi dijo, que me parece la forma mas razonable, ya que es un estándar de echo en linux... si cada programa tiene que preocuparse de actualizarse a si mismo, acabaríamos en windows.....
Pues, eso, haciendo caso a lo que shordi dijo, he echo mis pruebas.... y no se si será la forma correcta de hacer un repositorio web, pero lo hice de la siguiente manera:
1- Cree una carpeta en el servidor, llamada REPO.
2- Subí los .DEB
3- Generé el indice mediante este comando "dpkg-scanpackages . /dev/null>Packages && gzip -c9 Packages>Packages.gz && rm Packages"
4- Subí el indice también al directorio REPO, hay que subir el archivo package.gz y otro igual sources.gz (yo lo renombre y listo)
5- Añadí mi repositorio en mi UBUNTU (sudo add-apt-repository 'deb http://www.lnainformatica.es/repo /') yyyy listo.
6-Actualizar (sudo apt-get update) y a funcionar.
Nota: al principio solo subí package.gz pero al hacer un update, me tiraba 404 que no encontraba sources.gz, asi que dupliqué el archivo y renombre... <- por si a alguien le pasa...
|
#7 Viernes, 26 Noviembre 2010, 19:50 |
|
|
jsbsan
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4175
Edad: 51 Ubicación: dos hermanas, sevilla
|
Re: Crear Rutina Para Brindar Actualizaciones A Nuestras Aplicaciones
CanihoJR:
¡¡ todos los dias aprendo cosas nuevas !!!
Yo lo hice asi porque desconocia lo de los repositorios. (y vine de windows como casi todos... ).. de hecho todavia no me he enterado muy bien como se hace...
Una pregunta, tu repositorio "deb http://www.lnainformatica.es/repo /", es asccesible a todo el mundo, o sea que si lo añado a mi lista de repositorios, puedo descargarme las versiones de tus programas???
Te lo pregunto para hacer una cosa similar con mis programas...
Gracias
Citar: Nota:
en código fuente para ir directo al análisis pero el enlace al parecer esta roto.
Algunas veces fallan, sera por tema del servidor de webcindario...., pero al rato vuelven a funcionar.
última edición por jsbsan el Viernes, 26 Noviembre 2010, 20:11; editado 2 veces
|
#8 Viernes, 26 Noviembre 2010, 20:07 |
|
|
aristicol
Aprendiz
Registrado: Septiembre 2009
Mensajes: 87
Edad: 37 Ubicación:
|
Re: Crear Rutina Para Brindar Actualizaciones A Nuestras Aplicaciones
1- Cree una carpeta en el servidor, llamada REPO.
2- Subí los .DEB
3- Generé el indice mediante este comando "dpkg-scanpackages . /dev/null>Packages && gzip -c9 Packages>Packages.gz && rm Packages"
4- Subí el indice también al directorio REPO, hay que subir el archivo package.gz y otro igual sources.gz (yo lo renombre y listo)
5- Añadí mi repositorio en mi UBUNTU (sudo add-apt-repository 'deb http://www.lnainformatica.es/repo /') yyyy listo.
6-Actualizar (sudo apt-get update) y a funcionar.
Nota: al principio solo subí package.gz pero al hacer un update, me tiraba 404 que no encontraba sources.gz, asi que dupliqué el archivo y renombre... <- por si a alguien le pasa...
Importante lo que haz comentado, yo he tenido mi propio servidor Ubuntu y accesible pero con lo que se asume tener un equipo encendido 24 horas y otras situaciones que ello implica, se dice que la mejor opción es hacer aun alojamiento contratado para no tener que preocuparse por medidas de seguridad, ¿tienes tu servidor web en tu casa? o ¿contratas servicios?
|
#9 Viernes, 26 Noviembre 2010, 20:52 |
|
|
soplo
Analista Programador
Registrado: Septiembre 2009
Mensajes: 843
Edad: 44
|
Re: Crear Rutina Para Brindar Actualizaciones A Nuestras Aplicaciones
Eso es interesante pero es distinto. Requiere que periódicamente hagas el update y tal. Lo que yo digo ocurre automáticamente sin que el usuario llegue siquiera a enterarse a menos que se le diga. Es lo que hace firefox solo que en el caso de ellos te lo dicen y luego sale el navegador con una nueva pestaña diciendote el cambio realizado y en mi caso no se entera nadie.
Es un sistema excelente para parchear porque resuelves problemas de forma automática sin hacer nada. Solo pones el nuevo ejecutable y sabes que cuando el cliente antes o despues ejecute la aplicación se instalará solo sin que él se entere siquiera.
Otra cosa es cuando ya hay modificaciones serias que incluso pueden tener otras dependencias, etc.
|
#10 Viernes, 26 Noviembre 2010, 21:03 |
|
|
|