Documentation
¶
Index ¶
- func CheckBitwardenLoginStatus() (bool, error)
- func EnsureBitwardenSession() (string, error)
- func ExtractSSHKeyFromItem(item *BitwardenItem) (string, error)
- func IsVerbose(cmd *cobra.Command) bool
- func SaveOrUpdateBitwardenSecret(name, secret, notes string) (string, error)
- func StartChildProcess(c *exec.Cmd) error
- func SyncDirectory(srcDir, destDir string, isVerbose bool) error
- func UnlockBitwardenVault() error
- type BitwardenField
- type BitwardenItem
- type BitwardenLogin
- type Spinner
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CheckBitwardenLoginStatus ¶ added in v0.29.5
CheckBitwardenLoginStatus checks if the user is logged into Bitwarden
func EnsureBitwardenSession ¶ added in v0.29.6
EnsureBitwardenSession ensures the Bitwarden vault is unlocked and returns a session key. It first checks BW_SESSION and status; if locked, it prompts for the master password using `bw unlock --raw` and returns the session token. If unauthenticated, it attempts `bw login`.
func ExtractSSHKeyFromItem ¶ added in v0.29.5
func ExtractSSHKeyFromItem(item *BitwardenItem) (string, error)
ExtractSSHKeyFromItem extracts SSH private key from a Bitwarden item
func IsVerbose ¶ added in v0.14.3
IsVerbose checks if the "verbose" flag is set for the given Cobra command. It first checks if the verbose flag is explicitly set on the command. If not, it falls back to the config value using viper.
Parameters:
- cmd: A pointer to a Cobra command from which the "verbose" flag is retrieved.
Returns:
- bool: True if the "verbose" flag is set to true, otherwise false.
func SaveOrUpdateBitwardenSecret ¶ added in v0.29.6
SaveOrUpdateBitwardenSecret saves a secret value into Bitwarden under the given item name. If the item exists, it will be updated; otherwise it is created. A custom field named "eng-cli" with value "true" is added to tag usage by this CLI.
func StartChildProcess ¶
StartChildProcess starts a child process with the given exec.Cmd configuration. It sets up the standard input, output, and error streams to be the same as the parent process. Additionally, it captures interrupt signals (ctl + c) and forwards them to the child process.
Parameters:
- c: A pointer to an exec.Cmd struct representing the command to be executed.
Returns:
- error: An error if the command fails to start or exits with a non-zero status. Returns nil if the command completes successfully.
The function starts the command and waits for it to finish.
func SyncDirectory ¶
SyncDirectory synchronizes the contents of the source directory (srcDir) with the destination directory (destDir). It copies files and recursively syncs subdirectories. If isVerbose is true, it logs the files being copied.
Parameters:
- srcDir: The source directory to sync from.
- destDir: The destination directory to sync to.
- isVerbose: A boolean flag to enable verbose logging.
Returns:
- error: An error if any occurs during the synchronization process., otherwise nil.
func UnlockBitwardenVault ¶ added in v0.29.5
func UnlockBitwardenVault() error
UnlockBitwardenVault prompts the user to unlock their Bitwarden vault
Types ¶
type BitwardenField ¶ added in v0.29.5
type BitwardenField struct {
Name string `json:"name"`
Value string `json:"value"`
Type int `json:"type"`
}
BitwardenField represents a custom field in a Bitwarden item
type BitwardenItem ¶ added in v0.29.5
type BitwardenItem struct {
ID string `json:"id"`
Name string `json:"name"`
Fields []BitwardenField `json:"fields,omitempty"`
Login *BitwardenLogin `json:"login,omitempty"`
Notes string `json:"notes,omitempty"`
}
BitwardenItem represents a Bitwarden vault item
func FindSSHKeysInVault ¶ added in v0.29.5
func FindSSHKeysInVault() ([]BitwardenItem, error)
FindSSHKeysInVault searches for SSH key items in the Bitwarden vault
func GetBitwardenItem ¶ added in v0.29.5
func GetBitwardenItem(name string) (*BitwardenItem, error)
GetBitwardenItem retrieves an item from Bitwarden vault by name
func ListBitwardenItems ¶ added in v0.29.5
func ListBitwardenItems() ([]BitwardenItem, error)
ListBitwardenItems returns all items in the vault (filtered by type if specified)
type BitwardenLogin ¶ added in v0.29.5
type BitwardenLogin struct {
Username string `json:"username,omitempty"`
Password string `json:"password,omitempty"`
}
BitwardenLogin represents login credentials
type Spinner ¶ added in v0.17.21
type Spinner struct {
// contains filtered or unexported fields
}
Spinner wraps the mpb.Progress container and a single bar. It's designed to manage a single progress bar and allow logging messages above the bar without disrupting it.
func NewProgressSpinner ¶ added in v0.17.22
NewProgressSpinner creates a spinner that displays progress as a bar.
func NewSpinner ¶ added in v0.17.21
NewSpinner creates a new spinner with a default indeterminate style.
func (*Spinner) SetProgressBar ¶ added in v0.17.22
SetProgressBar sets the progress of the bar. Progress should be from 0.0 to 1.0.
func (*Spinner) Start ¶ added in v0.17.21
func (s *Spinner) Start()
Start does nothing in this implementation, as the bar is visible on creation.
func (*Spinner) Stop ¶ added in v0.17.21
func (s *Spinner) Stop()
Stop marks the bar as completed and waits for the progress container to finish.
func (*Spinner) UpdateMessage ¶ added in v0.17.21
UpdateMessage updates the message displayed next to the spinner/bar.
Directories
¶
| Path | Synopsis |
|---|---|
|
Package config is a helper package to facilitate getting and setting config values using Viper.
|
Package config is a helper package to facilitate getting and setting config values using Viper. |
|
Package log is a wrapper around colorizing the log output.
|
Package log is a wrapper around colorizing the log output. |