18 days ago
We're trying to understand the intended Railway workflow for managing multi-environment projects.
Current setup:
- Multiple environments (Production, Development)
- Doppler manages environment variables
- Doppler syncs variables into Railway services
- No Railway Shared Variables are configured
The issue we're running into is when we want to add a new service to all environments.
Example:
- We create a new service in Dev.
- Doppler syncs the environment variables into that service.
- We then use Railway Environment Sync to bring that service into Production.
- Railway includes all service variables as part of the sync.
This means every time we sync the service, we also have to manually review and remove/discard the variable changes before deploying.
A few questions:
- Is there currently a way to sync/copy services between environments without including service variables or manually needing to remove them?
- Is there a recommended workflow for teams using Doppler (or another external secrets manager) across multiple Railway environments?
- When adding a new service to an existing project with multiple environments, what is the recommended way to propagate that service to all environments while preserving each environment's own variable set?
- Is Environment Sync intended to be used for this use case, or is there another Railway-native workflow that is preferred?
At the moment it feels like adding a service to an existing multi-environment project requires manually removing variable changes during every environment sync, and we're wondering if we're missing a better approach.
2 Replies
18 days ago
Environment Sync currently includes service variables as part of the sync, and there is no option to exclude them. The intended workflow is exactly what you're doing: after syncing, review the staged changes and discard the variable diffs before deploying. For teams using Doppler, an alternative approach is to use the Railway Public API to create the service in the target environment directly (via the serviceInstanceDeploy or environment creation mutations), which avoids pulling variables from the source environment entirely, and then let Doppler sync the correct variables into the new service instance.
Status changed to Awaiting User Response Railway • 18 days ago
17 days ago
Can you explain in simpler term how this can work so that when we are promoting a build from one environment to other (like dev --> qa --> prod), how can we manage doppler's integration so that it picks the correct environment variable. Can you provide detailed instructions on how to do it.
Status changed to Awaiting Railway Response Railway • 17 days ago
Status changed to Awaiting User Response Railway • 17 days ago
10 days ago
This thread has been marked as solved automatically due to a lack of recent activity. Please re-open this thread or create a new one if you require further assistance. Thank you!
Status changed to Solved Railway • 10 days ago