TLDR; Go Get ke Private Repository

TLDR; Go Get ke Private Repository

Saat membuat microservice menggunakan Go a.k.a Golang, seringkali kita membutuhkan private library untuk digunakan di berbagai service. Agar dapat menjalankan go get ke private library tersebut, dibutuhkan setup tambahan.

Btw cara ini saya dapat dari artikel ini. Disini saya tidak akan jelaskan maksud step-by-step, jadi kalau bingung lihat aja artikel tersebut.

Sebagai contoh, disini ceritanya saya ingin menggunakan private library di github.com/emsifa/privatelib.

1. Tambahkan env GOPRIVATE

go env -w GOPRIVATE=github.com/emsifa/privatelib

Bisa juga pakai wildcard kalau kamu punya banyak private repo:

go env -w GOPRIVATE=github.com/emsifa/*

Atau pakai separator sebagai berikut:

go env -w GOPRIVATE=github.com/emsifa/*,bitbucket.org/emsifa/*

2. Config Git Global URL

git config --global url."[email protected]:emsifa/privatelib.git".insteadOf "https://github.com/emsifa/privatelib"

Kode di atas maksudnya kita tambahin semacam alias/proxy ke ~/.gitconfig, kalau go mod mau akses "https://github.com/emsifa/privatelib", requestnya diarahkan ke "[email protected]:emsifa/privatelib.git".

Karena disitu pakai URL git (bukan https), jadi harus punya akses SSH.

Step ini ga bisa pakai wildcard ya, jadi kalau mau gunain beberapa repo harus daftarin 1-1

3. Cobain

Sekarang di semua aplikasi Go kamu, kamu :

go get github.com/emsifa/privatelib

Udah gitu doang.

Suka artikel ini?

Saya biasanya share artikel-artikel terbaru via facebook atau fanpage foobarology saya. Kalau mau dapat updatenya, di add friend/like/follow aja link-link dibawah ini 😃

Facebook Foobarology