Skip to content

๐Ÿค– Release process โ€‹

We practice CI/CD (Continuous Integration/Continuous Delivery), which means we automatically release new features to production as soon as they're ready. This is made possible by our ability to test each feature in its own isolated environment, ensuring it works correctly before it's deployed.

Our streamlined process follows these steps:

  1. โš™๏ธ Development is complete: The feature's code is finalized.
  2. ๐Ÿงช QA testing begins: The new code is deployed to a feature environment for isolated testing and validation.
  3. ๐Ÿš€ Release to acceptance: Once approved, the feature is released to the acceptance environment.
    • Consumer tests are run to quickly check the API's health.
    • Release notes are generated.
  4. ๐Ÿš€ Release to production : The feature is automatically deployed to the live production environment.
    • Consumer tests are run again as a final safety check.
    • Final release notes are published.
  5. โœ… Completed: The feature is now live for users.

Feature environment โ€‹

It provides a production-like infrastructure to test a new feature's code in a dedicated space. This allows QA to validate the code works properly and catch any bugs before the feature is completed.

When a feature environment is cleaned up, the scheduled cleanup pipeline first runs connector uninstall lifecycle hooks for every administration in that environment. This gives connectors a chance to remove external resources, such as Exact Online webhook subscriptions, before Azure resources and databases are deleted.

Consumer tests โ€‹

Consumer tests are a type of happy flow test run immediately after a new deployment to a feature, acceptance, or production environment. Their main purpose is to quickly validate the API's correctness and ensure no major issues have been introduced.