Skip to content

Commit 273cd30

Browse files
authored
feat(rdb): print messages while exporting backup (#3479)
1 parent 5ddaad4 commit 273cd30

11 files changed

+1380
-1434
lines changed

β€Žinternal/namespaces/rdb/v1/custom_backup.goβ€Ž

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ import (
1414
"github.com/fatih/color"
1515
"github.com/scaleway/scaleway-cli/v2/internal/core"
1616
"github.com/scaleway/scaleway-cli/v2/internal/human"
17+
"github.com/scaleway/scaleway-cli/v2/internal/interactive"
1718
"github.com/scaleway/scaleway-sdk-go/api/rdb/v1"
1819
"github.com/scaleway/scaleway-sdk-go/scw"
1920
)
@@ -291,7 +292,12 @@ func backupDownloadCommand() *core.Command {
291292
if err != nil {
292293
return nil, err
293294
}
294-
if backup.DownloadURL == nil {
295+
needExport := backup.DownloadURL == nil
296+
if needExport {
297+
_, err = interactive.Print("Exporting backup... ")
298+
if err != nil {
299+
return nil, err
300+
}
295301
exportRequest := rdb.ExportDatabaseBackupRequest{
296302
DatabaseBackupID: args.BackupID,
297303
Region: args.Region,
@@ -306,6 +312,12 @@ func backupDownloadCommand() *core.Command {
306312
if err != nil {
307313
return nil, err
308314
}
315+
if needExport {
316+
_, err = interactive.Println("OK")
317+
}
318+
if err != nil {
319+
return nil, err
320+
}
309321

310322
httpClient := core.ExtractHTTPClient(ctx)
311323
res, err := httpClient.Get(*backup.DownloadURL)

β€Žinternal/namespaces/rdb/v1/testdata/test-create-backup-simple.cassette.yamlβ€Ž

Lines changed: 208 additions & 154 deletions
Large diffs are not rendered by default.

β€Žinternal/namespaces/rdb/v1/testdata/test-create-backup-simple.goldenβ€Ž

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
22
🟩🟩🟩 STDOUT️ 🟩🟩🟩️
3-
ID 3bf50ced-a397-4b85-bcb1-cd7b50b8dd5c
4-
InstanceID 35318361-b651-4879-820d-a061a70f2f86
3+
ID 895f74c4-e352-4de5-b06f-495ec8d07722
4+
InstanceID 0c4a2cde-c9f4-4090-a1eb-815f29d1e3f7
55
DatabaseName rdb
66
Name foobar
77
Status ready
@@ -14,8 +14,8 @@ Region nl-ams
1414
SameRegion false
1515
🟩🟩🟩 JSON STDOUT 🟩🟩🟩
1616
{
17-
"id": "3bf50ced-a397-4b85-bcb1-cd7b50b8dd5c",
18-
"instance_id": "35318361-b651-4879-820d-a061a70f2f86",
17+
"id": "895f74c4-e352-4de5-b06f-495ec8d07722",
18+
"instance_id": "0c4a2cde-c9f4-4090-a1eb-815f29d1e3f7",
1919
"database_name": "rdb",
2020
"name": "foobar",
2121
"status": "ready",

β€Žinternal/namespaces/rdb/v1/testdata/test-download-backup-simple.cassette.yamlβ€Ž

Lines changed: 219 additions & 219 deletions
Large diffs are not rendered by default.

β€Žinternal/namespaces/rdb/v1/testdata/test-download-backup-with-no-previous-export-backup.cassette.yamlβ€Ž

Lines changed: 195 additions & 309 deletions
Large diffs are not rendered by default.

β€Žinternal/namespaces/rdb/v1/testdata/test-export-backup-simple.cassette.yamlβ€Ž

Lines changed: 231 additions & 183 deletions
Large diffs are not rendered by default.

β€Žinternal/namespaces/rdb/v1/testdata/test-export-backup-simple.goldenβ€Ž

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
22
🟩🟩🟩 STDOUT️ 🟩🟩🟩️
3-
ID 046c5f84-8419-4fa2-b32f-24d218dd8752
4-
InstanceID 02769cf3-bcf6-4e77-aa36-2bff1163f26a
3+
ID f3e15b2d-ac65-413d-a027-8c63cf1bf674
4+
InstanceID 0e434676-e0c1-476e-963f-cda4bae23b33
55
DatabaseName rdb
66
Name foobar
77
Status ready
@@ -10,14 +10,14 @@ ExpiresAt few seconds ago
1010
CreatedAt few seconds ago
1111
UpdatedAt few seconds ago
1212
InstanceName cli-test
13-
DownloadURL https://s3.nl-ams.scw.cloud/65940610-0e5e-4a98-9306-568aa4eb3673/02769cf3-bcf6-4e77-aa36-2bff1163f26a/046c5f84-8419-4fa2-b32f-24d218dd8752.custom?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=SCW2HJV1WMKPE0CKDAW5%2F20231108%2Fnl-ams%2Fs3%2Faws4_request&X-Amz-Date=20231108T205833Z&X-Amz-Expires=86400&X-Amz-SignedHeaders=host&X-Amz-Signature=25669d2d48ac765c3ccac39e60bbdce391a5bbf6132c66cdcd07d8d7ad6a8d0f
13+
DownloadURL https://s3.nl-ams.scw.cloud/65940610-0e5e-4a98-9306-568aa4eb3673/0e434676-e0c1-476e-963f-cda4bae23b33/f3e15b2d-ac65-413d-a027-8c63cf1bf674.custom?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=SCW2HJV1WMKPE0CKDAW5%2F20231109%2Fnl-ams%2Fs3%2Faws4_request&X-Amz-Date=20231109T191717Z&X-Amz-Expires=86400&X-Amz-SignedHeaders=host&X-Amz-Signature=44ba03c3e09d75780222bd3b15feebc62c50f5d890196aa1d3e0e3c84f9aa385
1414
DownloadURLExpiresAt few seconds ago
1515
Region fr-par
1616
SameRegion false
1717
🟩🟩🟩 JSON STDOUT 🟩🟩🟩
1818
{
19-
"id": "046c5f84-8419-4fa2-b32f-24d218dd8752",
20-
"instance_id": "02769cf3-bcf6-4e77-aa36-2bff1163f26a",
19+
"id": "f3e15b2d-ac65-413d-a027-8c63cf1bf674",
20+
"instance_id": "0e434676-e0c1-476e-963f-cda4bae23b33",
2121
"database_name": "rdb",
2222
"name": "foobar",
2323
"status": "ready",
@@ -26,7 +26,7 @@ SameRegion false
2626
"created_at": "1970-01-01T00:00:00.0Z",
2727
"updated_at": "1970-01-01T00:00:00.0Z",
2828
"instance_name": "cli-test",
29-
"download_url": "https://s3.nl-ams.scw.cloud/65940610-0e5e-4a98-9306-568aa4eb3673/02769cf3-bcf6-4e77-aa36-2bff1163f26a/046c5f84-8419-4fa2-b32f-24d218dd8752.custom?X-Amz-Algorithm=AWS4-HMAC-SHA256\u0026X-Amz-Credential=SCW2HJV1WMKPE0CKDAW5%2F20231108%2Fnl-ams%2Fs3%2Faws4_request\u0026X-Amz-Date=20231108T205833Z\u0026X-Amz-Expires=86400\u0026X-Amz-SignedHeaders=host\u0026X-Amz-Signature=25669d2d48ac765c3ccac39e60bbdce391a5bbf6132c66cdcd07d8d7ad6a8d0f",
29+
"download_url": "https://s3.nl-ams.scw.cloud/65940610-0e5e-4a98-9306-568aa4eb3673/0e434676-e0c1-476e-963f-cda4bae23b33/f3e15b2d-ac65-413d-a027-8c63cf1bf674.custom?X-Amz-Algorithm=AWS4-HMAC-SHA256\u0026X-Amz-Credential=SCW2HJV1WMKPE0CKDAW5%2F20231109%2Fnl-ams%2Fs3%2Faws4_request\u0026X-Amz-Date=20231109T191717Z\u0026X-Amz-Expires=86400\u0026X-Amz-SignedHeaders=host\u0026X-Amz-Signature=44ba03c3e09d75780222bd3b15feebc62c50f5d890196aa1d3e0e3c84f9aa385",
3030
"download_url_expires_at": "1970-01-01T00:00:00.0Z",
3131
"region": "fr-par",
3232
"same_region": false

0 commit comments

Comments
Β (0)