@@ -273,6 +273,9 @@ func (b GolangCrossBuilder) Build() error {
273273 return fmt .Errorf ("failed to determine repo root and package sub dir: %w" , err )
274274 }
275275
276+ uid := os .Getuid ()
277+ gid := os .Getgid ()
278+
276279 mountPoint := filepath .ToSlash (filepath .Join ("/go" , "src" , repoInfo .CanonicalRootImportPath ))
277280 // use custom dir for build if given, subdir if not:
278281 cwd := repoInfo .SubDir
@@ -314,8 +317,8 @@ func (b GolangCrossBuilder) Build() error {
314317
315318 if runtime .GOOS != "windows" {
316319 args = append (args ,
317- "--env" , "EXEC_UID=" + strconv . Itoa ( os . Getuid () ),
318- "--env" , "EXEC_GID=" + strconv . Itoa ( os . Getgid () ),
320+ "--env" , fmt . Sprintf ( "EXEC_UID=%d" , uid ),
321+ "--env" , fmt . Sprintf ( "EXEC_GID=%d" , gid ),
319322 )
320323 }
321324 if versionQualified {
@@ -353,6 +356,7 @@ func (b GolangCrossBuilder) Build() error {
353356 "--env" , fmt .Sprintf ("DEV=%v" , DevBuild ),
354357 "--env" , fmt .Sprintf ("EXTERNAL=%v" , ExternalBuild ),
355358 "--env" , fmt .Sprintf ("FIPS=%v" , FIPSBuild ),
359+ "--user" , fmt .Sprintf ("%d:%d" , uid , gid ),
356360 "-v" , repoInfo .RootDir + ":" + mountPoint ,
357361 "-w" , workDir ,
358362 image ,
0 commit comments