Golang и линейка продуктов JetBrains, куда входят Goland и Pycharm, ориентированны на работу с внешними сервисами, такими как Github.
Github работает по https
протоколу, для менеджера пакетов Golang необходима система контроля версий, поддерживающая https
протокол, иначе он не захочет качать пакеты.
Во множестве организаций использутся внутренние репозитории кода. У нас код хостится на внутреннем сервере Gitlab.
При этом https
не используется, используется http
. При импорте модулей в пакет при разработке на Golang возникает проблема:
При попытке импорта, Goland пишет:
go: finding module for package gitlab.bazalt.team/dev/veil-api-client-go/veil
terraform-provider-veil imports
gitlab.bazalt.team/dev/veil-api-client-go/veil: cannot find module providing package gitlab.bazalt.team/dev/veil-api-client-go/veil: unrecognized import path "gitlab.bazalt.team/dev/veil-api-client-go/veil": https fetch: Get "https://gitlab.bazalt.team/dev/veil-api-client-go/veil?go-get=1": dial tcp 192.168.14.215:443: connect: connection refused
Что делал что бы побороть ошибку:
- запилил самоподписанные сертфикаты для Gitlab, не помогло:
go: finding module for package gitlab.bazalt.team/dev/veil-api-client-go/veil
terraform-provider-veil/veil imports
gitlab.bazalt.team/dev/veil-api-client-go/veil: cannot find module providing package gitlab.bazalt.team/dev/veil-api-client-go/veil: unrecognized import path "gitlab.bazalt.team/dev/veil-api-client-go/veil": https fetch: Get "https://gitlab.bazalt.team/dev/veil-api-client-go/veil?go-get=1": x509: certificate signed by unknown authority
-
экспериментировал с
git
на локальном хосте как здесь, не помогло: -
поспал, начал читать разное про модули, в итоге набрел на “Go Modules Reference”, помогло…
В настройках проекта Goland устанавливаем переменные с исключениями из внутренних серверов и удаляем старые версии модулей в консоли:
go clean -modcache
Может потребоваться перезапуск Goland. Модули нормально импортировались: