Question about multiple storage classes

I’m trying to configure my seafile server to use both a filesystem and a local s3 storage as a backend.
I’m not sure if that is even possible, because the example in the docs for the configuration of the s3 storage is rather minimalistic and does not have any host option, but I decided to give it a try.

I used the options used in the configuration for a single s3 backend (which worked), but that does not seem to work for a multiple backend setup. The current nonworking storage_classes.json:

[
   {
      "storage_id" : "s3_storage",
      "is_default" : true,
      "blocks" : {
         "host" : "ceph-mon.storage.zfn.uni-bremen.de:7480",
         "path_style_request" : "true",
         "use_https" : "true",
         "key" : "SOMESECRETKEYj",
         "backend" : "s3",
         "key_id" : "SOMEAUTHKEY",
         "bucket" : "seafile-dev-blocks"
      },
      "commits" : {
         "backend" : "s3",
         "key_id" : "SOMEAUTHKEY",
         "bucket" : "seafile-dev-commits",
         "host" : "ceph-mon.storage.zfn.uni-bremen.de:7480",
         "use_https" : "true",
         "path_style_request" : "true",
         "key" : "SOMESECRETKEY"
      },
      "fs" : {
         "bucket" : "seafile-dev-fs",
         "key_id" : "SOMEAUTHKEY",
         "backend" : "s3",
         "path_style_request" : "true",
         "use_https" : "true",
         "key" : "SOMESECRETKEY",
         "host" : "ceph-mon.storage.zfn.uni-bremen.de:7480"
      },
      "name" : "Ceph"
   },
   {
      "storage_id" : "filesystem",
      "is_default" : false,
      "blocks" : {
         "backend" : "fs",
         "dir" : "/opt/seafile/seaflle-data"
      },
      "fs" : {
         "dir" : "/opt/seafile/seafile-data",
         "backend" : "fs"
      },
      "commits" : {
         "dir" : "/opt/seafile/seafile-data",
         "backend" : "fs"
      },
      "name" : "Filesystem"
   }
]

When starting seafile I get the following log errors

11/23/2018 10:44:56 AM] ../common/s3-client.c(556): [S3] libcurl failed to get seafile-dev-commits:864b54be44a2308155c439fc29ad5526582f69f9: Couldn't resolve host name.
[11/23/2018 10:44:56 AM] ../common/s3-client.c(556): [S3] libcurl failed to get seafile-dev-commits:864b54be44a2308155c439fc29ad5526582f69f9: Couldn't resolve host name.
[11/23/2018 10:44:56 AM] ../common/s3-client.c(556): [S3] libcurl failed to get seafile-dev-commits:864b54be44a2308155c439fc29ad5526582f69f9: Couldn't resolve host name.
[11/23/2018 10:44:56 AM] repo-mgr.c(1085): Commit ac527941-bb32-4f2c-a785-88514d969a87:864b54be44a2308155c439fc29ad5526582f69f9 is missing
[11/23/2018 10:44:56 AM] seafile-session.c(507): Failed to get system default repo. Create a new one.

so obviously something is wrong here.

Is it even possible to use local s3 storage in a multiple storage backend setup and how would I specify the host name and the use_https parameter?

The options “path_style_request” and “use_https” should be configured as boolean, not string, correct it and it should work.