Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

go vcs stamping will break with new git #232

Open
igor-hnizdo opened this issue Sep 9, 2022 · 2 comments · Fixed by arduino/uno-r4-wifi-fwuploader-plugin#5
Open

go vcs stamping will break with new git #232

igor-hnizdo opened this issue Sep 9, 2022 · 2 comments · Fixed by arduino/uno-r4-wifi-fwuploader-plugin#5
Labels
Team:Automation Label for the Observability productivity team

Comments

@igor-hnizdo
Copy link

This is not an issue yet, but once you update debian to new versions, it will.

Git 2.35.2, released this April, fix a vulnerability CVE-2022-24765 ; it fixes it by requiring the user running git be the owner of the repo.

This affects go builds, as go run git to get the vcs for the vcs stamping (since go 1.18); an in this repo, the owner of the repo is different, than user inside the docker container (that is root). (Note, this is not issue on macos hosts, as they do some VM trickery.)

The fix is to use git config --global --add safe.directory <the build folder> as a command before the build is done. Or maybe even in the Dockerfile itself.

(This is NOT YET and issue for this repo, but might be in the future when you update debian.)

@gsantoro
Copy link

This issue is now affecting my PR at elastic/beats#34224

@cmacknz cmacknz added the Team:Automation Label for the Observability productivity team label Jan 11, 2023
v1v added a commit to v1v/beats that referenced this issue Jan 12, 2023
cmaglie added a commit to cmaglie/arduino-cli that referenced this issue Mar 10, 2023
The error was due to an increased git security constraints

  ...
  go: downloading github.com/xanzy/ssh-agent v0.2.1
  go: downloading gopkg.in/warnings.v0 v0.1.2
  error obtaining VCS status: exit status 128
	Use -buildvcs=false to disable VCS stamping.
  Error: failed building for darwin/amd64: exit status 1
  failed building for darwin/amd64: exit status 1
  task: Failed to run task "dist:macOS_64bit": exit status 1

To fix this I followed the suggestion here elastic/golang-crossbuild#232
cmaglie added a commit to cmaglie/arduino-cli that referenced this issue Mar 11, 2023
The error was due to an increased git security constraints

  ...
  go: downloading github.com/xanzy/ssh-agent v0.2.1
  go: downloading gopkg.in/warnings.v0 v0.1.2
  error obtaining VCS status: exit status 128
	Use -buildvcs=false to disable VCS stamping.
  Error: failed building for darwin/amd64: exit status 1
  failed building for darwin/amd64: exit status 1
  task: Failed to run task "dist:macOS_64bit": exit status 1

To fix this I followed the suggestion here elastic/golang-crossbuild#232
cmaglie added a commit to cmaglie/arduino-cli that referenced this issue Mar 14, 2023
The error was due to an increased git security constraints

  ...
  go: downloading github.com/xanzy/ssh-agent v0.2.1
  go: downloading gopkg.in/warnings.v0 v0.1.2
  error obtaining VCS status: exit status 128
	Use -buildvcs=false to disable VCS stamping.
  Error: failed building for darwin/amd64: exit status 1
  failed building for darwin/amd64: exit status 1
  task: Failed to run task "dist:macOS_64bit": exit status 1

To fix this I followed the suggestion here elastic/golang-crossbuild#232
cmaglie added a commit to arduino/arduino-cli that referenced this issue Mar 27, 2023
* Upgrade minimum go version to 1.20

* Updated license cache

* Implemented code coverage in integration tests

* Use gocovmerge to merge all coverage artifacts

* Fixed build error on macOS dist

The error was due to an increased git security constraints

  ...
  go: downloading github.com/xanzy/ssh-agent v0.2.1
  go: downloading gopkg.in/warnings.v0 v0.1.2
  error obtaining VCS status: exit status 128
	Use -buildvcs=false to disable VCS stamping.
  Error: failed building for darwin/amd64: exit status 1
  failed building for darwin/amd64: exit status 1
  task: Failed to run task "dist:macOS_64bit": exit status 1

To fix this I followed the suggestion here elastic/golang-crossbuild#232

* Before killing the daemon, try a graceful shutdown

Otherwise the process will not outut the coverage data.
@v1v
Copy link
Member

v1v commented Nov 23, 2023

elastic/beats#34254 fixed the issue in Beats

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Team:Automation Label for the Observability productivity team
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants