@@ -49,6 +49,12 @@ var cmdCreate = &cli.Command{
49
49
An exact epoch height can also be supplied with the 'height' flag.
50
50
` ),
51
51
Flags : []cli.Flag {
52
+ & cli.StringFlag {
53
+ Name : "name-prefix" ,
54
+ Usage : "add a prefix to the snapshot name" ,
55
+ Value : "default/" ,
56
+ EnvVars : []string {"FCA_CREATE_NAME_PREFIX" },
57
+ },
52
58
& cli.StringFlag {
53
59
Name : "nodelocker-api" ,
54
60
Usage : "host and port of nodelocker api" ,
@@ -130,6 +136,7 @@ var cmdCreate = &cli.Command{
130
136
flagBucketEndpoint := cctx .String ("bucket-endpoint" )
131
137
flagBucketAccessKey := cctx .String ("access-key" )
132
138
flagBucketSecretKey := cctx .String ("secret-key" )
139
+ flagNamePrefix := cctx .String ("name-prefix" )
133
140
flagBucket := cctx .String ("bucket" )
134
141
flagDiscard := cctx .Bool ("discard" )
135
142
flagProgressUpdate := cctx .Duration ("progress-update" )
@@ -304,7 +311,7 @@ var cmdCreate = &cli.Command{
304
311
logger .Infow ("discarding output" )
305
312
io .Copy (ioutil .Discard , r )
306
313
} else {
307
- host := u .Host
314
+ host := u .Hostname ()
308
315
port := u .Port ()
309
316
if port == "" {
310
317
port = "80"
@@ -320,7 +327,13 @@ var cmdCreate = &cli.Command{
320
327
Secure : u .Scheme == "https" ,
321
328
})
322
329
323
- info , err := minioClient .PutObject (ctx , flagBucket , fmt .Sprintf ("%d.car" , height ), tr , - 1 , minio.PutObjectOptions {})
330
+ t := export .TimeAtHeight (gtp , height , 30 * time .Second )
331
+
332
+ name := fmt .Sprintf ("%d_%s" , height , t .Format ("2006_01_02T15_04_05Z" ))
333
+
334
+ logger .Infow ("object" , "name" , name )
335
+
336
+ info , err := minioClient .PutObject (ctx , flagBucket , fmt .Sprintf ("%s%s.car" , flagNamePrefix , name ), tr , - 1 , minio.PutObjectOptions {})
324
337
if err != nil {
325
338
return err
326
339
}
@@ -336,7 +349,9 @@ var cmdCreate = &cli.Command{
336
349
"expiration_rule_id" , info .ExpirationRuleID ,
337
350
)
338
351
339
- info , err = minioClient .PutObject (ctx , flagBucket , fmt .Sprintf ("%s.sha256sum" , info .Key ), strings .NewReader (fmt .Sprintf ("%x" , h .Sum (nil ))), - 1 , minio.PutObjectOptions {})
352
+ sha256sum := fmt .Sprintf ("%x *%s.car" , h .Sum (nil ), name )
353
+
354
+ info , err = minioClient .PutObject (ctx , flagBucket , fmt .Sprintf ("%s%s.sha256sum" , flagNamePrefix , name ), strings .NewReader (sha256sum ), - 1 , minio.PutObjectOptions {})
340
355
if err != nil {
341
356
logger .Errorw ("failed to write sha256sum" , "object" , info .Key , "err" , err )
342
357
}
0 commit comments