1244d2ff

By: Michael Lynch <git@mtlynch.io>

Stamp Go binaries with VCS metadata in Nix builds

Nix copies source trees without .git metadata, so Go could not include vcs.revision, vcs.time, or vcs.modified in binaries built with buildGoModule.

Synthesize the small git surface Go needs during package builds so the existing build info reporting on the about page receives real VCS metadata.

Suite timing

Time to Start Worker time Duration Time to finish Idle
Config 1s 7s 7s 9s 1s
Eval 7s 58s 58s 1m06s 0s
Build 16s 5m00s 2m00s 2m16s 0s
Test 1m22s 6m10s 6m11s 7m34s 2m31s
Suite 1s 12m17s 7m32s 7m34s 2m33s

Timeline

0s1m2m3m4m5m6m7m