Merge branch 'main' into development
This commit is contained in:
@@ -40,21 +40,19 @@ source="
|
||||
$pkgname-$pkgver-linux-arm64.tar.gz::https://github.com/seaweedfs/seaweedfs/releases/download/$pkgver/linux_arm64.tar.gz
|
||||
$pkgname-$pkgver-src.tar.gz::https://github.com/seaweedfs/seaweedfs/archive/refs/tags/$pkgver.tar.gz
|
||||
admin.toml
|
||||
example-admin.toml
|
||||
credential.toml
|
||||
example-admin.toml
|
||||
example-credential.toml
|
||||
example-filer.toml
|
||||
example-master.toml
|
||||
example-volume.toml
|
||||
example-notification.toml
|
||||
example-replication.toml
|
||||
example-security.toml
|
||||
example-shell.toml
|
||||
filer.toml
|
||||
master.toml
|
||||
notification.toml
|
||||
replication.toml
|
||||
security.toml
|
||||
shell.toml
|
||||
seaweedfs.admin.confd
|
||||
seaweedfs.filer.confd
|
||||
seaweedfs.initd
|
||||
@@ -87,9 +85,11 @@ package() {
|
||||
install -Dm755 "${CARGO_TARGET_DIR:-$_worker_builddir/target}/release/weed-worker" \
|
||||
"$pkgdir"/usr/bin/weed-worker
|
||||
local _config
|
||||
for _config in admin credential filer master notification replication security shell; do
|
||||
for _config in admin credential filer master security; do
|
||||
install -Dm644 "$srcdir"/$_config.toml \
|
||||
"$pkgdir"/etc/seaweedfs/$_config.toml
|
||||
done
|
||||
for _config in admin credential filer master volume notification replication security shell; do
|
||||
install -Dm644 "$srcdir"/example-$_config.toml \
|
||||
"$pkgdir"/usr/share/doc/$pkgname/examples/$_config.toml
|
||||
done
|
||||
@@ -142,20 +142,17 @@ fd4d4947dc4587ec943ad4c11e0a6bc4d3cd1c59ad45299cf84bcbc8d25a2b8745fd426343087928
|
||||
91a34fec9bb78832f421b54dd823adb1c1690b746083d947c5f72e4ad7670362512bbb920432f42342482774fd8be2b396645ff3bc764b10f328432601733fe3 seaweedfs-4.48-src.tar.gz
|
||||
4f24760848c909fdee1ae8569ef7ef7cbec2c885d891a543d7beddee492bddbf266e6789601095a86798d1b00256782c45297ea36cdb527bb6b64980dd02486a admin.toml
|
||||
507b389f6373b5f4d8ca69f27bc806b39bda8edf7f58e4f32720958e7782ee171dd0461bdecb285e5a8bf2cf4ea3d6cbe8b62ae6ac43c2a40d0eb053d50a22f8 example-admin.toml
|
||||
b6ce09d6d83dd70e2797a185171eea3587436fb024a99b4998f714b713244d6f768ef59f67c9b7251650d4f19d414eea231eab92099763d85cd92e41cb2bdc3f credential.toml
|
||||
7105de7053654b8c0502521ce58585915fc831c3152801e1db02b1c5214dc3c3ed31f4fc18000665d8338c7a10ffbf0d248368bef2ef3a6d37d46cd856398366 example-credential.toml
|
||||
64821eba8661b39b94016a7ca3fa37b74154dcc998bcb9978a6b9983a58741ff28a2984db3c0789595d1864354f83b33cf6bb31b014ffd71ebd6570d8760dc26 example-filer.toml
|
||||
e5753bd0bcc60dc84428c40ba556c08acae61dec083a5b76640125f637532e7c5759a72cdfd95114222a7a0901a916ec3c4d12f306853cfca0fe9a0b1857893e example-master.toml
|
||||
aea1b3114311304230cb30143825329ef7353a302d094c131ca4e049b847305e2143b76078e6574c6d7d4039c03a2e2d5a4925de80cd7cb2be75b2b522ce47f7 example-volume.toml
|
||||
2c200c28172a5d0b1c80ab28e849287e7af8d103355638fd3183b8614d3e2b1b3482132522663f7c6d844e10e13b8c6e23fb5fba0dec2cc83de45c2f17b33477 example-notification.toml
|
||||
328cfe43d0c2ebf5092a1178af45c37b07593085135c31649754f0df9fd4c043847c13b56c3c7c45194541db8082309c4845c825d7011e4c3e503b1e6576528d example-replication.toml
|
||||
3b45b0f5bf6c5339cfb63c3ddb489b7122e03996ce380c7a244778ef1e7f6c06b4e3e56ea695a2dc3c9c49322a58df865ff50b2904318abafee5e66b2af757f1 example-security.toml
|
||||
70069f97edf261a2cd0669dd60adad80533609a25d7429254e0c3322d7e80337f5ff69a5581bc39e6a15442098d14d610ce5f0cb14f02c461c8d3dd440b22c56 example-shell.toml
|
||||
be5771a5e1bf626c53f9dffbfa2a400d9b8f9626d55a7b61dcd853753561989427ba872a2638a5e6343f44dea6790678483bd29101d6495dbbfcd3029947b9a7 filer.toml
|
||||
2cd6c73a5e23e0395b6f099dcc3acf9280cbb3e13f54408571e91741c4e6b0dad85f6d4e5a92f23ad541bad57ce295c28bb8450fe11da35acbd4da25848f61e5 master.toml
|
||||
0a1b3d0fd1671744f96e7642fb9aee9b80debd0d9a82f586beb36fe32f9ad440332acd2a8b0ee0b210b912cb281d88ca56fd15e3a2ece61be9dcf96afc00a6f8 notification.toml
|
||||
5a607ce6cdd11ffbe528b9a85e0012b48accefa6ccfeda9d6aa70d92ccf7f219e75c93cd2f1c36f3eb16204b3652a45dcd52ffcb64bceef91d081702b19cef3c replication.toml
|
||||
d21981923b5964cf8365185a4f7c28a14e33ba6f60ad63e797e315544a6c22efdaa72814292824c07ef14554738769e0fd4c670fe797cf77b0226b2595a8b43b security.toml
|
||||
7a91ce9da79b92e5ef42d4915f56a010bceaaa6c96dcef1f7b1821ee208d381aaa88b9cf495248276132e66d3215927f589b7fabc4eae2c2cb195645f904fac7 shell.toml
|
||||
130b9932f99d0a3ec3c30c74eaf1dc441c1a9252da30e2c5365084f2a0679f58531e6180689c24b71f92cf9a7966b02ea25ee31d356e7118cbb82743d0bfcbd9 filer.toml
|
||||
088c3aebc142054af1b54a92a2c5bd30d53be61bdf382f7cae2efef2d917d7b57022d9b494a60f32c7bf56689d4ce2f971e19c98da1d87e27021a3e948035605 master.toml
|
||||
79a078133c259473e601488cd1d8032b74c5fa32da6f34a4ed46efa9736bf5369365a77d775e3d78512b1060cd87012eb40226829eecb30544e1542d165af7d6 security.toml
|
||||
82e2793bf483ffb5b0c8fbe38e6c9df75afe01f824f8414cafd91e4bed5c79c13dae1ca659070401d4968d16ed4b26455b0c6208f777705527bceb2e5f286988 seaweedfs.admin.confd
|
||||
5ad952c37c62a770327bd70f7349fa677406606f0b9bf03fdc8f6c6804701f1e77710ab20d6153f9e0cfb549ec161d68a3316abab9c59837bbe3f91ee99e5ce0 seaweedfs.filer.confd
|
||||
077c513851bbbe53dd32d26455abc361f97006f9ace1190f96eb4b9136d16befab1a6153752eae8dac695c3a9aed084a00b411684915618cb30dd0770e608403 seaweedfs.initd
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# SeaweedFS Alpine Package
|
||||
|
||||
Repackages official SeaweedFS 4.39 Linux release tarballs for `x86_64` and
|
||||
Repackages official SeaweedFS 4.47 Linux release tarballs for `x86_64` and
|
||||
`aarch64`.
|
||||
|
||||
## Package Commands
|
||||
@@ -12,6 +12,10 @@ ALPINE_PACKAGE=seaweedfs mise run apk:update-generated
|
||||
ALPINE_PACKAGE=seaweedfs mise run apk:checksum
|
||||
```
|
||||
|
||||
The refresh command generates every SeaweedFS 4.47 scaffold configuration:
|
||||
`admin`, `credential`, `filer`, `master`, `volume`, `notification`,
|
||||
`replication`, `security`, and `shell`.
|
||||
|
||||
Build:
|
||||
|
||||
```sh
|
||||
@@ -75,13 +79,16 @@ Runtime paths:
|
||||
/etc/init.d/seaweedfs.*
|
||||
```
|
||||
|
||||
Edit `/etc/conf.d/seaweedfs.<role>` for flags and `/etc/seaweedfs/*.toml` for
|
||||
SeaweedFS config. Upstream examples:
|
||||
Edit `/etc/conf.d/seaweedfs.<role>` for flags. The package supplies a small set
|
||||
of safe defaults in `/etc/seaweedfs/`; the complete upstream-generated scaffold
|
||||
configs are available at:
|
||||
|
||||
```text
|
||||
/usr/share/doc/seaweedfs/examples/
|
||||
```
|
||||
|
||||
Copy and customize a scaffold file only when enabling its related feature.
|
||||
|
||||
Enable services:
|
||||
|
||||
```sh
|
||||
@@ -133,5 +140,5 @@ rc-service seaweedfs.master restart
|
||||
Pin:
|
||||
|
||||
```sh
|
||||
apk add seaweedfs=4.39-r0
|
||||
apk add seaweedfs=4.47-r2
|
||||
```
|
||||
|
||||
@@ -1,8 +1,4 @@
|
||||
# Configuration for `weed admin`.
|
||||
#
|
||||
# This package disables automatic maintenance by default. Enable individual
|
||||
# maintenance services deliberately after reviewing the cluster's storage and
|
||||
# replication policy. The setting is persisted in the admin data directory.
|
||||
|
||||
# Disable automatic maintenance until the cluster's storage and replication
|
||||
# policy has been reviewed. This setting is persisted in the admin data directory.
|
||||
[maintenance]
|
||||
enabled = false
|
||||
|
||||
@@ -1,19 +1,3 @@
|
||||
# Use the existing filer store for credentials by default.
|
||||
[credential.filer_etc]
|
||||
enabled = true
|
||||
|
||||
[credential.postgres]
|
||||
enabled = false
|
||||
hostname = "localhost"
|
||||
port = 5432
|
||||
username = "seaweedfs"
|
||||
password = ""
|
||||
database = "seaweedfs"
|
||||
schema = "public"
|
||||
sslmode = "disable"
|
||||
table_prefix = "sw_"
|
||||
connection_max_idle = 10
|
||||
connection_max_open = 100
|
||||
connection_max_lifetime_seconds = 3600
|
||||
|
||||
[credential.memory]
|
||||
enabled = false
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
# Put this file to one of the location, with descending priority
|
||||
# ./volume.toml
|
||||
# $HOME/.seaweedfs/volume.toml
|
||||
# /etc/seaweedfs/volume.toml
|
||||
# this file is read by volume servers
|
||||
|
||||
[volume.disk.io]
|
||||
# Disk IO probing is disabled by default. When enabled, a volume server can
|
||||
# stop advertising a disk after sustained IO errors or latency degradation.
|
||||
probe = false
|
||||
timeout = "2s"
|
||||
interval = "60s"
|
||||
window = "1m"
|
||||
min.samples = 10
|
||||
max.stat.failures = 5
|
||||
recovery.coef = 0.5
|
||||
|
||||
[volume.disk.io.slow]
|
||||
percent = 20
|
||||
|
||||
[volume.disk.io.error]
|
||||
percent = 10
|
||||
|
||||
# slow threshold per disk type, matched against each -dir's -disk tag.
|
||||
# a disk whose type is not listed here uses the hdd threshold.
|
||||
[volume.disk.io.slow.latency]
|
||||
hdd = "500ms"
|
||||
ssd = "100ms"
|
||||
nvme = "50ms"
|
||||
|
||||
@@ -1,46 +1,4 @@
|
||||
[filer.options]
|
||||
recursive_delete = false
|
||||
|
||||
# Store standalone filer metadata in the package-managed data directory.
|
||||
[leveldb2]
|
||||
enabled = true
|
||||
dir = "/var/lib/seaweedfs/filer/meta"
|
||||
|
||||
[sqlite]
|
||||
enabled = false
|
||||
dbFile = "/var/lib/seaweedfs/filer/filer.db"
|
||||
|
||||
[mysql]
|
||||
enabled = false
|
||||
dsn = "root@tcp(localhost:3306)/seaweedfs?collation=utf8mb4_bin"
|
||||
enable_tls = false
|
||||
hostname = "localhost"
|
||||
port = 3306
|
||||
username = "root"
|
||||
password = ""
|
||||
database = ""
|
||||
connection_max_idle = 10
|
||||
connection_max_open = 50
|
||||
connection_max_lifetime_seconds = 300
|
||||
interpolateParams = false
|
||||
enableUpsert = true
|
||||
|
||||
[postgres]
|
||||
enabled = false
|
||||
hostname = "localhost"
|
||||
port = 5432
|
||||
username = "postgres"
|
||||
password = ""
|
||||
database = "postgres"
|
||||
schema = ""
|
||||
sslmode = "disable"
|
||||
connection_max_idle = 10
|
||||
connection_max_open = 50
|
||||
connection_max_lifetime_seconds = 300
|
||||
pgbouncer_compatible = false
|
||||
enableUpsert = true
|
||||
|
||||
[redis2]
|
||||
enabled = false
|
||||
address = "localhost:6379"
|
||||
password = ""
|
||||
database = 0
|
||||
|
||||
@@ -1,27 +1,3 @@
|
||||
# Disable scheduled maintenance until it is explicitly configured.
|
||||
[master.maintenance]
|
||||
scripts = ""
|
||||
sleep_minutes = 17
|
||||
|
||||
[master.sequencer]
|
||||
type = "raft"
|
||||
sequencer_snowflake_id = 0
|
||||
|
||||
[storage.backend.s3.default]
|
||||
enabled = false
|
||||
aws_access_key_id = ""
|
||||
aws_secret_access_key = ""
|
||||
region = "us-east-2"
|
||||
bucket = ""
|
||||
endpoint = ""
|
||||
storage_class = "STANDARD_IA"
|
||||
|
||||
[master.volume_growth]
|
||||
copy_1 = 7
|
||||
copy_2 = 6
|
||||
copy_3 = 3
|
||||
copy_other = 1
|
||||
threshold = 0.9
|
||||
disable = false
|
||||
|
||||
[master.replication]
|
||||
treat_replication_as_minimums = false
|
||||
|
||||
@@ -1,42 +0,0 @@
|
||||
[notification.log]
|
||||
enabled = false
|
||||
|
||||
[notification.kafka]
|
||||
enabled = false
|
||||
hosts = ["localhost:9092"]
|
||||
topic = "seaweedfs_filer"
|
||||
offsetFile = "/var/lib/seaweedfs/filer/last.offset"
|
||||
offsetSaveIntervalSeconds = 10
|
||||
sasl_enabled = false
|
||||
sasl_mechanism = "PLAIN"
|
||||
sasl_username = ""
|
||||
sasl_password = ""
|
||||
tls_enabled = false
|
||||
tls_ca_cert = ""
|
||||
tls_client_cert = ""
|
||||
tls_client_key = ""
|
||||
tls_insecure_skip_verify = false
|
||||
|
||||
[notification.aws_sqs]
|
||||
enabled = false
|
||||
aws_access_key_id = ""
|
||||
aws_secret_access_key = ""
|
||||
region = "us-east-2"
|
||||
sqs_queue_name = ""
|
||||
|
||||
[notification.google_pub_sub]
|
||||
enabled = false
|
||||
google_application_credentials = ""
|
||||
project_id = ""
|
||||
topic = ""
|
||||
|
||||
[notification.webhook]
|
||||
enabled = false
|
||||
endpoint = ""
|
||||
bearer_token = ""
|
||||
timeout_seconds = 10
|
||||
max_retries = 3
|
||||
backoff_seconds = 3
|
||||
max_backoff_seconds = 30
|
||||
workers = 5
|
||||
buffer_size = 10000
|
||||
@@ -1,29 +0,0 @@
|
||||
[source.filer]
|
||||
enabled = false
|
||||
grpcAddress = "localhost:18888"
|
||||
directory = "/buckets"
|
||||
excludeDirectories = "/buckets/tmp"
|
||||
|
||||
[sink.local]
|
||||
enabled = false
|
||||
directory = "/var/lib/seaweedfs/backup"
|
||||
is_incremental = false
|
||||
|
||||
[sink.filer]
|
||||
enabled = false
|
||||
grpcAddress = "localhost:18888"
|
||||
directory = "/backup"
|
||||
replication = ""
|
||||
collection = ""
|
||||
ttlSec = 0
|
||||
is_incremental = false
|
||||
|
||||
[sink.s3]
|
||||
enabled = false
|
||||
aws_access_key_id = ""
|
||||
aws_secret_access_key = ""
|
||||
region = "us-east-2"
|
||||
bucket = ""
|
||||
directory = "/"
|
||||
endpoint = ""
|
||||
is_incremental = false
|
||||
@@ -25,6 +25,7 @@ test -x /usr/bin/weed-worker
|
||||
/usr/bin/weed-worker --help >/dev/null
|
||||
test -d /usr/share/doc/seaweedfs/examples
|
||||
test -f /usr/share/doc/seaweedfs/examples/master.toml
|
||||
test -f /usr/share/doc/seaweedfs/examples/volume.toml
|
||||
test -f /usr/share/bash-completion/completions/weed
|
||||
|
||||
weed version
|
||||
|
||||
@@ -46,5 +46,6 @@ apk_test_install_run "${repo_root}" "${PACKAGE_NAME:-seaweedfs}" "${PACKAGE_VERS
|
||||
apk info -e seaweedfs-bash-completion
|
||||
test -d /usr/share/doc/seaweedfs/examples
|
||||
test -f /usr/share/doc/seaweedfs/examples/master.toml
|
||||
test -f /usr/share/doc/seaweedfs/examples/volume.toml
|
||||
test -f /usr/share/bash-completion/completions/weed
|
||||
SCRIPT
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
set -euo pipefail
|
||||
|
||||
package_dir="${PACKAGE_DIR:-$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)}"
|
||||
configs=(admin credential filer master notification replication security shell)
|
||||
configs=(admin credential filer master volume notification replication security shell)
|
||||
pkgver="$(
|
||||
awk -F= '$1 == "pkgver" { print $2; exit }' "${package_dir}/APKBUILD"
|
||||
)"
|
||||
|
||||
@@ -1,104 +1,3 @@
|
||||
[cors.allowed_origins]
|
||||
values = "*"
|
||||
|
||||
[jwt.signing]
|
||||
key = ""
|
||||
expires_after_seconds = 10
|
||||
|
||||
# Do not expose the administrative UI by default.
|
||||
[access]
|
||||
ui = false
|
||||
|
||||
[filer.expose_directory_metadata]
|
||||
enabled = true
|
||||
|
||||
[jwt.signing.read]
|
||||
key = ""
|
||||
expires_after_seconds = 10
|
||||
|
||||
[jwt.filer_signing]
|
||||
key = ""
|
||||
expires_after_seconds = 10
|
||||
|
||||
[jwt.filer_signing.read]
|
||||
key = ""
|
||||
expires_after_seconds = 10
|
||||
|
||||
[grpc]
|
||||
ca = ""
|
||||
allowed_wildcard_domain = ""
|
||||
|
||||
[grpc.volume]
|
||||
cert = ""
|
||||
key = ""
|
||||
allowed_commonNames = ""
|
||||
|
||||
[grpc.master]
|
||||
cert = ""
|
||||
key = ""
|
||||
allowed_commonNames = ""
|
||||
|
||||
[grpc.filer]
|
||||
cert = ""
|
||||
key = ""
|
||||
allowed_commonNames = ""
|
||||
|
||||
[grpc.s3]
|
||||
cert = ""
|
||||
key = ""
|
||||
allowed_commonNames = ""
|
||||
|
||||
[grpc.admin]
|
||||
cert = ""
|
||||
key = ""
|
||||
allowed_commonNames = ""
|
||||
|
||||
[grpc.worker]
|
||||
cert = ""
|
||||
key = ""
|
||||
allowed_commonNames = ""
|
||||
|
||||
[grpc.client]
|
||||
cert = ""
|
||||
key = ""
|
||||
|
||||
[https.client]
|
||||
enabled = false
|
||||
cert = ""
|
||||
key = ""
|
||||
ca = ""
|
||||
insecure_skip_verify = false
|
||||
|
||||
[https.volume]
|
||||
cert = ""
|
||||
key = ""
|
||||
ca = ""
|
||||
|
||||
[https.master]
|
||||
cert = ""
|
||||
key = ""
|
||||
ca = ""
|
||||
|
||||
[https.filer]
|
||||
cert = ""
|
||||
key = ""
|
||||
ca = ""
|
||||
|
||||
[https.admin]
|
||||
cert = ""
|
||||
key = ""
|
||||
ca = ""
|
||||
|
||||
[admin]
|
||||
user = ""
|
||||
password = ""
|
||||
|
||||
[admin.readonly]
|
||||
user = ""
|
||||
password = ""
|
||||
|
||||
[s3.sse]
|
||||
kek = ""
|
||||
key = ""
|
||||
|
||||
[guard]
|
||||
white_list = ""
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
[cluster]
|
||||
default = "c1"
|
||||
|
||||
[cluster.c1]
|
||||
master = "localhost:9333" # comma-separated master servers
|
||||
|
||||
[cluster.c2]
|
||||
master = ""
|
||||
Reference in New Issue
Block a user