9
votes

Existe-t-il une API ou un outil capable d'automatiser la mise à jour du logiciel?

Y a-t-il une API ou un outil capable d'automatiser la mise à jour du logiciel? Il devrait s'occuper de la vérification des mises à jour d'une URL pour une liste fournie de fichiers et de téléchargement et de remplacement de ceux qui nécessitent une mise à jour. Il serait également agréable s'il contenait un module d'authentification afin que seules les parties autorisées puissent accéder aux mises à jour. Il devrait être langue-agnostic - prend une liste de fichiers sans connaissances supplémentaires, à l'exception de leurs versions et les remplace avec des copies nouvellement téléchargées si sur le site il y a des versions plus récentes.

Je suis spécifiquement intéressé par quelque chose pour la plate-forme Windows, qui fonctionnerait à Win XP pour gagner 7.


2 commentaires

Voulez-vous implémenter une fonctionnalité de mise à jour automatique dans votre application? Ou voulez-vous mettre à jour automatiquement les applications provenant d'autres parties?


@Gregory C'est sans importance, je veux juste que de nouvelles copies des fichiers soient transférés d'une adresse lors de la mise à jour des copies mises à jour.


12 Réponses :


3
votes

Cela me fait penser à apt-get ...


0 commentaires

2
votes

J'ai vu des articles un moment de remédier à la subversion dans votre application pour gérer le contrôle de la version.

EDIT:

http://svnbook.red-bean.com/fr /1.5/svn.developer.html

Subversion a une conception modulaire: elle est mise en œuvre comme une collection de bibliothèques écrite dans C. Chaque bibliothèque dispose d'une interface de programmation et d'une interface de programmation d'applications bien définie (API), et que l'interface est disponible non seulement pour la subversion elle-même à utiliser, mais Pour tout logiciel qui souhaite incorporer ou contrôler par programme de manière programmatique. De plus, l'API de Subversion est disponible non seulement à d'autres programmes C, mais également aux programmes écrits dans des langages de plus haut niveau tels que Python, Perl, Java et Ruby. "


0 commentaires

0
votes

Head sur Launchpad et utiliser un PPA: il s'agit d'une plate-forme de gestion du référentiel debian / Ubuntu. Bien sûr, ce n'est pas vraiment indépendant de la plate-forme mais c'est une langue sage: -)


0 commentaires

0
votes

Vous devez jeter un coup d'œil à ClickThrough , je ne sais pas grand chose à ce sujet mais Cela semble semblable à ce que vous recherchez. En ce qui concerne l'autorisation, j'imagine que cela soit géré par votre serveur Web basé sur l'URL.


0 commentaires

0
votes

InstallShield a une offre. Jamais utilisé mais la recherche de quelques années de quelques années, mais nous avons décidé de rouler votre propre solution.


0 commentaires

0
votes

Vous n'avez pas indiqué quelle plate-forme vous aviez besoin pour cela. La manière la plus simple que je puisse penser à cela est avec Subversion avec RSYNC.

Le concept consiste à écrire un crochet post-validation pour subversion. Ce script mettrait à jour un "dossier de travail" sur la machine de référentiel, puis utilisez RSYNC pour mettre à jour les différences vers une autre machine.

La protection et l'authentification des données seraient configurées à l'aide de RSYNC sur SSH.

Si cela est pour Windows, vous pouvez essayer de faire de même avec les installations Cygwin sur les deux machines.

bonne chance.


0 commentaires

0
votes

Si vous utilisez .NET, je suis un client heureux de Applife Update


2 commentaires

J'aimerais que cela soit indépendant du .NET Framework, de travailler à la fois sur .NET et sur des exécutables natifs, ainsi que des fichiers texte, des fichiers de base de données, etc.


Pourrait être une bonne chose à inclure dans votre question. Ce peut être un langage agnostique, mais pas le cadre agnostique.



0
votes

cronw est un service d'exécution planifié pour Windows. (Désolé, je ne peux pas le lier, je suis apparemment limité à 1 comme nouvel utilisateur. Il est hébergé sur Sourceforge.)

PowerShell est une langue de script Windows (Microsoft-officiel) qui vous permet de faire le plus Opérations d'administration système que vous pourriez éventuellement vouloir faire. Il est très facile de ramasser même si vous n'en avez pas travaillé auparavant.

Je dirais que votre meilleur pari est d'écrire un script de mise à jour simple dans PowerShell et, éventuellement, de le configurer en tant que crontaste afin de ne pas avoir à l'exécuter manuellement.

IIRC, PowerShell est une installation optionnelle sur XP et CRONW nécessite que vous exécutez un système 32 bits. Vous n'avez pas dit, alors je suppose que vous faites 32 bits, mais l'alternative supporte la mention.

Et dans tout cela, je suppose que les URL que vous décrivez sont conçues à cette fin - si elles ne sont pas et que vous ne les possédez pas, cela deviendra rapidement plus souffrant que vous ne le souhaitez pas ours. (Faire naviguer un ordinateur sur un site Web lisible par l'homme.)


1 commentaires

Windows a déjà un planificateur de tâches intégré. en.wikipedia.org/wiki/task_schéduler



2
votes

1 commentaires

Cela mène-moi à sept mises à jour (Sevenupdate.sourceforge.net), c'est ce que je cherchais.



1
votes

Pour Windows, j'utiliserais Mise à jour Google, également appelée Omaha . < / p>

Depuis que vous n'avez pas marqué cette question comme Windows, je mentionnerais également un updateengine "> pour Mac.

et (meilleur de tous) APT , qui est disponible gratuitement sur tous les Debian -Based Linux et Distributions BSD , comme Ubuntu


0 commentaires

1
votes

Il y a un projet open source WIPT inspiré par APT de Debian Linux.


0 commentaires

2
votes

Il suffit de voir updateNode lancer une jolie mise à jour et un système de messagerie. Il semble être une plate-forme croisée et libre pour une source ouverte.

mise à jour , a fait une analyse supplémentaire sur celle-ci, affichée à: https://stackoverflow.com/ A / 22528011/3257300


0 commentaires