Documentation
¶
Index ¶
- Variables
- type TeneError
- func ErrCommandNotFound(cmd string) *TeneError
- func ErrEnvironmentAlreadyExists(env string) *TeneError
- func ErrEnvironmentNotFound(env string) *TeneError
- func ErrEnvironmentProtected(env, reason string) *TeneError
- func ErrFileNotFound(path string) *TeneError
- func ErrFileParse(path string, line int, detail string) *TeneError
- func ErrInvalidKeyName(key string) *TeneError
- func ErrReservedKeyName(key string) *TeneError
- func ErrSecretAlreadyExists(key string) *TeneError
- func ErrSecretNotFound(key, env string) *TeneError
- func IsTeneError(err error) (*TeneError, bool)
- func New(code, message string, exit int) *TeneError
- func Newf(code string, exit int, format string, args ...any) *TeneError
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrDecryptFailed = &TeneError{
Code: "DECRYPT_FAILED", Message: "Failed to decrypt secret. Master Password may have changed.", Exit: 2,
}
View Source
var ErrDiskFull = &TeneError{
Code: "DISK_FULL", Message: "Cannot create vault: insufficient disk space.", Exit: 1,
}
View Source
var ErrEmptyValue = &TeneError{
Code: "EMPTY_VALUE", Message: "Value cannot be empty.", Exit: 1,
}
View Source
var ErrEncryptFailed = &TeneError{
Code: "ENCRYPT_FAILED", Message: "Encryption failed.", Exit: 1,
}
View Source
var ErrInteractiveRequired = &TeneError{
Code: "INTERACTIVE_REQUIRED", Message: "This command requires an interactive terminal.", Exit: 1,
}
View Source
var ErrInvalidBackupFile = &TeneError{
Code: "INVALID_BACKUP_FILE", Message: "Invalid encrypted backup file format.", Exit: 1,
}
View Source
var ErrInvalidEnvName = &TeneError{
Code: "INVALID_ENV_NAME", Message: "Invalid environment name. Must match [a-z][a-z0-9-]*.", Exit: 1,
}
View Source
var ErrInvalidPassword = &TeneError{
Code: "INVALID_PASSWORD", Message: "Invalid Master Password.", Exit: 2,
}
View Source
var ErrInvalidRecoveryKey = &TeneError{
Code: "INVALID_RECOVERY_KEY", Message: "Invalid Recovery Key.", Exit: 2,
}
View Source
var ErrKeychainError = &TeneError{
Code: "KEYCHAIN_ERROR", Message: "Keychain access failed.", Exit: 0,
}
View Source
var ErrPasswordMismatch = &TeneError{
Code: "PASSWORD_MISMATCH", Message: "Passwords do not match. Try again.", Exit: 2,
}
View Source
var ErrPasswordTooShort = &TeneError{
Code: "PASSWORD_TOO_SHORT", Message: "Master Password must be at least 8 characters.", Exit: 2,
}
View Source
var ErrPermissionDenied = &TeneError{
Code: "PERMISSION_DENIED", Message: "Permission denied.", Exit: 1,
}
View Source
var ErrStdoutSecretBlocked = New(
"STDOUT_SECRET_BLOCKED",
"Refusing to print secret to non-TTY stdout. "+
"Use `tene run -- <cmd>` (safer), or pass `--unsafe-stdout` or set "+
"TENE_ALLOW_STDOUT_SECRETS=1 if you really need plaintext piped output.",
2,
)
ErrStdoutSecretBlocked is returned by `tene get` when stdout is not a TTY and the caller has not explicitly opted into plaintext output. See internal/cli/get.go and docs/cli-reference.md#tene-get.
View Source
var ErrValueTooLarge = &TeneError{
Code: "VALUE_TOO_LARGE", Message: "Value exceeds maximum size (64KB).", Exit: 1,
}
View Source
var ErrVaultAlreadyExists = &TeneError{
Code: "VAULT_ALREADY_EXISTS", Message: "Vault already exists. Use existing vault.", Exit: 0,
}
View Source
var ErrVaultNotFound = &TeneError{
Code: "VAULT_NOT_FOUND", Message: "Not in a Tene project. Run \"tene init\" first.", Exit: 1,
}
Functions ¶
This section is empty.
Types ¶
type TeneError ¶
type TeneError struct {
Code string `json:"error"`
Message string `json:"message"`
Exit int `json:"-"`
}
TeneError is a structured CLI error. Code: machine-parseable error code (e.g., "VAULT_NOT_FOUND") Message: human-readable error message Exit: process exit code (0, 1, 2, 127)
func ErrCommandNotFound ¶
func ErrEnvironmentNotFound ¶
func ErrEnvironmentProtected ¶
func ErrFileNotFound ¶
func ErrInvalidKeyName ¶
func ErrReservedKeyName ¶
func ErrSecretAlreadyExists ¶
func ErrSecretNotFound ¶
func IsTeneError ¶
IsTeneError checks if an error is a *TeneError and returns it.
Click to show internal directories.
Click to hide internal directories.