Content Deep Dive
GTA: Detecting affected dependent Go packages
Blog post from DigitalOcean
Post Details
Company
Date Published
Author
Billie Cleek
Word Count
1,395
Language
English
Hacker News Points
1
Summary
The open-source tool gta (Go Test Auto) is used to understand the downstream dependencies of Go packages changed in pull requests to monorepositories like cthulhu. It compares the current branch with its merge base of the destination branch to determine what's been changed and calculates all dependencies of those changes, outputting the import paths of affected packages. Gta dramatically reduces build times by targeting only impacted packages. The tool is now used almost everywhere in DigitalOcean's build pipeline, including static analysis checks, code compilation and testing, and artifact builds and deployment.