My last blog post was about the difference in speed downloading Go modules from a version control system or from GoCenter. I got a bunch of questions on Twitter on why that was and this blog post goes into a bit more detail on how the Go client gets modules. TL;DR Using GoCenter speeds up the download of your Go modules because it uses the right protocol when downloading files, saves on the number of HTTP calls and doesn’t have to recreate the module on the client side.
After GoCenter was first released the team at JFrog said it was faster to get modules from there than it was getting modules “the old way”. To be honest, when they said that, I did not believe them. Following the old proverb “seeing is believing”, I set out to test the speed and see whether those claims were accurate. TL;DR: It turns out the team was right!
Go is the language of choice for a lot of (cloud-native) projects because it creates very streamlined binaries. We used to “vendor” in all dependencies, but with Go Modules we now have real dependency management. We’ll show you a few pipelines from code to production and see if Modules are that much better to make builds lightning quick and hassle-free.
Today, Kubernetes is the defacto standard if you want to run container workloads in a production environment. As we set out to build our next generation of products, and run them smoothly in the cloud, we needed to move to Kubernetes too! In the process of building tools like KubeXray and GoCenter we learned a whole bunch. At the Amsterdam Kubernetes/Cloud-Native Meetup I presented a talk in which we walked through our lessons learned and how we’re running it at scale.
In this webinar, we’ll look at Go modules and why it is such an improvement over vendoring, we’ll show you why dependency management is so important, and we’ll build a CI/CD pipeline for your Go projects using GoCenter!
This is the fourth and final post in the blog series on using GitHub Actions with the JFrog CLI and JFrog Artifactory. In this post we’ll look at building an app and uploading it, together with the BuildInfo, to Artifactory. If you have any thoughts on what the next series of posts should be, let me know here or on Twitter!
I was lucky enough to get access to GitHub Actions over the Christmas break and wanted to use that new found technology to build a few tutorials. Since I also just started at JFrog, I combined learning the JFrog Technology with building awesome actions. Last week’s article built a Go app using Artifactory, the CLI and GitHub Actions and this one will continue that by publishing the Go app as a module.
With the release of Go 1.11 also came the introduction of Go Modules. That introduction was awesome, but it did leave a few issues unsolved. Using GOPROXY is an “all or nothing” exercise, meaning you have to get all your modules from the same place, or your build will fail.
I was lucky enough to get access to GitHub Actions over the Christmas break and wanted to use that new found technology to build a few tutorials. Since I also just started at JFrog, I combined learning the JFrog Technology with building awesome actions. The first article was building a custom GitHub Action and this one will continue that work by building an awesome Go app.