diff options
Diffstat (limited to 'playbooks.d/seaweedfs-filer')
-rw-r--r-- | playbooks.d/seaweedfs-filer/playbook.bash | 21 | ||||
-rw-r--r-- | playbooks.d/seaweedfs-filer/share/filer-leveldb3.toml (renamed from playbooks.d/seaweedfs-filer/share/filer.toml) | 2 | ||||
-rw-r--r-- | playbooks.d/seaweedfs-filer/share/filer-postgres2.toml | 24 |
3 files changed, 44 insertions, 3 deletions
diff --git a/playbooks.d/seaweedfs-filer/playbook.bash b/playbooks.d/seaweedfs-filer/playbook.bash index 1a71f07..7ae23b2 100644 --- a/playbooks.d/seaweedfs-filer/playbook.bash +++ b/playbooks.d/seaweedfs-filer/playbook.bash @@ -66,8 +66,25 @@ playbook_sync() { s3_port="$(config "$BASHTARD_PLAYBOOK.s3.port" "8333")" \ > "$buffer" - file_template "filer.toml" \ - > "$(config "fs.etcdir")/seaweedfs/filer.toml" + case "$(config "$BASHTARD_PLAYBOOK.db.type" "leveldb3")" in + leveldb3) + file_template "filer-leveldb3.toml" \ + path="$(config "$BASHTARD_PLAYBOOK.db.path" "./filerldb3")" \ + > "$(config "fs.etcdir")/seaweedfs/filer.toml" + ;; + postgres2) + file_template "filer-postgres2.toml" \ + host="$(config "$BASHTARD_PLAYBOOK.db.host" "localhost")" \ + port="$(config "$BASHTARD_PLAYBOOK.db.port" "5432")" \ + name="$(config "$BASHTARD_PLAYBOOK.db.name" "seaweedfs")" \ + user="$(config "$BASHTARD_PLAYBOOK.db.user" "seaweedfs")" \ + pass="$(config "$BASHTARD_PLAYBOOK.db.password" "")" \ + > "$(config "fs.etcdir")/seaweedfs/filer.toml" + ;; + *) + alert "$BASHTARD_PLAYBOOK/sync" "No valid '$BASHTARD_PLAYBOOK.db.type' set" + return 1 + esac [[ "$(file_hash "$buffer")" == "$hash" ]] && return diff --git a/playbooks.d/seaweedfs-filer/share/filer.toml b/playbooks.d/seaweedfs-filer/share/filer-leveldb3.toml index 8d40cb9..da7324f 100644 --- a/playbooks.d/seaweedfs-filer/share/filer.toml +++ b/playbooks.d/seaweedfs-filer/share/filer-leveldb3.toml @@ -1,3 +1,3 @@ [leveldb3] enabled = true -dir = "./filerldb3" +dir = "${path}" diff --git a/playbooks.d/seaweedfs-filer/share/filer-postgres2.toml b/playbooks.d/seaweedfs-filer/share/filer-postgres2.toml new file mode 100644 index 0000000..d802703 --- /dev/null +++ b/playbooks.d/seaweedfs-filer/share/filer-postgres2.toml @@ -0,0 +1,24 @@ +[postgres2] +enabled = true +createTable = """ + CREATE TABLE IF NOT EXISTS "%s" ( + dirhash BIGINT, + name VARCHAR(65535), + directory VARCHAR(65535), + meta bytea, + PRIMARY KEY (dirhash, name) + ); +""" +hostname = "${host}" +port = ${port} +username = "${user}" +password = "${pass}" +database = "${name}" +schema = "" +sslmode = "disable" +connection_max_idle = 100 +connection_max_open = 100 +connection_max_lifetime_seconds = 0 +# if insert/upsert failing, you can disable upsert or update query syntax to match your RDBMS syntax: +enableUpsert = true +upsertQuery = """UPSERT INTO "%[1]s" (dirhash,name,directory,meta) VALUES($1,$2,$3,$4)""" |