RocketChat / RocketChat/Rocket.Chat
Certain environment variable do not propagate to the settings (page)
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 46.1k
- Forks
- 13.9k
- Avg merge
- 3d 3h
- Merged PRs (30d)
- 130
Description
Description:
I am trying to populate smtp settings through environment variables when starting Rocket.Chat via docker-compose. So I put them under "environment" and restart it all. Some of the variables do populate (or change) the settings (page), at least one doesn't. And then there is one that has no place on the settings page but I still need to populate it (but I don't know its name).
Works:
- (OVERWRITE_SETTING_)SMTP_Host
- (OVERWRITE_SETTING_)SMTP_Port
- (OVERWRITE_SETTING_)SMTP_Username
- (OVERWRITE_SETTING_)SMTP_Password
- (OVERWRITE_SETTING_)From_Email
Doesn't work:
- (OVERWRITE_SETTING_)IgnoreTLS
Haven't tried:
- (OVERWRITE_SETTING_)SMTP_Pool (no idea what this does)
Don't know its name:
- "SMTP_Secure" (this would enable or disable verifying the mail server's SSL certificate)
Steps to reproduce:
- Set up a new Rocket.Chat instance via docker-compose
- put the environment variables mentioned above under "environment"
- docker-compose up -d
- go to admin portal, smtp settings, check settings
Expected behavior:
Setting the environment variable "SMTP_IgnoreTLS" to false or true should toggle the respective switch on the settings page (and change the actual setting)
Actual behavior:
I can put "true" or "false" - the setting doesn't change.
Server Setup Information:
- Version of Rocket.Chat Server: 4.5.5
- Operating System: Debian 11
- Deployment Method: docker-compose
- Number of Running Instances:
- DB Replicaset Oplog:
- NodeJS Version:
- MongoDB Version:
Client Setup Information
- Desktop App or Browser Version:
- Operating System:
Additional context
It all came up because I am trying to disable checking the mail server's SSL certificate but there is no such switch on the settings page. So in the community I got the tip to set "MAIL_URL" including "secure=false" which didn't work (at all). So I started trying to manipulate individual settings to figure out how this works. And so I found that it works in principle but not for "IgnoreTLS" (at least for me). And I don't know how the settings I am actually after is called (that would disable checking the mail server's SSL certificate).
Relevant logs:
(not releant)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the SMTP configuration from a docker-compose environment and inspect the Admin SMTP settings page, focusing on the IgnoreTLS variable and the missing secure-certificate option. Trace how these environment variables map to settings, then verify that IgnoreTLS changes the setting and that the correct certificate-related setting name is identified.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker-compose, typescript
- Domain
- backend, devops
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100