2017-08-27 8 views
0

Ich verwende http://github.com/tmthrgd/go-bindata, um statische Dateien und Vorlagen in Go ausführbare Datei einzubetten. Sie müssen go generate ausführen, um einen Go-Code auszuführen, der jede Datei liest und eine binäre Darstellung als Standard-Go-Datei schreibt. go generate müssen vor dem Build-Prozess gefeuert werden. Gibt es eine Möglichkeit, Heroku dafür zu konfigurieren?Wie läuft man gehen Generieren auf Heroku

Antwort

0

go generate sollte lokal während der Entwicklung ausgeführt werden, nicht auf heroku. Wenn Sie es auf Heroku ausführen, wird es sehr schwierig, Probleme zu debuggen. Wenn go generate unerwartete Ergebnisse hat, können Sie dies nicht leicht überprüfen.

Sie könnten go generate mit einem Tool wie modd oder mit einem Git-Hook ausführen. Wenn die Ergebnisse von go generate von git verfolgt werden, bedeutet dies auch, dass Sie verfolgen können, welche Änderungen den generierten Code beeinflusst haben.

In einer Sprache wie Ruby könnte es üblich sein, bundle install auf dem Server laufen zu lassen und Abhängigkeiten von Git wegzulassen. Für Go-Programme ist das nicht so. Abhängigkeiten sollten von Git verwaltet und verfolgt werden. Gleiches gilt für generierten Code.

Der Rest ist überhaupt nicht für diesen Fall empfohlen und ich würde nie so etwas tun.

  • Gabel das gehen Heroku buildpack
  • eine Zeile hinzufügen go generate
  • benutzen, um Ihre laufen gehen modifizierte Heroku buildpack
  • Bereitstellung Ihrer App

around this line

more on buildpacks

Verwandte Themen