Skip to content

Commit 30e0895

Browse files
committed
...
1 parent 1731b61 commit 30e0895

File tree

1 file changed

+67
-33
lines changed

1 file changed

+67
-33
lines changed

src/administration-guide/configuration.md

Lines changed: 67 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,26 @@ Full list of available configuration options:
1414

1515
| Config file option / Environment variable | Description |
1616
| ----------------------- | --------------------------------------------------------- |
17+
| **Common** ||
18+
| <br>`git_client` <hr> `SEMAPHORE_GIT_CLIENT`<br><br> | Type of Git client. Can be `cmd_git` or `go_git`. |
19+
| <br>`ssh_config_path` <hr> `SEMAPHORE_SSH_PATH`<br><br> | Path to SSH configuration file. |
20+
| <br>`port` <hr> `SEMAPHORE_PORT`<br><br> | TCP port on which the web interface will be available. Default: 3000 |
21+
| <br>`interface` <hr> `SEMAPHORE_INTERFACE`<br><br> | Useful if your server has multiple network interfaces |
22+
| <br>`tmp_path` <hr> `SEMAPHORE_TMP_PATH`<br><br> | Path to directory where cloned repositories and generated files are stored. Default: /tmp/semaphore |
23+
| <br>`max_parallel_tasks` <hr> `SEMAPHORE_MAX_PARALLEL_TASKS` <br><br> | Max number of parallel tasks that can be run on the server. |
24+
| <br>`max_task_duration_sec` <hr> `SEMAPHORE_MAX_TASK_DURATION_SEC` <br><br> | Max duration of a task in seconds. |
25+
| <br>`max_tasks_per_template`<hr> `SEMAPHORE_MAX_TASKS_PER_TEMPLATE` <br><br> | Maximum number of recent tasks stored in the database for each template. |
26+
| <br>`schedule.timezone` <hr> `SEMAPHORE_SCHEDULE_TIMEZONE` <br><br> | Timezone used for scheduling tasks and cron jobs. |
27+
| <br>`oidc_providers` ![Static Badge](https://img.shields.io/badge/v2.10+-red) | OpenID provider settings. You can provide multiple OpenID providers. More about OpenID configuration read in [OpenID](./openid.md). <br><br> |
28+
| <br>`password_login_disable` <hr> `SEMAPHORE_PASSWORD_LOGIN_DISABLED` <br><br> ![Static Badge](https://img.shields.io/badge/v2.10+-red) <br><br> | Deny password login. |
29+
| <br>`non_admin_can_create_project` <hr> `SEMAPHORE_NON_ADMIN_CAN_CREATE_PROJECT` <br><br> | Allow non-admin users to create projects. |
30+
| <br>`env_vars` <hr> `SEMAPHORE_ENV_VARS` <br><br> | JSON map which contains environment variables. |
31+
| <br>`forwarded_env_vars` <hr> `SEMAPHORE_FORWARDED_ENV_VARS` <br><br> | JSON array of environment variables which will be forwarded from system. |
32+
| <br>`apps` <hr> `SEMAPHORE_APPS` <br><br> | JSON map which contains apps configuration. |
33+
| <br>`use_remote_runner` <hr> `SEMAPHORE_USE_REMOTE_RUNNER` <br><br> | |
34+
| <br>`runner_registration_token` <hr> `SEMAPHORE_RUNNER_REGISTRATION_TOKEN` <br><br> | |
35+
| **Database** ||
36+
| <br>`sqlite.host` <hr> `SEMAPHORE_DB_HOST`<br><br> | Path to the SQLite database file. |
1737
| <br>`bolt.host` <hr> `SEMAPHORE_DB_HOST`<br><br> | Path to the BoltDB database file. |
1838
| <br>`mysql.host` <hr> `SEMAPHORE_DB_HOST`<br><br> | MySQL database host. |
1939
| <br>`mysql.name` <hr> `SEMAPHORE_DB_NAME`<br><br> | MySQL database (schema) name. |
@@ -24,54 +44,68 @@ Full list of available configuration options:
2444
| <br>`postgres.user` <hr> `SEMAPHORE_DB_USER`<br><br> | Postgres user name. |
2545
| <br>`postgres.pass` <hr> `SEMAPHORE_DB_PASS`<br><br> | Postgres user's password. |
2646
| <br>`dialect` <hr> `SEMAPHORE_DB_DIALECT`<br><br> | Can be `sqlite` (default), `postgres`, `mysql` or `bolt` (deprecated). |
27-
| <br>`git_client` <hr> `SEMAPHORE_GIT_CLIENT`<br><br> | |
28-
| <br>`ssh_config_path` <hr> `SEMAPHORE_SSH_PATH`<br><br> | |
29-
| <br>`port` <hr> `SEMAPHORE_PORT`<br><br> | TCP port on which the web interface will be available. Default: 3000 |
30-
| <br>`interface` <hr> `SEMAPHORE_INTERFACE`<br><br> | Useful if your server has multiple network interfaces |
31-
| <br>`tmp_path` <hr> `SEMAPHORE_TMP_PATH`<br><br> | Path to directory where cloned repositories and generated files are stored. Default: /tmp/semaphore |
47+
| <br> `*.options` <hr> `SEMAPHORE_DB_OPTIONS`<br><br> | JSON map which contains database connection options. |
48+
| **Security** ||
3249
| <br>`access_key_encryption` <hr> `SEMAPHORE_ACCESS_KEY_ENCRYPTION`<br><br> | Secret key used for encrypting access keys in database. Read more in [Database encryption reference](./security.md#database-encryption). |
50+
| <br>`cookie_hash` <hr> `SEMAPHORE_COOKIE_HASH`<br><br> | Secret key used to sign cookies. |
51+
| <br>`cookie_encryption` <hr> `SEMAPHORE_COOKIE_ENCRYPTION`<br><br> | Secret key used to encrypt cookies. |
3352
| <br>`web_host` <hr> `SEMAPHORE_WEB_ROOT`<br><br> | Can be useful if you want to use Semaphore by the subpath, for example: [http://yourdomain.com/semaphore](http://yourdomain.com/semaphore). Do not add a trailing `/`. |
34-
| <br>`tls.enabled` <hr> `SEMAPHORE_TLS_ENABLED`<br><br> | |
35-
| <br>`tls.cert_file` <hr> `SEMAPHORE_TLS_CERT_FILE`<br><br> | |
36-
| <br>`tls.key_file` <hr> `SEMAPHORE_TLS_KEY_FILE`<br><br> | |
37-
| <br>`email_sender` <hr> `SEMAPHORE_EMAIL_SENDER`<br><br> | |
38-
| <br>`email_host` <hr> `SEMAPHORE_EMAIL_HOST`<br><br> | |
39-
| <br>`email_port` <hr> `SEMAPHORE_EMAIL_PORT`<br><br> | |
40-
| <br>`email_secure` <hr> `SEMAPHORE_EMAIL_SECURE`<br><br> | |
41-
| <br>`email_tls` <hr> `SEMAPHORE_EMAIL_TLS`<br><br> | |
42-
| <br>`email_username` <hr> `SEMAPHORE_EMAIL_USERNAME`<br><br> | |
43-
| <br>`email_password` <hr> `SEMAPHORE_EMAIL_PASSWORD`<br><br> | |
44-
| <br>`email_alert` <hr> `SEMAPHORE_EMAIL_ALERT`<br><br> | |
53+
| <br>`tls.enabled` <hr> `SEMAPHORE_TLS_ENABLED`<br><br> | Enable or disable TLS (HTTPS) for secure communication with the Semaphore server. |
54+
| <br>`tls.cert_file` <hr> `SEMAPHORE_TLS_CERT_FILE`<br><br> | Path to TLS certificate file. |
55+
| <br>`tls.key_file` <hr> `SEMAPHORE_TLS_KEY_FILE`<br><br> | Path to TLS key file. |
56+
| <br>`tls.http_redirect_port` <hr> `SEMAPHORE_TLS_HTTP_REDIRECT_PORT`<br><br> | Port to redirect HTTP traffic to HTTPS. |
57+
| <br>`auth.totp.enabled` <hr> `SEMAPHORE_TOTP_ENABLED` <br><br> | Enable Two-factor authentication with using TOTP. |
58+
| <br>`auth.totp.allow_recovery` <hr> `SEMAPHORE_TOTP_ALLOW_RECOVERY` <br><br> | Allow users to reset TOTP using a recovery code. |
59+
| **Process** ||
60+
| <br>`process.user` <hr> `SEMAPHORE_PROCESS_USER` <br><br> | User to run Semaphore process. |
61+
| <br>`process.uid` <hr> `SEMAPHORE_PROCESS_UID` <br><br> | UID to run Semaphore process. |
62+
| <br>`process.gid` <hr> `SEMAPHORE_PROCESS_GID` <br><br> | GID to run Semaphore process. |
63+
| <br>`process.chroot` <hr> `SEMAPHORE_PROCESS_CHROOT` <br><br> | Chroot directory for Semaphore process. |
64+
| **Email** ||
65+
| <br>`email_sender` <hr> `SEMAPHORE_EMAIL_SENDER`<br><br> | Email address of the sender. |
66+
| <br>`email_host` <hr> `SEMAPHORE_EMAIL_HOST`<br><br> | SMTP server hostname. |
67+
| <br>`email_port` <hr> `SEMAPHORE_EMAIL_PORT`<br><br> | SMTP server port. |
68+
| <br>`email_secure` <hr> `SEMAPHORE_EMAIL_SECURE`<br><br> | Enable StartTLS to upgrade an unencrypted SMTP connection to a secure, encrypted one. |
69+
| <br>`email_tls` <hr> `SEMAPHORE_EMAIL_TLS`<br><br> | Use SSL or TLS connection for communication with the SMTP server. |
70+
| <br>`email_tls_min_version` <hr> `SEMAPHORE_EMAIL_TLS_MIN_VERSION`<br><br> | Minimum TLS version to use for the connection. |
71+
| <br>`email_username` <hr> `SEMAPHORE_EMAIL_USERNAME`<br><br> | Username for SMTP server authentication. |
72+
| <br>`email_password` <hr> `SEMAPHORE_EMAIL_PASSWORD`<br><br> | Password for SMTP server authentication. |
73+
| <br>`email_alert` <hr> `SEMAPHORE_EMAIL_ALERT`<br><br> | Flag which enables email alerts. |
74+
| **Messengers** ||
4575
| <br>`telegram_alert` <hr> `SEMAPHORE_TELEGRAM_ALERT`<br><br> | Set to True to enable pushing alerts to Telegram. It should be used in combination with `telegram_chat` and `telegram_token`. |
4676
| <br>`telegram_chat` <hr> `SEMAPHORE_TELEGRAM_CHAT`<br><br> | Set to the Chat ID for the chat to send alerts to. Read more in [Telegram Notifications Setup](./notifications.md#chat-id) |
4777
| <br>`telegram_token` <hr> `SEMAPHORE_TELEGRAM_TOKEN`<br><br> | Set to the Authorization Token for the bot that will receive the alert payload. Read more in [Telegram Notifications Setup](./notifications.md#bot-setup) |
4878
| <br>`slack_alert` <hr> `SEMAPHORE_SLACK_ALERT`<br><br> | Set to True to enable pushing alerts to slack. It should be used in combination with `slack_url` |
4979
| <br>`slack_url` <hr> `SEMAPHORE_SLACK_URL`<br><br> | The slack webhook url. Semaphore will used it to POST Slack formatted json alerts to the provided url. |
50-
| <br>`microsoft_teams_alert` <hr> `SEMAPHORE_MICROSOFT_TEAMS_ALERT` <br><br> | Set to True to enable pushing alerts to teams. It should be used in combination with `microsoft_teams_url`. |
51-
| <br>`microsoft_teams_url` <hr> `SEMAPHORE_MICROSOFT_TEAMS_URL` <br><br> | The teams webhook url. Semaphore will used it to POST alerts. |
80+
| <br>`microsoft_teams_alert` <hr> `SEMAPHORE_MICROSOFT_TEAMS_ALERT` <br><br> | Flag which enables Microsoft Teams alerts. |
81+
| <br>`microsoft_teams_url` <hr> `SEMAPHORE_MICROSOFT_TEAMS_URL` <br><br> | Microsoft Teams webhook URL. |
5282
| <br>`rocketchat_alert` <hr> `SEMAPHORE_ROCKETCHAT_ALERT` <br><br> | Set to True to enable pushing alerts to Rocket.Chat. It should be used in combination with `rocketchat_url`. Available since v2.9.56. |
5383
| <br>`rocketchat_url` <hr> `SEMAPHORE_ROCKETCHAT_URL` <br><br> | The rocketchat webhook url. Semaphore will used it to POST Rocket.Chat formatted json alerts to the provided url. Available since v2.9.56. |
54-
| <br>`ldap_enable` <hr> `SEMAPHORE_LDAP_ENABLE` <br><br> | |
84+
| <br>`dingtalk_alert` <hr> `SEMAPHORE_DINGTALK_ALERT` <br><br> | Enable Dingtalk alerts. |
85+
| <br>`dingtalk_url` <hr> `SEMAPHORE_DINGTALK_URL` <br><br> | Dingtalk messenger webhook URL. |
86+
| <br>`gotify_alert` <hr> `SEMAPHORE_GOTIFY_ALERT` <br><br> | Enable Gotify alerts. |
87+
| <br>`gotify_url` <hr> `SEMAPHORE_GOTIFY_URL` <br><br> | Gotify server URL. |
88+
| <br>`gotify_token` <hr> `SEMAPHORE_GOTIFY_TOKEN` <br><br> | Gotify server token. |
89+
| **LDAP** ||
90+
| <br>`ldap_enable` <hr> `SEMAPHORE_LDAP_ENABLE` <br><br> | Flag which enables LDAP authentication. |
5591
| <br>`ldap_needtls` <hr> `SEMAPHORE_LDAP_NEEDTLS` <br><br> | |
5692
| <br>`ldap_binddn` <hr> `SEMAPHORE_LDAP_BIND_DN` <br><br> | |
5793
| <br>`ldap_bindpassword` <hr> `SEMAPHORE_LDAP_BIND_PASSWORD` <br><br> | |
5894
| <br>`ldap_server` <hr> `SEMAPHORE_LDAP_SERVER` <br><br> | |
5995
| <br>`ldap_searchdn` <hr> `SEMAPHORE_LDAP_SEARCH_DN` <br><br> | |
6096
| <br>`ldap_searchfilter` <hr> `SEMAPHORE_LDAP_SEARCH_FILTER` <br><br> | |
61-
| <br>`max_parallel_tasks` <hr> `SEMAPHORE_MAX_PARALLEL_TASKS` <br><br> | Max allowed parallel tasks for whole Semaphore instance. |
62-
| <br>`max_task_duration_sec` <hr> `SEMAPHORE_MAX_TASK_DURATION_SEC` <br><br> | Max allowed parallel tasks for whole Semaphore instance. |
63-
| <br>`max_tasks_per_template`<hr> `SEMAPHORE_MAX_TASKS_PER_TEMPLATE` <br><br> | Max allowed parallel tasks for whole Semaphore instance. |
64-
| <br>`oidc_providers` ![Static Badge](https://img.shields.io/badge/v2.10+-red) | OpenID provider settings. You can provide multiple OpenID providers. More about OpenID configuration read in [OpenID](./openid.md). <br><br> |
65-
| <br>`password_login_disable` <hr> `SEMAPHORE_PASSWORD_LOGIN_DISABLED` <br><br> ![Static Badge](https://img.shields.io/badge/v2.10+-red) <br><br> | Disable login with using password. Only LDAP and OpenID. |
66-
| <br>`non_admin_can_create_project` <hr> `SEMAPHORE_NON_ADMIN_CAN_CREATE_PROJECT` <br><br> | |
67-
| <br>`env_vars` <hr> `SEMAPHORE_ENV_VARS` <br><br> | |
68-
| <br>`forwarded_env_vars` <hr> `SEMAPHORE_FORWARDED_ENV_VARS` <br><br> | |
69-
| <br>`apps` <hr> `SEMAPHORE_APPS` <br><br> | |
70-
| <br>`use_remote_runner` <hr> `SEMAPHORE_USE_REMOTE_RUNNER` <br><br> | |
71-
| <br>`use_remote_runner` <hr> `SEMAPHORE_USE_REMOTE_RUNNER` <br><br> | |
72-
| <br>`runner_registration_token` <hr> `SEMAPHORE_RUNNER_REGISTRATION_TOKEN` <br><br> | |
73-
| <br>`auth.totp.enabled` <hr> `SEMAPHORE_TOTP_ENABLED` <br><br> | |
74-
| <br>`auth.totp.allow_recovery` <hr> `SEMAPHORE_TOTP_ALLOW_RECOVERY` <br><br> | |
97+
| <br>`ldap_mappings.dn` <hr> `SEMAPHORE_LDAP_MAPPING_DN` <br><br> | LDAP attribute to use as the distinguished name (DN) mapping for user authentication. |
98+
| <br>`ldap_mappings.mail` <hr> `SEMAPHORE_LDAP_MAPPING_MAIL` <br><br> | LDAP attribute to use as the email address mapping for user authentication. |
99+
| <br>`ldap_mappings.uid` <hr> `SEMAPHORE_LDAP_MAPPING_UID` <br><br> | LDAP attribute to use as the user ID (UID) mapping for user authentication. |
100+
| <br>`ldap_mappings.cn` <hr> `SEMAPHORE_LDAP_MAPPING_CN` <br><br> | LDAP attribute to use as the common name (CN) mapping for user authentication. |
101+
| **Logging** ||
102+
| <br>`log.events.format` <hr> `SEMAPHORE_EVENT_LOG_FORMAT` <br><br> | Event log format. Can be `json` or empty for text. |
103+
| <br>`log.events.enabled` <hr> `SEMAPHORE_EVENT_LOG_ENABLED` <br><br> | Enable or disable event logging. |
104+
| <br>`log.events.logger` <hr> `SEMAPHORE_EVENT_LOGGER` <br><br> | JSON map which contains event logger configuration. |
105+
| <br>`log.tasks.format` <hr> `SEMAPHORE_TASK_LOG_FORMAT` <br><br> | Task log format. Can be `json` or empty for text. |
106+
| <br>`log.tasks.enabled` <hr> `SEMAPHORE_TASK_LOG_ENABLED` <br><br> | Enable or disable task logging. |
107+
| <br>`log.tasks.logger` <hr> `SEMAPHORE_TASK_LOGGER` <br><br> | JSON map which contains task logger configuration. |
108+
| <br>`log.tasks.result_logger` <hr> `SEMAPHORE_TASK_RESULT_LOGGER` <br><br> | JSON map which contains task result logger configuration. |
75109

76110
## Frequently asked questions
77111

0 commit comments

Comments
 (0)