]> git.ipfire.org Git - thirdparty/bacula.git/commitdiff
regress: "Amazon" is a new cloud type
authorNorbert Bizet <norbert.bizet@baculasystems.com>
Fri, 27 Aug 2021 17:20:24 +0000 (13:20 -0400)
committerEric Bollengier <eric@baculasystems.com>
Thu, 14 Sep 2023 11:56:56 +0000 (13:56 +0200)
bacula/src/stored/cloud_dev.c
bacula/src/stored/cloud_dev.h
bacula/src/stored/stored_conf.c

index d8b1f1c8c2d494a52f38f948b8935ab42fd9e4f3..39fa1a412484b5adcc7d6d131867bd57338c9635 100644 (file)
@@ -134,6 +134,7 @@ static cloud_driver_item driver_tab[] = {
    {"oci",     NULL, NULL,    false, false},
    {"generic", NULL, NULL,    false, false},
    {"swift",   NULL, NULL,    false, false},
+   {"aws",     NULL, NULL,    false, false},
    {NULL,      NULL, NULL,    false, false}
 };
 
@@ -146,6 +147,7 @@ static const char* cloud_driver_type_name[] = {
    "Oracle",
    "Generic",
    "Swift",
+   "Amazon",
    NULL
 };
 
@@ -923,6 +925,17 @@ cloud_dev::cloud_dev(JCR *jcr, DEVRES *device)
       case C_S3_DRIVER:
          driver = load_driver(jcr, C_S3_DRIVER);
          break;
+      case C_AWS_DRIVER:
+         if (!device->cloud->driver_command) {
+            POOL_MEM tmp(PM_FNAME);
+            Mmsg(tmp, "%s/aws_cloud_driver", me->plugin_directory);
+            device->cloud->driver_command = bstrdup(tmp.c_str());
+         }
+         struct stat mstatp;
+         if (lstat(device->cloud->driver_command, &mstatp) == 0) {
+            driver = load_driver(jcr, C_AWS_DRIVER);
+         }
+         break;
       case C_WAS_DRIVER:
       {
          if (!device->cloud->driver_command) {
index c57cf603f9ee6f614f9d4cb8deb6aae143dbc43b..6c0dba8094d1159a26a4c2416f739fb5f1ecdc85 100644 (file)
@@ -45,7 +45,8 @@ enum {
    C_GOOGLE_DRIVER= 4,
    C_ORACLE_DRIVER= 5,
    C_GEN_DRIVER   = 6,
-   C_SWIFT_DRIVER = 7
+   C_SWIFT_DRIVER = 7,
+   C_AWS_DRIVER   = 8
 };
 
 
index 6f74eca6b2141926dce095a0a4fa2393293f85c8..82ea02d9002591cfbf42ba91439791c2a67eb800 100644 (file)
@@ -324,6 +324,7 @@ s_kw cloud_drivers[] = {
    {"Oracle",       C_ORACLE_DRIVER},
    {"Generic",      C_GEN_DRIVER},
    {"Swift",        C_SWIFT_DRIVER},
+   {"Amazon",       C_AWS_DRIVER},
 #endif
    {NULL,           0}
 };