0%

本文是搭建私网环境下的 go 自动集成环境的一部分。

go 项目使用 go mod 作依赖包管理,遇到一些问题。
对于依赖库是保存在内网仓库的情况,拉取代码会失败,原因是 go mod 获取
依赖包版本需要使用 https 请求,而自建的 git 服务没有启用 https 。

如果是传统的 gopath 依赖项目, 只需要 go get -insecure 即可绕过 https 限制,
但是这里我们选择用 go mod ,一方面这是 go 官方推荐的方式,也是未来的发展趋势,
另一方面是不希望依赖包放在 vendor 目录下一起提交到版本库造成源码目录过于庞大。

接下来讲一讲如何在私网中启用 https, 服务端系统以 CentOS7 为例。

Read more »

Installation

if you want install latest version check official site

I will install postgres9.6 for CentOS7.

default version of postgres in CentOS7 rpm is not recommanded, I need some new features in postgres9.5+.

Read more »

Simple break in for-select loop, will not break out of for loop. You should use break label.

Read more »

problem

1
2
3
4
5
6
7
8
9
10
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x10 pc=0x6e2bea]

goroutine 10233 [running]:
.../backend.(*ActionBackend).ReceiveTXPacket(0xc42968f940)
/.../backend/actionbackend.go:102 +0x2a
.../backend.NewActionBackend.func1(0xc42968f940)
/.../backend/actionbackend.go:45 +0x2b
created by .../backend.NewActionBackend
/.../backend/actionbackend.go:44 +0x89
Read more »