-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathconfig-example.yaml
More file actions
112 lines (102 loc) · 3.44 KB
/
Copy pathconfig-example.yaml
File metadata and controls
112 lines (102 loc) · 3.44 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
# Example configuration for nzb-upload with queue settings
servers:
- name: 'Primary Provider' # optional display name shown in the UI instead of "Provider 1"
host: 'news.example.com'
port: 563
username: 'your_username'
password: 'your_password'
ssl: true
max_connections: 10
insecure_ssl: false
connection_pool:
min_connections: 5
health_check_interval: 60s
skip_providers_verification_on_creation: false
posting:
wait_for_par2: true
max_retries: 3
retry_delay: 5s
article_size_in_bytes: 750000
groups:
- name: 'alt.binaries.test'
enabled: true
throttle_rate: 0
# Total memory the process-wide upload engine may reserve for in-flight
# article buffers, independent of queue.max_concurrent_uploads.
# 0 = auto (sized from connection capacity and article size, 64 MiB-512 MiB).
upload_buffer_memory_limit: 0
message_id_format: 'random'
obfuscation_policy: 'full'
par2_obfuscation_policy: 'full'
group_policy: 'each_file'
post_headers:
add_nxg_header: false
default_from: ''
custom_headers: []
post_check:
enabled: true
delay: 10s
max_reposts: 1
# Max concurrent STAT verification checks across the whole process.
# 0 = auto (dedicated verify pool capped at 16, shared upload pool capped at 2).
max_concurrent_checks: 0
par2:
enabled: true
redundancy: '10%'
# Directory where PAR2 files are temporarily created (uses system temp by default)
temp_dir: ''
# Whether to keep PAR2 files after successful upload (false = cleanup after success)
maintain_par2_files: false
# Max concurrent PAR2 operations across the whole process. memory_limit applies
# per active job, so keep this low (default 1) to bound total PAR2 memory.
max_concurrent_jobs: 1
watcher:
enabled: false
size_threshold: 104857600
schedule:
start_time: '00:00'
end_time: '23:59'
ignore_patterns:
- '*.tmp'
- '*.part'
- '*.!ut'
min_file_size: 1048576
check_interval: 5m
delete_original_file: false # Delete source files after successful upload
# Global output directory for processed files and NZB files
output_dir: './output'
nzb_compression:
enabled: false
type: 'none'
level: 0
# Queue configuration for upload management
queue:
# Database type: sqlite, postgres, mysql (only sqlite implemented currently)
database_type: 'sqlite'
# Database file path (for SQLite) or connection string (for other DBs)
database_path: './postie.db'
# Maximum number of items to process in each batch
batch_size: 10
# Maximum number of retry attempts for failed uploads
max_retries: 3
# Delay between retry attempts
retry_delay: 5m
# Maximum number of items to keep in queue (0 = unlimited)
max_queue_size: 1000
# Auto-cleanup completed items after this duration (0 = keep forever)
cleanup_after: 24h
# Enable priority-based processing (larger files first)
priority_processing: false
# Maximum concurrent uploads from queue
max_concurrent_uploads: 1
# Post upload script configuration
# This command will be executed after NZB file generation is complete
post_upload_script:
enabled: false
command: '' # Command to execute, use {nzb_path} placeholder for NZB file path
timeout: 30s # Maximum time to wait for command execution
# Example: Using curl to send a webhook notification
# post_upload_script:
# enabled: true
# command: 'curl -X POST -H "Content-Type: application/json" -d "{\"nzb_path\": \"{nzb_path}\"}" https://your-webhook-url.com/notify'
# timeout: 30s