Sunday, March 3, 2024
HomeGolangDependency administration in giant firm initiatives - How do you do it?...

Dependency administration in giant firm initiatives – How do you do it? – Technical Dialogue

Hey. :wave:

Just a bit preamble to introduce myself and the context of my query: I began studying Go round 6 years in the past as a pure facet mission language. At first of final 12 months, I really acquired employed in an organization which works primarily with Go for his or her backend initiatives. They began with it years earlier than go modules have been a factor and the whole lot was managed through the GOPATH. They developed an superior customized bundle administration instrument which integrates nice of their automation system, manages mirrors of dependencies and helps creating license abstract exports. However now, we need to migrate to go modules as an alternative of utilizing the GOPATH system.

I did some investigation on the way it may very well be attainable to create a customized dependency administration system together with go modules and it got here out to be fairly tough and hacky. I adopted the strategy to place packages into the vendor/ listing, which is then utilized by the go toolchain to seek for exterior packages. However this additionally signifies that you must manually create and handle the go.mod file, which is de facto not an ideal expertise and likewise feels prefer it may break at any time.

I do know that some initiatives like cockroach use customized construct instruments like bazel. However we really actually like to make use of to have the ability to construct our initiatives merely with the nice go toolchain and don’t actually goal to dive deep into customized construct options.

Now, in case you are working with go at an organization, how do you handle your dependencies? Do you merely use go get? Do you will have a customized dependency supervisor and if sure, how does it work? What are your mirroring and offline construct methods?

Thanks very a lot prematurely to your responses. :slight_smile:

go get and go mod vendor are the first means and the toolchain joyful path.


This publish was flagged by the group and is briefly hidden.

Some corporations develop their very own customized bundle administration instruments for particular wants. These instruments might help with mirroring, dependency versioning, and license administration. If your organization already has a customized bundle supervisor that works effectively, it may be price integrating it with Go Modules. This might contain extending or adapting the customized instrument to work together with the Go Modules workflow.



Please enter your comment!
Please enter your name here

Most Popular

Recent Comments