Environments

Newly merged code runs through three environments as part of the release pipeline.

Preview

Preview gives a bleeding-edge view of Marketplace development. When code is merged into any of the main Flask apps Jenkins detects the change and releases to preview, ensuring that preview is always running the latest version of everything.

If you want to you can run frontend apps locally against remote APIs (e.g. the preview API) by setting the relevant environment variables (for example DM_API_URL) to point to the APIs. Bearer tokens to access these APIs directly can be found in Credentials and secrets.

The URLs for preview are as follows:

Data API https://api.preview.marketplace.team
Search API https://search-api.preview.marketplace.team
Frontend website https://www.preview.marketplace.team

These URLs can only be accessed from the GDS/CCS networks (or while connected to either of these networks via a VPN).

Notify only sends emails to the sandbox for the Preview environment. Real emails (such as password resets) will not be sent.

Staging

The staging environment is intended to be as close a copy to our production site as possible.

It should generally be running exactly the same code as is running in production. The exception is when new code is ready to be released (i.e. has been checked on preview and cleared for release by the QA and product teams): a single app is “promoted” from preview to staging, so the new code can be checked for compatibility with the currently running applications in production.

As long as no issues are found with the new code release when it is tested on staging it should then be promoted from staging to production, bringing staging and production environments back into sync. This means that (ideally!) there is never more than one app running different code on staging than on production.

The URLs for staging are as follows:

Data API https://api.staging.marketplace.team
Search API https://search-api.staging.marketplace.team
Frontend website https://www.staging.marketplace.team

These URLs can only be accessed from the GDS/CCS networks (or while connected to either of these networks via a VPN).

Notify only sends emails to DMP team members and safelisted emails on the Staging environment. The list of team members (and safelisted emails) can be found in the Notify dashboard. Emails to aliased addresses (e.g. firstname.lastname+supplier@digital.cabinet-office.gov.uK) will not be sent.

Production

The production environment is our live service.

The URLs for production are as follows:

Data API https://api.digitalmarketplace.service.gov.uk
Search API https://search-api.digitalmarketplace.service.gov.uk
Frontend website https://www.digitalmarketplace.service.gov.uk/

The production APIs can only be accessed from the GDS network (or while connected to it via a VPN).

The production Admin Frontend app can only be accessed from the GDS/CCS networks (or while connected to either of these networks via a VPN).