Giter VIP home page Giter VIP logo

ci-ns-ttl-controller's Introduction

ci-ns-ttl-controller

This tool implements a Kubernetes controller that manages hard and soft times-to-live (TTLs) for namespaces in order to ensure that namespaces do not persist in order stop resource leaks from test workloads. TTLs can be configured for a namespace by annotating the namespace either at creation time or at any later point:

TTL Type Annotation Key Annotation Value Description
Hard ci.openshift.io/ttl.hard time.Duration-formatted string The time after namespace creation when the namespace should be reaped.
Soft ci.openshift.io/ttl.soft time.Duration-formatted string The time after Pod termination or last active marker where, if no other Pods are Pending or Running, the namespace should be reaped. The last active marker is optional and stored as a RFC3339-formatted date in the ci.openshift.io/active annotation.

Whichever TTL is reached first will be used by the controller to delete the namespace.

The controller will only consider pods matching the !ci.openshift.io/ttl.ignore selector for soft TTL calculations, allowing non-matching pods to keep running while considering the namespace to be inactive.

Deployment

Deployment of these components requires system:admin level control, as it requires creating wide-reaching ClusterRoles and ClusterRoleBindings. To deploy, run:

make deploy

ci-ns-ttl-controller's People

Contributors

alvaroaleman avatar droslean avatar hongkailiu avatar openshift-merge-robot avatar stevekuznetsov avatar wking avatar

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.