/configmap-reload

Simple binary to trigger a reload when a Kubernetes ConfigMap is updated

Primary LanguageGoApache License 2.0Apache-2.0

Kubernetes ConfigMap Reload

license Docker Stars Docker Pulls Dependency Status CircleCI

configmap-reload is a simple binary to trigger a reload when Kubernetes ConfigMaps are updated. It watches mounted volume dirs and notifies the target process that the config map has been changed. It currently only supports sending an HTTP request, but in future it is expected to support sending OS (e.g. SIGHUP) once Kubernetes supports pod PID namespaces.

It is available as a Docker image at https://hub.docker.com/r/jimmidyson/configmap-reload

Usage

Usage of ./out/configmap-reload:
  -signalHook value
        the signal params to send a signal to target process when the specified config map volume directory has been updated, format:signalNumber:processName, eg: send nginx process with SIGHUP: 1:nginx 
  -volume-dir value
        the config map volume directory to watch for updates; may be used multiple times
  -web.listen-address string
        Address to listen on for web interface and telemetry. (default ":9533")
  -web.telemetry-path string
        Path under which to expose metrics. (default "/metrics")
  -webhook-method string
        the HTTP method url to use to send the webhook (default "POST")
  -webhook-retries int
        the amount of times to retry the webhook reload request (default 1)
  -webhook-status-code int
        the HTTP status code indicating successful triggering of reload (default 200)
  -webhook-url value
        the url to send a request to when the specified config map volume directory has been updated

License

This project is Apache Licensed