-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathconfig.json.example
More file actions
138 lines (109 loc) · 5.37 KB
/
config.json.example
File metadata and controls
138 lines (109 loc) · 5.37 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
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
{
// Configuration file version - do not modify
"_config_version": 5,
// Matrix homeserver connection settings
"matrix": {
// Matrix homeserver URL (e.g., https://matrix.org or https://your-server.com)
"homeserver": "https://matrix.example.com",
// Bot user ID (e.g., @bot:example.com)
"user_id": "@chatrixcd:example.com",
// Device ID for this bot instance (optional, defaults to CHATRIXCD)
"device_id": "CHATRIXCD",
// Human-readable device name
"device_name": "ChatrixCD Bot",
// Authentication type: "password" or "oidc"
"auth_type": "password",
// Password for password authentication (required if auth_type is "password")
"password": "your_bot_password_here",
// OIDC/SSO redirect URL (optional, defaults to "http://localhost:8080/callback")
// This is the URL where the browser will be redirected after authentication
// The redirect URL does NOT need to be a running web server - it's only used
// to receive the loginToken parameter. You copy/paste the token from the URL.
//
// Common values:
// - "http://localhost:8080/callback" (default, for local use)
// - "https://your-domain.com/auth/callback" (production with web handler)
// - "urn:ietf:wg:oauth:2.0:oob" (OAuth2 out-of-band for CLI apps)
//
// For most users: leave this commented out to use the default
// "oidc_redirect_url": "http://localhost:8080/callback",
// Path to store encryption keys and session data
"store_path": "./store"
},
// Semaphore UI connection settings
"semaphore": {
// Semaphore UI server URL
"url": "https://semaphore.example.com",
// Semaphore API token (get this from Semaphore UI user settings)
"api_token": "your_semaphore_api_token_here",
// SSL/TLS Configuration (optional)
// ===================================
// Enable/disable SSL certificate verification (default: true)
// Set to false for self-signed certificates (NOT recommended for production)
// "ssl_verify": false,
// Path to custom CA certificate bundle for SSL verification
// Use this when Semaphore has a certificate signed by a custom CA
// "ssl_ca_cert": "/path/to/custom-ca.crt",
// Path to client certificate for mutual TLS (mTLS) authentication
// "ssl_client_cert": "/path/to/client.crt",
// Path to client certificate private key (required if ssl_client_cert is set)
// "ssl_client_key": "/path/to/client.key"
},
// Bot behavior settings
"bot": {
// Command prefix for bot commands (e.g., "!cd help")
"command_prefix": "!cd",
// List of allowed room IDs (empty = all rooms allowed)
// Example: ["!roomid1:example.com", "!roomid2:example.com"]
"allowed_rooms": [],
// List of admin user IDs (empty = all users have admin access)
// When specified, only these users can run bot commands
// Example: ["@admin1:example.com", "@admin2:example.com"]
// Note: URL-encoded usernames are supported (e.g., "@user%40domain.com")
"admin_users": [],
// Enable automatic greeting messages in specified rooms
"greetings_enabled": true,
// Rooms where greeting messages should be sent (empty = all allowed rooms)
"greeting_rooms": [],
// Message sent when bot starts
"startup_message": "🤖 ChatrixCD bot is now online and ready to help with CI/CD tasks!",
// Message sent when bot shuts down
"shutdown_message": "👋 ChatrixCD bot is shutting down. See you later!",
// Path to log file (default: chatrixcd.log in current directory)
// Can be absolute or relative path
"log_file": "chatrixcd.log",
// TUI mode selection (default: "turbo")
// Options:
// - "turbo": New Turbo Vision-style interface with menu bar and 3D windows
// - "classic": Original TUI interface
"tui_mode": "turbo",
// Enable mouse support in TUI (default: false)
// When enabled, you can use mouse to click buttons and navigate menus
"mouse_enabled": false,
// Enable colored output in logs and TUI (default: false)
// Requires colorlog package to be installed
// Command-line flag -C overrides this setting
"color_enabled": false,
// Color theme for TUI and logs (default: "default")
// Available themes:
// - "default": ChatrixCD brand colors (green #4A9B7F)
// - "midnight": Midnight Commander-style (blue/cyan classic terminal look)
// - "grayscale": Monochrome grayscale theme for accessibility
// - "windows31": Windows 3.1-inspired theme (gray/blue vintage look)
// - "msdos": MS-DOS-style theme (amber/green on black retro terminal)
// Note: Theme applies to both "turbo" and "classic" TUI modes
"color_theme": "default",
// Logging verbosity level (default: "info")
// Options:
// - "silent": No output (errors only to stderr)
// - "error": Error messages only
// - "info": Informational messages (recommended for normal operation)
// - "debug": Detailed debug information (verbose logging)
// Command-line -v flags override this setting:
// -v sets to "debug", -vv sets to "debug" with library logs
"verbosity": "info",
// Enable/disable plugin loading (default: true)
// When false, no plugins will be loaded regardless of individual plugin settings
"load_plugins": true
}
}