Code Monkey home page Code Monkey logo

deprek8's Introduction

deprek8

Evergreen policy to monitor Kubernetes APIs deprecations.

Quick how-to with Helm and Conftest

First, install Conftest (for MacOS users: brew install instrumenta/instrumenta/conftest)

$ cd stable/prometheus
$ curl https://raw.githubusercontent.com/naquada/deprek8/master/policy/deprek8.rego > deprek8.rego
$ $ helm template --set podSecurityPolicy.enabled=true --set server.ingress.enabled=true . | conftest test -p deprek8.rego -
WARN - Ingress/release-name-prometheus-server: API extensions/v1beta1 for PriorityClass is deprecated, use networking.k8s.io/v1beta1 instead.
FAIL - PodSecurityPolicy/release-name-prometheus-node-exporter: API extensions/v1beta1 for PodSecurityPolicy is no longer served by default, use policy/v1beta1 instead.
FAIL - DaemonSet/release-name-prometheus-node-exporter: API extensions/v1beta1 for DaemonSet is no longer served by default, use apps/v1 instead.
FAIL - Deployment/release-name-prometheus-alertmanager: API extensions/v1beta1 for Deployment is no longer served by default, use apps/v1 instead.
FAIL - Deployment/release-name-prometheus-kube-state-metrics: API extensions/v1beta1 for Deployment is no longer served by default, use apps/v1 instead.
FAIL - Deployment/release-name-prometheus-pushgateway: API extensions/v1beta1 for Deployment is no longer served by default, use apps/v1 instead.
FAIL - Deployment/release-name-prometheus-server: API extensions/v1beta1 for Deployment is no longer served by default, use apps/v1 instead.

deprek8's People

Contributors

nicolasbernard avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

deprek8's Issues

the rego filename should reflect the k8s version it is written for

The current deprek8.rego is written for 1.16, when a new Kubernetes version is released with breaking API changes my conftest run would apparently require a different policy file.

That's why I propose the rego filename should reflect the Kubernetes version it is written for.

So instead of running conftest test -p deprek8.rego ... one would run conftest test -p deprek8_1_16.rego ...

Seems more future proof to me.

Add more deprecations from k8s 1.17

From 1.17 changelogs:

All resources within the rbac.authorization.k8s.io/v1alpha1 and rbac.authorization.k8s.io/v1beta1 API groups are deprecated in favor of rbac.authorization.k8s.io/v1, and will no longer be served in v1.20.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.