Rolling Release

From KynetxDocs

Jump to: navigation, search

A rolling release occurs when servers for a given service type are updated one at a time. Rolling releases are performed by a deploying engineer independently using this procedure:

  1. Only one server is updated at a time.
  2. The server is taken out of rotation when it is updated if necessary. This is necessary when the service can't be updated via a single HTTP restart.
  3. Library existence testing is performed to ensure all needed libraries and services for the new release are available.
  4. New code is checked out from the repository
  5. Automated tests are run on the new code
  6. The HTTP server is restarted
  7. Service level tests are performed on the affected server
  8. The server is put back in rotation if the service level tests pass. If not, the code should be rolled back and the release put on hold until the problem is fixed.

The following restrictions apply to rolling releases:

  • Notification per the Change Control process must be made.
  • Risk assessment from the Change Control process must have resulted in a "low impact" classification for this release.
  • Only one service type is being updated or the changes to a given service type are independent of the changes to other service type updates.
  • All servers of a given service type should be updated before servers of another service type are updated.
  • The Kynetx Operational Acceptance Checklist must be completed before the release.
  • There can be no project specific project acceptance criteria that require more than the deploying engineer to approve them.
  • Having some servers running with the new build and other servers running with the old build will not result in major service disruption or inconsistencies for users.
Personal tools