Question

Existe-t-il un moyen de conserver un journal (soit local, soit stocké sur un serveur distant) à chaque fois qu'un déploiement est effectué via capistrano? Il serait très utile de garder une trace de la révision en cours à un moment donné dans le passé.

Je sais que le processus de déploiement laisse les fichiers déployés pour les 10 derniers déploiements dans le répertoire des versions, mais il serait bien de conserver plus d'historique et de le rendre accessible sous la forme d'un fichier à plat.

Était-ce utile?

La solution

capistrano définit quelques variables utiles, dont une latest_revision , que vous pouvez vider dans un fichier.

task :mark_revision do
  log = "#{deploy_to}/revisions.log"
  run "(test -e #{log} || touch #{log} && chmod 666 #{log}) && " +
  "echo #{latest_revision} >> #{log};"
end

Autres conseils

Il n'y a pas de fonctionnalité intégrée, donc l'autre réponse fonctionnerait parfaitement; Je pourrais dire que vous devriez l’attacher à la chaîne d’exécution par défaut, je recommanderais quelque chose comme

after :deploy, :mark_revision

de mieux encore à mon humble avis serait quelque chose comme:

after :deploy do
    log = "#{deploy_to}/revisions.log"
    run "(test -e #{log} || touch #{log} && chmod 666 #{log}) && " +
    "echo #{latest_revision} >> #{log};"
end

Je l'ai ouvert comme un moyen de discussion sur le gestionnaire de bogues de Capistrano. Peut-être allons-nous implémenter quelque chose dans le noyau pour conserver de meilleurs journaux; c'est certainement une excellente question que nous avons durement négligée!

Webistrano "de Peritor Labs fait quelque chose de similaire, en maintenant un front-web basé sur une base de données, cela vous permet de consigner ce que vous voulez et de déplacer la dépendance pour le déploiement des ordinateurs des développeurs vers un endroit plus central; les gens utilisent souvent Webistrano sur leur serveur CI ou sur un hôte de référentiel s’ils s’auto-hébergent. Plus d'informations sur leur Trac: http://labs.peritor.com/webistrano

Le bogue réside ici: https: // capistrano. lighthouseapp.com/projects/8716-capistrano/tickets/98-log-deployments

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top