sigstore / gitsign

Keyless Git signing using Sigstore
Other
950 stars 63 forks source link

Support gitsign-credential-cache on Windows #579

Closed adityasaky closed 1 month ago

adityasaky commented 1 month ago

Summary

This PR adds support for Windows to gitsign-credential-cache. Fixes #497

Release Note

Added support for Windows to gitsign-credential-cache

Documentation

NONE

adityasaky commented 1 month ago

I haven't had a chance to check this on my Windows machine yet. A relevant discussion as an alternative to syscall.Umask: https://github.com/golang/go/issues/11822

Also, I'm not sure of the impact of taking out the Umask call on the systemd flow, should we Umask there? I think that should be managed by systemd for us but I'm unsure. We can at least be sure Umask is supported anywhere systemd is used.

adityasaky commented 1 month ago

I can confirm this works on Windows!

<REDACTED> MINGW64 ~/repos/sigstore/test-credential-cache (master)
$ git commit -m "Commit" --allow-empty -S
Get <REDACTED>@C:\Users\ayelgundhall\repos\sigstore\test-credential-cache
no cred found, going through intereractive flow...
Your browser will now be opened to:
https://oauth2.sigstore.dev/auth/auth?access_type=online&client_id=sigstore&code_challenge=hkhZdRxJAE5WsMwoJ1nt7OJx6xQ9Kz_ULpwgNI5Woho&code_challenge_method=S256&nonce=2nd6hUHLYFqvq5xElM13Ax1I13s&redirect_uri=http%3A%2F%2Flocalhost%3A60351%2Fauth%2Fcallback&response_type=code&scope=openid+email&state=2nd6hTGU7g4VOsBWN1QyxSvjcVy
tlog entry created with index: 141501326
[master 559402a] Commit

<REDACTED> MINGW64 ~/repos/sigstore/test-credential-cache (master)
$ git commit -m "Commit" --allow-empty -S
Get <REDACTED>@C:\Users\ayelgundhall\repos\sigstore\test-credential-cache
found cred!
tlog entry created with index: 141501336
[master 7002f5d] Commit

(I can sneak in a fix for the typo)

adityasaky commented 1 month ago

thanks!