PlatformDatabaseBackupService
in package
Table of Contents
Constants
- BACKUP_TYPE : mixed = 'pg_dump'
- JOB_TYPE : mixed = 'platform_database_backup'
- KEK_SECRET_NAME : mixed = 'platform.backup.kek'
Properties
- $dumper : PlatformDatabaseBackupDumperInterface
- $encryptor : PlatformDatabaseBackupEncryptor
- $kekName : string
- $platformConfig : array<string|int, mixed>
- $platformConnection : Connection
- $secretStore : SecretStoreInterface
- $storage : PlatformDatabaseBackupStorageInterface
Methods
- __construct() : mixed
- backupPlatformDatabase() : PlatformDatabaseBackupResult
- databaseName() : string
- databasePassword() : SensitiveString
- insertBackup() : void
- kekVersion() : string
- now() : DateTime
- prepareJob() : void
- scrubError() : string
Constants
BACKUP_TYPE
public
mixed
BACKUP_TYPE
= 'pg_dump'
JOB_TYPE
public
mixed
JOB_TYPE
= 'platform_database_backup'
KEK_SECRET_NAME
public
mixed
KEK_SECRET_NAME
= 'platform.backup.kek'
Properties
$dumper read-only
private
PlatformDatabaseBackupDumperInterface
$dumper
$encryptor read-only
private
PlatformDatabaseBackupEncryptor
$encryptor
$kekName read-only
private
string
$kekName
= self::KEK_SECRET_NAME
$platformConfig read-only
private
array<string|int, mixed>
$platformConfig
$platformConnection read-only
private
Connection
$platformConnection
$secretStore read-only
private
SecretStoreInterface
$secretStore
$storage read-only
private
PlatformDatabaseBackupStorageInterface
$storage
Methods
__construct()
public
__construct(Connection $platformConnection, array<string, mixed> $platformConfig, SecretStoreInterface $secretStore, PlatformDatabaseBackupDumperInterface $dumper, PlatformDatabaseBackupEncryptor $encryptor, PlatformDatabaseBackupStorageInterface $storage[, string $kekName = self::KEK_SECRET_NAME ]) : mixed
Parameters
- $platformConnection : Connection
- $platformConfig : array<string, mixed>
-
Platform datasource configuration
- $secretStore : SecretStoreInterface
- $dumper : PlatformDatabaseBackupDumperInterface
- $encryptor : PlatformDatabaseBackupEncryptor
- $storage : PlatformDatabaseBackupStorageInterface
- $kekName : string = self::KEK_SECRET_NAME
backupPlatformDatabase()
public
backupPlatformDatabase([int $retentionDays = 30 ][, string|null $platformJobId = null ]) : PlatformDatabaseBackupResult
Parameters
- $retentionDays : int = 30
- $platformJobId : string|null = null
Return values
PlatformDatabaseBackupResultdatabaseName()
private
databaseName() : string
Return values
stringdatabasePassword()
private
databasePassword() : SensitiveString
Return values
SensitiveStringinsertBackup()
private
insertBackup(string $backupId, string $jobId, string $databaseName, int $retentionDays, DateTime $now) : void
Parameters
- $backupId : string
- $jobId : string
- $databaseName : string
- $retentionDays : int
- $now : DateTime
kekVersion()
private
kekVersion(string $kekName) : string
Parameters
- $kekName : string
Return values
stringnow()
private
now() : DateTime
Return values
DateTimeprepareJob()
private
prepareJob(string $jobId, string $databaseName, DateTime $now, bool $existing) : void
Parameters
- $jobId : string
- $databaseName : string
- $now : DateTime
- $existing : bool
scrubError()
private
scrubError(string $message) : string
Parameters
- $message : string