-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
enable passed one-time scheduled actions to be rescheduled #455
Conversation
a96cb2f
to
ec17b81
Compare
Does the PR have any schema changes?Looking good! No breaking changes found. Maintainer note: consult the runbook for dealing with any breaking changes. |
4022a4a
to
6727bf2
Compare
6727bf2
to
7c43fd7
Compare
replaceOnChanges causes the generated sdks to apply an extra replaceOnChanges resource option that it passes through to the provider plugin. However, the yaml language doesn't have a generated sdk, so it doesn't work properly there. Instead, we now check for replacement in the provider plugin's Diff method instead, so it always works, and document this with `willReplaceOnChanges` (which is only used for documentation).
c2c0bdb
to
b0ca860
Compare
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #455 +/- ##
===========================
===========================
☔ View full report in Codecov by Sentry. |
This PR has been shipped in release v0.27.2. |
One-time schedules are soft-deleted after running, which means updating their schedule doesn't work because the action is never actually picked up again by the scheduler. (Prior to https://github.com/pulumi/pulumi-service/pull/24133 the update would appear to succeed, but the scheduled action would just silently never run. Now at least you get an error indicating the schedule was deleted.)
This PR enables rescheduling to work correctly by forcing the schedule to be replaced when its timestamp is updated.
Partially addresses #449