diff --git a/app/Models/Backup.php b/app/Models/Backup.php index e164b1ae3..5a8ab28e3 100644 --- a/app/Models/Backup.php +++ b/app/Models/Backup.php @@ -12,7 +12,7 @@ use Illuminate\Database\Eloquent\SoftDeletes; * @property string $name * @property string[] $ignored_files * @property string $disk - * @property string|null $sha256_hash + * @property string|null $checksum * @property int $bytes * @property \Carbon\CarbonImmutable|null $completed_at * @property \Carbon\CarbonImmutable $created_at @@ -62,7 +62,7 @@ class Backup extends Model */ protected $attributes = [ 'is_successful' => true, - 'sha256_hash' => null, + 'checksum' => null, 'bytes' => 0, ]; @@ -76,7 +76,7 @@ class Backup extends Model 'name' => 'required|string', 'ignored_files' => 'array', 'disk' => 'required|string', - 'sha256_hash' => 'nullable|string', + 'checksum' => 'nullable|string', 'bytes' => 'numeric', ]; diff --git a/app/Transformers/Api/Client/BackupTransformer.php b/app/Transformers/Api/Client/BackupTransformer.php index 15d6b357f..d5acd41fe 100644 --- a/app/Transformers/Api/Client/BackupTransformer.php +++ b/app/Transformers/Api/Client/BackupTransformer.php @@ -25,7 +25,7 @@ class BackupTransformer extends BaseClientTransformer 'is_successful' => $backup->is_successful, 'name' => $backup->name, 'ignored_files' => $backup->ignored_files, - 'sha256_hash' => $backup->sha256_hash, + 'checksum' => $backup->checksum, 'bytes' => $backup->bytes, 'created_at' => $backup->created_at->toIso8601String(), 'completed_at' => $backup->completed_at ? $backup->completed_at->toIso8601String() : null, diff --git a/database/migrations/2020_08_23_175331_modify_checksums_column_for_backups.php b/database/migrations/2020_08_23_175331_modify_checksums_column_for_backups.php new file mode 100644 index 000000000..8a9013cde --- /dev/null +++ b/database/migrations/2020_08_23_175331_modify_checksums_column_for_backups.php @@ -0,0 +1,41 @@ +renameColumn('sha256_hash', 'checksum'); + }); + + Schema::table('backups', function (Blueprint $table) { + DB::update('UPDATE backups SET checksum = CONCAT(\'sha256:\', checksum)'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::table('backups', function (Blueprint $table) { + $table->renameColumn('checksum', 'sha256_hash'); + }); + + Schema::table('backups', function (Blueprint $table) { + DB::update('UPDATE backups SET sha256_hash = SUBSTRING(sha256_hash, 8)'); + }); + } +} diff --git a/resources/scripts/api/server/types.d.ts b/resources/scripts/api/server/types.d.ts index e11a39c45..b37fae402 100644 --- a/resources/scripts/api/server/types.d.ts +++ b/resources/scripts/api/server/types.d.ts @@ -3,7 +3,7 @@ export interface ServerBackup { isSuccessful: boolean; name: string; ignoredFiles: string; - sha256Hash: string; + checksum: string; bytes: number; createdAt: Date; completedAt: Date | null; diff --git a/resources/scripts/api/transformers.ts b/resources/scripts/api/transformers.ts index 53ee514ed..595f2b9c8 100644 --- a/resources/scripts/api/transformers.ts +++ b/resources/scripts/api/transformers.ts @@ -46,7 +46,7 @@ export const rawDataToServerBackup = ({ attributes }: FractalResponseData): Serv isSuccessful: attributes.is_successful, name: attributes.name, ignoredFiles: attributes.ignored_files, - sha256Hash: attributes.sha256_hash, + checksum: attributes.checksum, bytes: attributes.bytes, createdAt: new Date(attributes.created_at), completedAt: attributes.completed_at ? new Date(attributes.completed_at) : null, diff --git a/resources/scripts/components/server/backups/BackupContextMenu.tsx b/resources/scripts/components/server/backups/BackupContextMenu.tsx index 9542389cc..422155cf9 100644 --- a/resources/scripts/components/server/backups/BackupContextMenu.tsx +++ b/resources/scripts/components/server/backups/BackupContextMenu.tsx @@ -66,7 +66,7 @@ export default ({ backup }: Props) => { appear visible={visible} onDismissed={() => setVisible(false)} - checksum={backup.sha256Hash} + checksum={backup.checksum} /> } { items: data.items.map(b => b.uuid !== backup.uuid ? b : ({ ...b, isSuccessful: parsed.is_successful || true, - sha256Hash: parsed.sha256_hash || '', + checksum: parsed.checksum || '', bytes: parsed.file_size || 0, completedAt: new Date(), })), diff --git a/resources/scripts/components/server/backups/ChecksumModal.tsx b/resources/scripts/components/server/backups/ChecksumModal.tsx index 91b275904..f37774f59 100644 --- a/resources/scripts/components/server/backups/ChecksumModal.tsx +++ b/resources/scripts/components/server/backups/ChecksumModal.tsx @@ -6,7 +6,7 @@ const ChecksumModal = ({ checksum, ...props }: RequiredModalProps & { checksum:

Verify file checksum

- The SHA256 checksum of this file is: + The checksum of this file is:

             {checksum}