Deployment Windows - restricting deployments to timeframes

Hi Everyone,

I wonder if anyone has had or implemented a deployment window / time/date restriction to deployments?

Example of what I would love to achieve:

  • Channel A: Urgent deployment that can happen at any time
  • Channel B: A minor change that can happen at the next minor change window
  • Channel C: A major change that can happen at the next major change window

Any deployment that’s attempted outside of the designated change window should just be queued till the next available window (There may need to be some logic that manages things like replacing deployments with newer releases before window etc)

Currently I’m planning on implementing this behaviour in a very manual way, relying on people and process - but it’d be great to manage this using octopus. Scheduled deployments are hidden behind a number of clicks and it’s not easy to provide documentation/consistency to this. Automating this means that our process can be represented and very visual, whilst also removing human error.

I can’t see a good way to add deployment windows/timeframes to encourage the above behaviour.

A more concrete example might be Read-Only Friday - adding a built-in restriction that requires override for a deployment to go out.

Hi Mike,

Thanks for getting in touch! Unfortunately there’s no good way to implement deployment windows, other than using a PowerShell script that holds the deployment until the time comes which doesn’t sound ideal. There’s currently a similar UserVoice suggestion open to allow deployment time slots per environment, but it hasn’t yet gotten much love. Feel free to vote/comment on it, or create a new suggestion, as this is the route we take when considering new features and enhancements based on community support. :slight_smile:

Sorry it’s not better news! Don’t hesitate to reach out if you have any further questions.

Kind regards,