2010-10-28 17 views
12

Gollum es "Una wiki simple, Git-powered con una API dulce y una interfaz local".Implementar la wiki de Gollum en Heroku

se aloja en GitHub: http://github.com/github/gollum

parece ser un simple aplicación Sinatra, y como tal, parece que debe ser fácil de implementar en Heroku. Parece que no puedo hacer que funcione. Sobre todo porque no sé casi nada sobre los archivos Rake y config.ru.

¿Es posible implementar una wiki de Gollum en Heroku? Si es así, ¿cómo debería ser mi archivo config.ru?

actualización/Editar

lib/Gollum/frontend/app:

module Precious 
    class App < Sinatra::Base 

Esto se llama a partir de bin/Gollum

require 'gollum/frontend/app' 
Precious::App.set(:gollum_path, gollum_path) 
Precious::App.run!(options) 

Respuesta

12

No se puede ejecutar Gollum desde heroku. Ciertamente no como una wiki editable. El sistema de archivos Heroku es de solo lectura. Es posible que pueda usarlo para servir contenido estático, pero no estoy seguro de eso incluso.

+1

A partir de febrero de 2014, ¡@jassa a continuación ha presentado una solución de trabajo! – Evolve

-4

http://docs.heroku.com/rack#sinatra

require 'hello' 
run Sinatra::Application 

si yo s una aplicación sinatra, eso debería hacerlo por usted.

+2

Lamentablemente, no es una aplicación sinatra de esa manera. Actualicé la pregunta original con algunos detalles adicionales. – irkenInvader

3

Como ya se mencionó, el problema es que el sistema de archivos heroku es de solo lectura. Pero el problema real es la arena subyacente, que se basa en la herramienta de línea de comandos de git. No puede trabajar con repositorios remotos sin clonarlos en el directorio local.

Consulte el question relacionado.

Por lo tanto, la solución será clonar el repositorio en la ruta temporal, trabajar allí y enviar los cambios al repositorio remoto. Hay una gran sobrecarga: necesita clonar el repositorio cada vez que un usuario navega por una página wiki.

Otra solución que me viene a la mente es hacer algo de API para grit que permita trabajar con git de forma remota.

Otra solución más es trabajar con git over ssh.

+0

Acabo de encontrar esto mientras busco la forma de montar una wiki dentro de la aplicación Rails. ¿Estas limitaciones siguen siendo ciertas? – woodardj

+0

@woodardj 5 años es como un siglo para la web. Si estás preguntando en el contexto de Heroku, Docker es una solución muy moderna, y con volúmenes persistentes no deberías tener este problema en absoluto. – Vanuan