Documentation
¶
Index ¶
- func NewMySQLConfig(host, port, user, password, database string) *backup.MySQLConfig
- func NewSchedulerConfig(name string, backupMode string, databaseConfig *backup.MySQLConfig, ...) *backup.SchedulerConfig
- type BackupResult
- type Config
- type LazyManager
- func (lm *LazyManager) AddBackupMySQLConfig(name string, mode string, dbConfig *backup.MySQLConfig, expression string) error
- func (lm *LazyManager) Close() error
- func (lm *LazyManager) DeleteAllBackupConfig() error
- func (lm *LazyManager) DeleteBackupConfig(name string) error
- func (lm *LazyManager) GetAuthURL() string
- func (lm *LazyManager) GetTokenInfo() (*auth.TokenInfo, error)
- func (lm *LazyManager) Initialize() error
- func (lm *LazyManager) SetAuthCode(authCode string) error
- func (lm *LazyManager) SyncNotifications() error
- func (lm *LazyManager) SyncSchedulerConfig() error
- func (lm *LazyManager) UpdateBackupConfig(name, cronSchedule string, enabled bool) error
- func (lm *LazyManager) ValidateToken() error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewMySQLConfig ¶
func NewMySQLConfig(host, port, user, password, database string) *backup.MySQLConfig
NewMySQLConfig creates a new MySQL configuration
func NewSchedulerConfig ¶
func NewSchedulerConfig(name string, backupMode string, databaseConfig *backup.MySQLConfig, cronExpression string) *backup.SchedulerConfig
NewMySQLConfig creates a new Scheduler configuration
Types ¶
type BackupResult ¶
type Config ¶
type Config struct { // Google OAuth2 credentials OAuthConfig *oauth2.Config // MySQL database configuration for storing package metadata DatabaseConfig *backup.MySQLConfig // Notification config for send notifications NotificationConfig []notification.NotificationConfig // Scheduler configured to control backup intervals SchedulerConfig []backup.SchedulerConfig // Backup temporary directory (optional, uses system temp by default) TempDir string }
type LazyManager ¶
type LazyManager struct {
// contains filtered or unexported fields
}
func NewBackupManager ¶
func NewBackupManager(config *Config) (*LazyManager, error)
NewBackupManager creates a new backup manager instance
func (*LazyManager) AddBackupMySQLConfig ¶
func (lm *LazyManager) AddBackupMySQLConfig(name string, mode string, dbConfig *backup.MySQLConfig, expression string) error
AddBackupMySQLConfig adds a new backup configuration using DatabaseConfig interface
func (*LazyManager) Close ¶
func (lm *LazyManager) Close() error
Close gracefully shuts down the backup manager
func (*LazyManager) DeleteAllBackupConfig ¶
func (lm *LazyManager) DeleteAllBackupConfig() error
func (*LazyManager) DeleteBackupConfig ¶
func (lm *LazyManager) DeleteBackupConfig(name string) error
DeleteBackupConfig removes a backup configuration
func (*LazyManager) GetAuthURL ¶
func (lm *LazyManager) GetAuthURL() string
GetAuthURL returns the OAuth2 authorization URL
func (*LazyManager) GetTokenInfo ¶
func (lm *LazyManager) GetTokenInfo() (*auth.TokenInfo, error)
GetTokenInfo returns information about the current token
func (*LazyManager) Initialize ¶
func (lm *LazyManager) Initialize() error
Initialize performs initial setup and starts the scheduler
func (*LazyManager) SetAuthCode ¶
func (lm *LazyManager) SetAuthCode(authCode string) error
SetAuthCode exchanges the authorization code for tokens
func (*LazyManager) SyncNotifications ¶
func (lm *LazyManager) SyncNotifications() error
func (*LazyManager) SyncSchedulerConfig ¶
func (lm *LazyManager) SyncSchedulerConfig() error
Sync scheduler conffig
func (*LazyManager) UpdateBackupConfig ¶
func (lm *LazyManager) UpdateBackupConfig(name, cronSchedule string, enabled bool) error
UpdateBackupConfig updates an existing backup configuration
func (*LazyManager) ValidateToken ¶
func (lm *LazyManager) ValidateToken() error
ValidateToken validates the current token by making a test API call