Closed davidcornu closed 1 month ago
I have signed the CLA!
I don't believe this CI failure (https://github.com/Shopify/shipit-engine/actions/runs/10541191179/job/29206691546?pr=1361) is related to my changes but please correct me if I'm wrong.
Looks neat. I don't have any concern about the implementation. Did you try it in prod?
Did you try it in prod?
Gonna roll it out today and report back
Quick update - was on vacation for a bit so there was a bit of a delay in getting this deployed. We are running it in production as of today. Will report back with any issues we run into.
@casperisfine We've been running this branch in production for just over a week and I have nothing to report other than it's been working as advertised.
Thanks @casperisfine ❤️
Closes https://github.com/Shopify/shipit-engine/issues/1100.
User-visible changes
Adds a new settings page where the continuous deployment schedule can be configured.
Code changes
continuous_delivery_schedules
table, structured as a series of*_enabled
,*_start
, and*_end
fields for each day of the week.ContinuousDeliverySchedule
model which wraps the logic to determine whether a deploy should be allowedStack
records can have one or zero associatedContinuousDeliverySchedule
records (enforced via unique index)ContinuousDeliveryJob
to bail out if we are currently outside of a deployment windowNotes
ActiveRecord::Type::Time
would require very localized timezone overrides (e.g. when parsing form data) which would be tricky to get right, easy to break, and may cause unintended consequences elsewhere.