Укажите версию Go для файла go.mod - PullRequest
0 голосов
/ 10 июля 2019

Я развертываю приложение через Heroku. Я делаю git push heroku master

И я получаю эту ошибку:

remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Go app detected
remote: -----> Fetching stdlib.sh.v8... done
remote: ----->
remote:        Detected go modules via go.mod
remote: ----->
remote:        Detected Module Name: go-getting-started
remote: ----->
remote:  !!    The go.mod file for this project does not specify a Go version
remote:  !!
remote:  !!    Defaulting to go1.12.7
remote:  !!
remote:  !!    For more details see: https://devcenter.heroku.com/articles/go-a
ps-with-modules#build-configuration
remote:  !!
remote: -----> New Go Version, clearing old cache
remote: -----> Installing go1.12.7
remote: -----> Fetching go1.12.7.linux-amd64.tar.gz...
remote: gzip: stdin: not in gzip format
remote: tar: Child returned status 1
remote: tar: Error is not recoverable: exiting now
remote:  !     Push rejected, failed to compile Go app.
remote:
remote:  !     Push failed
remote: Verifying deploy...
remote:
remote: !       Push rejected to autoattack.

Я думаю, что это проблема с новой версией Go, и поэтому я хочу использовать предыдущую.

Это мой файл go.mod:

module go-getting-started

go 1.12

...

Я пытался изменить go 1.12 на go 1.11, но это не работает.

1 Ответ

0 голосов
/ 10 июля 2019

Можно установить используемую версию Go, добавив переменную окружения GOVERSION. Вы можете сделать это на странице настроек Heroku вашего проекта.

Вы можете установить предыдущую (рабочую) ревизию, добавив GOVERSION=go1.12.6.

Это задокументировано на Поддержка Heroku Go: версии Go :

Если по какой-либо причине вам нужно выбрать конкретную второстепенную ревизию (например, go1.8.7), вам нужно вручную отредактировать соответствующий файл метаданных или установить переменную среды $GOVERSION ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...