How to add environment variables on Voroa
Add and update environment variables for your Voroa service, and read them in your app. Values are stored encrypted and are never shown back once saved.
Environment variables let you pass configuration and secrets to your app — API keys, database URLs, feature flags — without hardcoding them in your code.
Add or update variables
- Open the service and go to Environment.
- Add each variable as a key and value.
- Select Save changes.
Saving redeploys your service so the new values are available at build and runtime. The service reports that it is redeploying once the change is saved.
Naming rules for variables
A key name must be a single word with no spaces in it — LOG_LEVEL and API_BASE_URL are both fine.
If a name has a space, Voroa refuses the save and tells you which key is at fault.
The usual cause is pasting two variables into one key box, so the name ends up as
BOT_MODE LOG_LEVEL. Add them as two separate variables instead. If such a name is already saved,
remove that variable and add it again — the service cannot deploy until it is gone.
A name and its value together must also stay under 64 KB. For anything larger, use a Secret File.
Values are write-only for security
Voroa stores values securely and encrypted. For your protection, saved values are never shown back — the dashboard displays existing keys with a masked placeholder. To change a value, re-enter the key with the new value and save; it overwrites the old one.
Set your service’s timezone
Services run in UTC unless you say otherwise. To change it, open your service, go to Settings, and pick a
zone under Timezone (for example Asia/Kolkata). Voroa saves it as the TZ environment variable and
redeploys the service. If your monthly build minutes or free hours are used up, the setting is saved and takes effect on
your next deploy instead. You can also add TZ yourself in Environment - it is the same setting.
Your runtime needs timezone data for TZ to work. Node.js carries its own. Python, Go and most other
runtimes read it from the image; if your service still shows UTC, add the tzdata package to your image.
For a PostgreSQL database, connect with your connection string and run:
ALTER DATABASE your_database_name SET timezone TO 'Asia/Kolkata';
It needs no restart, but only new connections pick it up, so reconnect your app afterwards. Data you
have already stored does not change: timestamp with time zone columns start displaying in the new
zone, plain timestamp columns stay exactly as they were written.
One thing to watch: new rows written to a plain timestamp column with now() use the new zone, so that
column ends up holding old rows in UTC and new rows in your zone. If that matters, switch the column to
timestamp with time zone before you change the setting.
Reading variables in your app
Access variables through your language’s standard environment API — for example
process.env.MY_KEY in Node. The port is provided as process.env.PORT; see
build and start commands.