Skip to content

Commit 1791f56

Browse files
Merge pull request #32 from automagik-dev/fix/headless-keyring-setup
fix(auth): auto-setup keyring in headless auth flow
2 parents 93b6c14 + 9c7c6e3 commit 1791f56

1 file changed

Lines changed: 11 additions & 0 deletions

File tree

internal/cmd/auth.go

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ import (
1616
"github.com/automagik-dev/workit/internal/googleauth"
1717
"github.com/automagik-dev/workit/internal/outfmt"
1818
"github.com/automagik-dev/workit/internal/secrets"
19+
"github.com/automagik-dev/workit/internal/setup"
1920
"github.com/automagik-dev/workit/internal/ui"
2021
)
2122

@@ -730,6 +731,11 @@ func (c *AuthAddCmd) handleRemoteAuthStep(
730731
func (c *AuthAddCmd) runHeadless(ctx context.Context, client string, services []googleauth.Service, scopes []string) error {
731732
u := ui.FromContext(ctx)
732733

734+
// Auto-setup keyring password for Linux headless environments.
735+
if err := setup.SetupKeyringIfNeeded(os.Stderr); err != nil {
736+
fmt.Fprintf(os.Stderr, "Warning: keyring auto-setup failed: %v\n", err)
737+
}
738+
733739
// Pre-flight: ensure keychain is accessible before starting headless OAuth.
734740
if keychainErr := ensureKeychainAccessIfNeeded(); keychainErr != nil {
735741
return fmt.Errorf("keychain access: %w", keychainErr)
@@ -880,6 +886,11 @@ type AuthPollCmd struct {
880886
func (c *AuthPollCmd) Run(ctx context.Context) error {
881887
u := ui.FromContext(ctx)
882888

889+
// Auto-setup keyring password for Linux headless environments.
890+
if err := setup.SetupKeyringIfNeeded(os.Stderr); err != nil {
891+
fmt.Fprintf(os.Stderr, "Warning: keyring auto-setup failed: %v\n", err)
892+
}
893+
883894
if strings.TrimSpace(c.State) == "" {
884895
return usage("state is required")
885896
}

0 commit comments

Comments
 (0)