diff --git a/doc/BackupAndRestore.md b/doc/BackupAndRestore.md
index 313dad8e60..265058f1c0 100644
--- a/doc/BackupAndRestore.md
+++ b/doc/BackupAndRestore.md
@@ -50,7 +50,7 @@ access to the location where you are storing backups.
-ceph_backup_storage_config |
- For the ceph plugin, this identifies the path to a text file with a JSON object as configuration. The JSON object requires the following keys: accessKey , secretKey and endPoint . Bucket name is computed from keyspace name and is separate for different keyspaces. |
+ For the ceph plugin, this identifies the path to a text file with a JSON object as configuration. The JSON object requires the following keys: accessKey , secretKey , endPoint and useSSL . Bucket name is computed from keyspace name and is separate for different keyspaces. |
-restore_from_backup |
diff --git a/examples/local/ceph_backup_config.json b/examples/local/ceph_backup_config.json
index f16ed853f9..d71c617069 100644
--- a/examples/local/ceph_backup_config.json
+++ b/examples/local/ceph_backup_config.json
@@ -1,5 +1,6 @@
{
"accessKey" : "AccessKey",
"secretKey" : "SecretKey",
- "endPoint" : "URL"
+ "endPoint" : "URL",
+ "useSSL" : true
}
diff --git a/go/vt/mysqlctl/cephbackupstorage/ceph.go b/go/vt/mysqlctl/cephbackupstorage/ceph.go
index 30b331d8ee..5eb5632634 100644
--- a/go/vt/mysqlctl/cephbackupstorage/ceph.go
+++ b/go/vt/mysqlctl/cephbackupstorage/ceph.go
@@ -30,6 +30,7 @@ var storageConfig struct {
AccessKey string `json:"accessKey"`
SecretKey string `json:"secretKey"`
EndPoint string `json:"endPoint"`
+ UseSSL bool `json:"useSSL"`
}
// CephBackupHandle implements BackupHandle for Ceph Cloud Storage.
@@ -135,6 +136,10 @@ func (bs *CephBackupStorage) ListBackups(dir string) ([]backupstorage.BackupHand
doneCh := make(chan struct{})
for object := range c.ListObjects(bucket, searchPrefix, false, doneCh) {
if object.Err != nil {
+ err := c.BucketExists(bucket)
+ if err != nil {
+ return nil, nil
+ }
return nil, object.Err
}
subdir := strings.TrimPrefix(object.Key, searchPrefix)
@@ -246,8 +251,9 @@ func (bs *CephBackupStorage) client() (*minio.Client, error) {
accessKey := storageConfig.AccessKey
secretKey := storageConfig.SecretKey
url := storageConfig.EndPoint
+ useSSL := storageConfig.UseSSL
- client, err := minio.NewV2(url, accessKey, secretKey, true)
+ client, err := minio.NewV2(url, accessKey, secretKey, useSSL)
if err != nil {
return nil, err
}
diff --git a/vendor/vendor.json b/vendor/vendor.json
index b2bb6c0da9..d3abde91dc 100644
--- a/vendor/vendor.json
+++ b/vendor/vendor.json
@@ -449,10 +449,12 @@
"revisionTime": "2016-04-24T11:30:07Z"
},
{
- "checksumSHA1": "FR9klLOXPp3dMRN8Y0nzSbNynVk=",
+ "checksumSHA1": "FPCHcnP9aY7A/69F8bbOJGqZoxo=",
"path": "github.com/minio/minio-go",
- "revision": "17b4ebd52505bde655e3b14df732e31850641bb7",
- "revisionTime": "2016-04-14T21:22:01Z"
+ "revision": "9f282f76643244430e3d0b69dc7285628a8db8a7",
+ "revisionTime": "2016-07-19T21:19:03Z",
+ "version": "v2.0.1",
+ "versionExact": "v2.0.1"
},
{
"checksumSHA1": "fb3i4XcL9StitSFLi/5pgGtRXDk=",