Skip to content
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

Allow timespans in force up-/downtime #120

Open
jonathan-mayer opened this issue Feb 21, 2025 · 2 comments · May be fixed by #132 or #134
Open

Allow timespans in force up-/downtime #120

jonathan-mayer opened this issue Feb 21, 2025 · 2 comments · May be fixed by #132 or #134
Assignees
Labels
enhancement New feature or request missing feature A feature still missing from the GoKubeDownscaler, compared to the py-kube-downscaler

Comments

@jonathan-mayer
Copy link
Member

jonathan-mayer commented Feb 21, 2025

Issue

Currently force uptime and force downtime only support boolean values. This is different to how the pykubedownscaler handled this (see the Readme).

Problem to solve

The problem arises here, since when you want to exclude an absolute span of time while still having the weekly schedule (via uptime) the only way to set this downtime is to migrate your configuration to downtime or downtime period configuration (see py-kube-downscaler#124 for an example where this would be useful)

Further details

Proposal

Change the force up and force downtime to allow for timespan values.
Update the docs to include not only documentation on these new timespan values, but also explain the exact order in which force up/downtime downtime/uptime/downtime period/uptime period are taken into account. Also update the docs to include the order of the exclusion values (i think its if its excluded by any of the exclusion configurations).

With this implemented people will be able to force downscale during specific periods of time without needing to adjust the rest of their configuration.

Who can address the issue

Anyone with some go experience

Other links/references

@jonathan-mayer jonathan-mayer added missing feature A feature still missing from the GoKubeDownscaler, compared to the py-kube-downscaler enhancement New feature or request labels Feb 21, 2025
@jonathan-mayer jonathan-mayer self-assigned this Feb 28, 2025
@jonathan-mayer
Copy link
Member Author

we should also add docs about layer value grouping and ungroup the exclude and exclude until values. since it doesnt make sense like it works now

@jonathan-mayer
Copy link
Member Author

jonathan-mayer commented Mar 3, 2025

we could also allow timespans in exclude. this would also remove the need for tristatebools entirely and add an additional feature to the gokubedownscaler

@jonathan-mayer jonathan-mayer linked a pull request Mar 4, 2025 that will close this issue
1 task
@jonathan-mayer jonathan-mayer linked a pull request Mar 4, 2025 that will close this issue
1 task
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request missing feature A feature still missing from the GoKubeDownscaler, compared to the py-kube-downscaler
Projects
None yet
1 participant