2010-10-28 20 views
12

Gollum è "Un semplice wiki basato su Git con una API dolce e frontend locale."Distribuisci wiki di Gollum a Heroku

è ospitato su GitHub: http://github.com/github/gollum

sembra essere una semplice app Sinatra, e come tale, sembra come dovrebbe essere facile da implementare a Heroku. Non riesco a farlo funzionare. Principalmente perché non conosco quasi nulla sui file Rake e config.ru.

È persino possibile distribuire un wiki di Gollum su Heroku? In tal caso, quale dovrebbe essere il mio file config.ru?

Aggiornamento/Modifica

lib/Gollum/frontend/app:

module Precious 
    class App < Sinatra::Base 

Questo viene chiamato dal bin/Gollum

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

risposta

12

Non è possibile eseguire Gollum da heroku. Certamente non come una wiki modificabile. Il filesystem di Heroku è di sola lettura. Potresti essere in grado di usarlo per pubblicare contenuti statici, ma non ne sono sicuro nemmeno.

+1

A partire da febbraio 2014 @jassa di seguito ha trovato una soluzione funzionante! – Evolve

-4

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

require 'hello' 
run Sinatra::Application 

se io s un'app sinatra, dovrebbe farlo per te.

+2

Sfortunatamente, non è un'app sinatra in quel modo. Ho aggiornato la domanda originale con alcuni dettagli aggiuntivi. – irkenInvader

3

Come già accennato, il problema è che il filesystem heroku è in sola lettura. Ma il vero problema è la grinta sottostante, che si basa sullo strumento da riga di comando git. Non è possibile lavorare con repository remoti senza clonarli nella directory locale.

Vedere il relativo question.

Quindi, la soluzione sarà quella di clonare il repository sul percorso temporaneo, lavorare lì e trasferire le modifiche al repository remoto. C'è un sovraccarico: è necessario clonare il repository ogni volta che un utente naviga su una pagina wiki.

Un'altra soluzione che viene in mente è creare alcune API per grit che consentiranno di lavorare con git da remoto.

Un'altra soluzione è lavorare con git su ssh.

+0

L'ho appena scoperto mentre cercavo un modo per montare un wiki all'interno di un'app Rails. Queste limitazioni sono ancora vere? – woodardj

+0

@woodardj 5 anni sono come un secolo sul web. Se stai chiedendo nel contesto di Heroku, Docker è una soluzione molto moderna, e con volumi persistenti non dovresti avere questo problema. – Vanuan