Provide a tutorial on how to create/publish private packages
I have project with the following structure.
root
|
|--- mylib
| | --- mylib.go
| | --- go.mod
|--- svc1
| | --- go.mod
| | --- cmd
| | ---- svc1.go
|--- svc2
| | --- go.mod
| | --- cmd
| | ---- svc2.go
Here mylib.go/mod is a golang module that is used from svc1.go and svc2.go. Now for some reasons, I do not want to expose these files in a git/github url that is publicly accessible. I keep them in my laptop and a non-standard version control system.
Now in my dev laptop, I checkout the sources and want to build svc1.go and svc2.go (which have their individual go.mod files) which I want to import. Now there is an athens server running in my laptop. Now, I do not understand how to publish my mylib.go/mod to this athens server so that I can use it for building svc1/2.
All the demo videos, tutorials talk about athens downloading things from a publicly accesible url but I am not able to find out how to create/publish private modules and use them.