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

Ability to specify exemptions #215

Open
gabegorelick opened this issue Oct 19, 2021 · 4 comments
Open

Ability to specify exemptions #215

gabegorelick opened this issue Oct 19, 2021 · 4 comments
Labels
enhancement Adding additional functionality or improvements pinned Prevents stalebot from removing priority: could Future work depending on bandwidth and availability

Comments

@gabegorelick
Copy link

Similar to https://polaris.docs.fairwinds.com/customization/exemptions.

Example use case: policy/v1beta1 was deprecated in Kubernetes 1.21, but won't be removed until 1.25. For my own first-party code, I want to enforce that policy/v1 is used for any new code. But it doesn't make sense for third party vendors to migrate to policy/v1 yet since that would mean dropping support for Kubernetes < 1.21 (1.20 isn't EOL until 2022-02-28, for example). Thus, I need to be able to add exemptions for certain resources to allow them to use deprecated APIs without breaking CI checks.

As a workaround, I'm using --only-show-removed to only flag usages of APIs that definitely won't work in the current target version. But this means that nothing stops you from adding new consumers of deprecated APIs.

@lucasreed
Copy link
Contributor

Hey @gabegorelick 👋

Have you tried --ignore-deprecations? Here is some documentation on it: https://pluto.docs.fairwinds.com/advanced/#ci-pipelines

If I remember correctly, this should still show the deprecations but not give you an exit code of 2 for the CI run. Please let us know if this works or not in your use-case.

@lucasreed lucasreed self-assigned this Oct 19, 2021
@lucasreed lucasreed added the question Further information is requested label Oct 19, 2021
@gabegorelick
Copy link
Author

If I remember correctly, this should still show the deprecations but not give you an exit code of 2 for the CI run. Please let us know if this works or not in your use-case.

It doesn't really help me. I want to fail the build if I add deprecated apiVersions to a subset of my resources.

When you add warnings, as opposed to errors that fail the build, it's too easy to miss them. And if you do notice them, you often end up with alert fatigue if they're not resolved quickly. But it may be years until a resource can be migrated to a newer API, so you may have a warning going off for a long time.

@lucasreed lucasreed added enhancement Adding additional functionality or improvements and removed question Further information is requested labels Oct 19, 2021
@lucasreed
Copy link
Contributor

Ok, thanks for that feedback. We'll have some chats about this to see if we can support it and what it would look like.

@github-actions github-actions bot added the stale Marked as stale by stalebot label Jan 13, 2022
@sudermanjr sudermanjr added pinned Prevents stalebot from removing and removed stale Marked as stale by stalebot labels Jan 14, 2022
@sudermanjr
Copy link
Member

I still think this could be valuable, however I will add that the free tier of Fairwinds Insights would allow you to do this using Pluto and our CI integration there.

@sudermanjr sudermanjr added the priority: could Future work depending on bandwidth and availability label May 26, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Adding additional functionality or improvements pinned Prevents stalebot from removing priority: could Future work depending on bandwidth and availability
Projects
None yet
Development

No branches or pull requests

3 participants