Skip to content

Ability to specify exemptions #215

Description

@gabegorelick

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.

Activity

  1. lucasreed commented on Oct 19, 2021

    @lucasreed
    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.

  2. self-assigned this
    on Oct 19, 2021
  3. gabegorelick commented on Oct 19, 2021

    @gabegorelick
    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.

  4. added
    enhancementAdding additional functionality or improvements
    and removed
    questionFurther information is requested
    on Oct 19, 2021
  5. lucasreed commented on Oct 19, 2021

    @lucasreed
    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.

  6. added
    pinnedPrevents stalebot from removing
    and removed
    staleMarked as stale by stalebot
    on Jan 14, 2022
  7. sudermanjr commented on May 26, 2023

    @sudermanjr
    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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementAdding additional functionality or improvementspinnedPrevents stalebot from removingpriority: couldFuture work depending on bandwidth and availability

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions