Documentation
¶
Index ¶
- Constants
- Variables
- func AutoUpdate(currentVersion string) error
- func CheckForUpdates(currentVersion string) (bool, string, error)
- type BackupManager
- func (bm *BackupManager) CleanOldBackups() error
- func (bm *BackupManager) CreateBackup() error
- func (bm *BackupManager) GetBackupPath() string
- func (bm *BackupManager) GetLatestBackupPath() (string, error)
- func (bm *BackupManager) ListBackups() ([]string, error)
- func (bm *BackupManager) RestoreBackup() error
- func (bm *BackupManager) VerifyBackup() error
- type DownloadManager
- func (dm *DownloadManager) CalculateChecksum(filePath string) (string, error)
- func (dm *DownloadManager) CleanDownloads() error
- func (dm *DownloadManager) DownloadLatestVersion(version string) (string, error)
- func (dm *DownloadManager) GetDownloadPath() string
- func (dm *DownloadManager) GetDownloadSize(url string) (int64, error)
- func (dm *DownloadManager) GetDownloadURL(version string) (string, error)
- func (dm *DownloadManager) GetFilename(version string) string
- func (dm *DownloadManager) VerifyChecksum(filePath, expectedChecksum string) error
- func (dm *DownloadManager) VerifyDownload(filePath, version string) error
- type GitHubRelease
- type InstallManager
- func (im *InstallManager) Cleanup(extractPath string) error
- func (im *InstallManager) ExtractArchive(archivePath string) (string, error)
- func (im *InstallManager) GetInstallPath() string
- func (im *InstallManager) InstallNewVersion(downloadPath, version string) error
- func (im *InstallManager) ReplaceBinary(extractPath string) error
- func (im *InstallManager) RestoreData() error
- func (im *InstallManager) RollbackInstallation() error
- func (im *InstallManager) VerifyInstallation() error
- type RollbackManager
- func (rm *RollbackManager) CleanupRollbackLog() error
- func (rm *RollbackManager) DetectInstallationFailure(installPath string) error
- func (rm *RollbackManager) GetRollbackInfo() (map[string]interface{}, error)
- func (rm *RollbackManager) GetRollbackLog() (string, error)
- func (rm *RollbackManager) IsRollbackAvailable() bool
- func (rm *RollbackManager) NotifyUser(message string)
- func (rm *RollbackManager) PerformRollback() error
- func (rm *RollbackManager) RestoreDataFromBackup() error
- func (rm *RollbackManager) RestorePreviousVersion() error
- func (rm *RollbackManager) VerifyRollback() error
- type UpgradeInfo
- type VersionManager
- func (vm *VersionManager) CompareVersions(current, latest string) (bool, error)
- func (vm *VersionManager) DetectPythonInstallation() (bool, string, error)
- func (vm *VersionManager) GetBinaryName() string
- func (vm *VersionManager) GetCurrentVersion() (string, error)
- func (vm *VersionManager) GetInstallationPath() (string, error)
- func (vm *VersionManager) GetLatestVersion() (string, error)
- func (vm *VersionManager) GetUpgradeInfo() (*UpgradeInfo, error)
- func (vm *VersionManager) IsGoInstallation() (bool, error)
Constants ¶
const ( // RepoOwner es el propietario del repositorio RepoOwner = "lucasvidela94" // RepoName es el nombre del repositorio RepoName = "workflow-cli" )
Variables ¶
var CurrentVersion = core.Version
CurrentVersion es la versión actual del CLI (usando la versión centralizada)
Functions ¶
func AutoUpdate ¶
AutoUpdate descarga e instala la última versión automáticamente
Types ¶
type BackupManager ¶
type BackupManager struct {
// contains filtered or unexported fields
}
BackupManager maneja las operaciones de backup
func NewBackupManager ¶
func NewBackupManager() *BackupManager
NewBackupManager crea un nuevo gestor de backup
func (*BackupManager) CleanOldBackups ¶
func (bm *BackupManager) CleanOldBackups() error
CleanOldBackups limpia backups antiguos (mantiene solo los últimos 5)
func (*BackupManager) CreateBackup ¶
func (bm *BackupManager) CreateBackup() error
CreateBackup crea un backup completo de los datos del usuario
func (*BackupManager) GetBackupPath ¶
func (bm *BackupManager) GetBackupPath() string
GetBackupPath devuelve la ruta del directorio de backup
func (*BackupManager) GetLatestBackupPath ¶
func (bm *BackupManager) GetLatestBackupPath() (string, error)
GetLatestBackupPath obtiene la ruta del backup más reciente
func (*BackupManager) ListBackups ¶
func (bm *BackupManager) ListBackups() ([]string, error)
ListBackups lista todos los backups disponibles
func (*BackupManager) RestoreBackup ¶
func (bm *BackupManager) RestoreBackup() error
RestoreBackup restaura los datos desde el backup más reciente
func (*BackupManager) VerifyBackup ¶
func (bm *BackupManager) VerifyBackup() error
VerifyBackup verifica la integridad del backup
type DownloadManager ¶
type DownloadManager struct {
// contains filtered or unexported fields
}
DownloadManager maneja las operaciones de descarga
func NewDownloadManager ¶
func NewDownloadManager() *DownloadManager
NewDownloadManager crea un nuevo gestor de descarga
func (*DownloadManager) CalculateChecksum ¶
func (dm *DownloadManager) CalculateChecksum(filePath string) (string, error)
CalculateChecksum calcula el checksum SHA256 de un archivo
func (*DownloadManager) CleanDownloads ¶
func (dm *DownloadManager) CleanDownloads() error
CleanDownloads limpia archivos de descarga antiguos
func (*DownloadManager) DownloadLatestVersion ¶
func (dm *DownloadManager) DownloadLatestVersion(version string) (string, error)
DownloadLatestVersion descarga la última versión disponible
func (*DownloadManager) GetDownloadPath ¶
func (dm *DownloadManager) GetDownloadPath() string
GetDownloadPath devuelve la ruta del directorio de descargas
func (*DownloadManager) GetDownloadSize ¶
func (dm *DownloadManager) GetDownloadSize(url string) (int64, error)
GetDownloadSize obtiene el tamaño del archivo a descargar
func (*DownloadManager) GetDownloadURL ¶
func (dm *DownloadManager) GetDownloadURL(version string) (string, error)
GetDownloadURL construye la URL de descarga para la versión
func (*DownloadManager) GetFilename ¶
func (dm *DownloadManager) GetFilename(version string) string
GetFilename genera el nombre del archivo de descarga
func (*DownloadManager) VerifyChecksum ¶
func (dm *DownloadManager) VerifyChecksum(filePath, expectedChecksum string) error
VerifyChecksum verifica el checksum de un archivo
func (*DownloadManager) VerifyDownload ¶
func (dm *DownloadManager) VerifyDownload(filePath, version string) error
VerifyDownload verifica la integridad del archivo descargado
type GitHubRelease ¶
type GitHubRelease struct { TagName string `json:"tag_name"` Assets []struct { Name string `json:"name"` BrowserDownloadURL string `json:"browser_download_url"` } `json:"assets"` }
GitHubRelease representa la respuesta de la API de GitHub
type InstallManager ¶
type InstallManager struct {
// contains filtered or unexported fields
}
InstallManager maneja las operaciones de instalación
func NewInstallManager ¶
func NewInstallManager() *InstallManager
NewInstallManager crea un nuevo gestor de instalación
func (*InstallManager) Cleanup ¶
func (im *InstallManager) Cleanup(extractPath string) error
Cleanup limpia archivos temporales
func (*InstallManager) ExtractArchive ¶
func (im *InstallManager) ExtractArchive(archivePath string) (string, error)
ExtractArchive extrae el archivo tar.gz descargado
func (*InstallManager) GetInstallPath ¶
func (im *InstallManager) GetInstallPath() string
GetInstallPath devuelve la ruta de instalación
func (*InstallManager) InstallNewVersion ¶
func (im *InstallManager) InstallNewVersion(downloadPath, version string) error
InstallNewVersion instala la nueva versión
func (*InstallManager) ReplaceBinary ¶
func (im *InstallManager) ReplaceBinary(extractPath string) error
ReplaceBinary reemplaza el binario actual con el nuevo
func (*InstallManager) RestoreData ¶
func (im *InstallManager) RestoreData() error
RestoreData restaura los datos del backup
func (*InstallManager) RollbackInstallation ¶
func (im *InstallManager) RollbackInstallation() error
RollbackInstallation revierte la instalación
func (*InstallManager) VerifyInstallation ¶
func (im *InstallManager) VerifyInstallation() error
VerifyInstallation verifica que la instalación fue exitosa
type RollbackManager ¶
type RollbackManager struct {
// contains filtered or unexported fields
}
RollbackManager maneja las operaciones de rollback
func NewRollbackManager ¶
func NewRollbackManager() *RollbackManager
NewRollbackManager crea un nuevo gestor de rollback
func (*RollbackManager) CleanupRollbackLog ¶
func (rm *RollbackManager) CleanupRollbackLog() error
CleanupRollbackLog limpia el log de rollback
func (*RollbackManager) DetectInstallationFailure ¶
func (rm *RollbackManager) DetectInstallationFailure(installPath string) error
DetectInstallationFailure detecta si hubo un fallo en la instalación
func (*RollbackManager) GetRollbackInfo ¶
func (rm *RollbackManager) GetRollbackInfo() (map[string]interface{}, error)
GetRollbackInfo obtiene información sobre el rollback disponible
func (*RollbackManager) GetRollbackLog ¶
func (rm *RollbackManager) GetRollbackLog() (string, error)
GetRollbackLog obtiene el contenido del log de rollback
func (*RollbackManager) IsRollbackAvailable ¶
func (rm *RollbackManager) IsRollbackAvailable() bool
IsRollbackAvailable verifica si hay un rollback disponible
func (*RollbackManager) NotifyUser ¶
func (rm *RollbackManager) NotifyUser(message string)
NotifyUser notifica al usuario sobre el proceso de rollback
func (*RollbackManager) PerformRollback ¶
func (rm *RollbackManager) PerformRollback() error
PerformRollback ejecuta el rollback completo
func (*RollbackManager) RestoreDataFromBackup ¶
func (rm *RollbackManager) RestoreDataFromBackup() error
RestoreDataFromBackup restaura los datos desde el backup más reciente
func (*RollbackManager) RestorePreviousVersion ¶
func (rm *RollbackManager) RestorePreviousVersion() error
RestorePreviousVersion restaura la versión anterior del binario
func (*RollbackManager) VerifyRollback ¶
func (rm *RollbackManager) VerifyRollback() error
VerifyRollback verifica que el rollback fue exitoso
type UpgradeInfo ¶
type UpgradeInfo struct { CurrentVersion string LatestVersion string HasUpdate bool IsGoInstallation bool BinaryName string }
UpgradeInfo contiene información sobre el upgrade
type VersionManager ¶
type VersionManager struct {
// contains filtered or unexported fields
}
VersionManager maneja la detección y comparación de versiones
func NewVersionManager ¶
func NewVersionManager() *VersionManager
NewVersionManager crea un nuevo gestor de versiones
func (*VersionManager) CompareVersions ¶
func (vm *VersionManager) CompareVersions(current, latest string) (bool, error)
CompareVersions compara dos versiones y determina si hay actualización disponible
func (*VersionManager) DetectPythonInstallation ¶
func (vm *VersionManager) DetectPythonInstallation() (bool, string, error)
DetectPythonInstallation detecta si existe una instalación de Python
func (*VersionManager) GetBinaryName ¶
func (vm *VersionManager) GetBinaryName() string
GetBinaryName obtiene el nombre del binario para la plataforma actual
func (*VersionManager) GetCurrentVersion ¶
func (vm *VersionManager) GetCurrentVersion() (string, error)
GetCurrentVersion obtiene la versión actual
func (*VersionManager) GetInstallationPath ¶
func (vm *VersionManager) GetInstallationPath() (string, error)
GetInstallationPath obtiene la ruta de instalación actual
func (*VersionManager) GetLatestVersion ¶
func (vm *VersionManager) GetLatestVersion() (string, error)
GetLatestVersion obtiene la última versión disponible en GitHub
func (*VersionManager) GetUpgradeInfo ¶
func (vm *VersionManager) GetUpgradeInfo() (*UpgradeInfo, error)
GetUpgradeInfo obtiene información completa sobre el upgrade
func (*VersionManager) IsGoInstallation ¶
func (vm *VersionManager) IsGoInstallation() (bool, error)
IsGoInstallation verifica si la instalación actual es de Go