CloudServices/Working with the Cloud
From MozillaWiki
Server Environments
What server endpoint should I use? Dev, Stage, Prod?
- In early development 'Dev' servers and endpoints are recommended to simplify early development.
- Anytime code lands on gaia, mozilla-central, or Nightly channels, we recommend using Production endpoints.
- Production server stacks have security standards that protect PII and other exploits
- Production servers has a defined process for deploy, testing, and updating servers.
- Using the Production endpoint also reduces the need to update URLs in src code.
Don't cross the streams
Most of our server architecture is multi-tier. It's tempting to have Stage Server X use Prod Server Y. We do not recommend such crossing of environments as complexity grows. Here's an example of Firefox Accounts with Find My Device
env | FxAccts-OAuth | SimplePush | Fmd-app |
---|---|---|---|
Dev | Dev-OAuth | Dev-Push | Dev-FMD |
Stage | Stage-OAuth | Stage-Push | Stage-FMD |
Prod | Prod-OAuth | Prod-Push | Prod-FMD |
Testing with the Cloud
We recommend writing mocks for client side code, however, testing against public servers can be especially useful locally. Tinderbox and RelEng servers do not allow tests to access the public internet. You can add tests that have external access following these guidelines.