Edit & Download (local) Backups (#436)

* Allow editing of backups

* pint updates

* setup of backup download

* allow download for local backup files

* delete uploaded files on delete of BackupFile

* pint updates

* S3 upload & download fixes

* Deletion of backup files

* support $ARCH selector for s3 installation

* delete files when deleting backup

* fixed ui issue

* adjustment

* Use system temp path for downloads

---------

Co-authored-by: Saeed Vaziry <mr.saeedvaziry@gmail.com>
This commit is contained in:
Richard Anderson
2025-01-25 20:59:35 +00:00
committed by GitHub
parent 465951fd1e
commit a73476c1dd
31 changed files with 382 additions and 184 deletions

View File

@ -13,7 +13,7 @@ public function upload(string $src, string $dest): array
$this->server->ssh()->exec(
$this->getScript('ftp/upload.sh', [
'src' => $src,
'dest' => $this->storageProvider->credentials['path'].'/'.$dest,
'dest' => $dest,
'host' => $this->storageProvider->credentials['host'],
'port' => $this->storageProvider->credentials['port'],
'username' => $this->storageProvider->credentials['username'],
@ -33,7 +33,7 @@ public function download(string $src, string $dest): void
{
$this->server->ssh()->exec(
$this->getScript('ftp/download.sh', [
'src' => $this->storageProvider->credentials['path'].'/'.$src,
'src' => $src,
'dest' => $dest,
'host' => $this->storageProvider->credentials['host'],
'port' => $this->storageProvider->credentials['port'],
@ -46,11 +46,19 @@ public function download(string $src, string $dest): void
);
}
/**
* @TODO Implement delete method
*/
public function delete(string $path): void
public function delete(string $src): void
{
//
$this->server->ssh()->exec(
$this->getScript('ftp/delete-file.sh', [
'src' => $src,
'host' => $this->storageProvider->credentials['host'],
'port' => $this->storageProvider->credentials['port'],
'username' => $this->storageProvider->credentials['username'],
'password' => $this->storageProvider->credentials['password'],
'ssl' => $this->storageProvider->credentials['ssl'],
'passive' => $this->storageProvider->credentials['passive'],
]),
'delete-from-ftp'
);
}
}