dimi-kr / netatmo

Retrieve data from Station or HomeCoach and exposed them with API / Prometheus

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

netatmo

Build codecov Quality Gate Status

CI

Following variables are required for CI:

Name Purpose
DOCKER_USER for publishing Docker image
DOCKER_PASS for publishing Docker image
CODECOV_TOKEN for publishing coverage to codecov

Usage

The application can be configured by passing CLI args described below or their equivalent as environment variable. CLI values take precedence over environments variables.

Be careful when using the CLI values, if someone list the processes on the system, they will appear in plain-text. Pass secrets by environment variables: it's less easily visible.

Usage of netatmo:
  -accessToken string
        [netatmo] Access Token {NETATMO_ACCESS_TOKEN}
  -address string
        [server] Listen address {NETATMO_ADDRESS}
  -cert string
        [server] Certificate file {NETATMO_CERT}
  -clientID string
        [netatmo] Client ID {NETATMO_CLIENT_ID}
  -clientSecret string
        [netatmo] Client Secret {NETATMO_CLIENT_SECRET}
  -corsCredentials
        [cors] Access-Control-Allow-Credentials {NETATMO_CORS_CREDENTIALS}
  -corsExpose string
        [cors] Access-Control-Expose-Headers {NETATMO_CORS_EXPOSE}
  -corsHeaders string
        [cors] Access-Control-Allow-Headers {NETATMO_CORS_HEADERS} (default "Content-Type")
  -corsMethods string
        [cors] Access-Control-Allow-Methods {NETATMO_CORS_METHODS} (default "GET")
  -corsOrigin string
        [cors] Access-Control-Allow-Origin {NETATMO_CORS_ORIGIN} (default "*")
  -csp string
        [owasp] Content-Security-Policy {NETATMO_CSP} (default "default-src 'self'; base-uri 'self'")
  -frameOptions string
        [owasp] X-Frame-Options {NETATMO_FRAME_OPTIONS} (default "deny")
  -graceDuration string
        [http] Grace duration when SIGTERM received {NETATMO_GRACE_DURATION} (default "30s")
  -hsts
        [owasp] Indicate Strict Transport Security {NETATMO_HSTS} (default true)
  -idleTimeout string
        [server] Idle Timeout {NETATMO_IDLE_TIMEOUT} (default "2m")
  -key string
        [server] Key file {NETATMO_KEY}
  -loggerJson
        [logger] Log format as JSON {NETATMO_LOGGER_JSON}
  -loggerLevel string
        [logger] Logger level {NETATMO_LOGGER_LEVEL} (default "INFO")
  -loggerLevelKey string
        [logger] Key for level in JSON {NETATMO_LOGGER_LEVEL_KEY} (default "level")
  -loggerMessageKey string
        [logger] Key for message in JSON {NETATMO_LOGGER_MESSAGE_KEY} (default "message")
  -loggerTimeKey string
        [logger] Key for timestamp in JSON {NETATMO_LOGGER_TIME_KEY} (default "time")
  -okStatus int
        [http] Healthy HTTP Status code {NETATMO_OK_STATUS} (default 204)
  -port uint
        [server] Listen port (0 to disable) {NETATMO_PORT} (default 1080)
  -prometheusAddress string
        [prometheus] Listen address {NETATMO_PROMETHEUS_ADDRESS}
  -prometheusCert string
        [prometheus] Certificate file {NETATMO_PROMETHEUS_CERT}
  -prometheusGzip
        [prometheus] Enable gzip compression of metrics output {NETATMO_PROMETHEUS_GZIP}
  -prometheusIdleTimeout string
        [prometheus] Idle Timeout {NETATMO_PROMETHEUS_IDLE_TIMEOUT} (default "10s")
  -prometheusIgnore string
        [prometheus] Ignored path prefixes for metrics, comma separated {NETATMO_PROMETHEUS_IGNORE}
  -prometheusKey string
        [prometheus] Key file {NETATMO_PROMETHEUS_KEY}
  -prometheusPort uint
        [prometheus] Listen port (0 to disable) {NETATMO_PROMETHEUS_PORT} (default 9090)
  -prometheusReadTimeout string
        [prometheus] Read Timeout {NETATMO_PROMETHEUS_READ_TIMEOUT} (default "5s")
  -prometheusShutdownTimeout string
        [prometheus] Shutdown Timeout {NETATMO_PROMETHEUS_SHUTDOWN_TIMEOUT} (default "5s")
  -prometheusWriteTimeout string
        [prometheus] Write Timeout {NETATMO_PROMETHEUS_WRITE_TIMEOUT} (default "10s")
  -readTimeout string
        [server] Read Timeout {NETATMO_READ_TIMEOUT} (default "5s")
  -refreshToken string
        [netatmo] Refresh Token {NETATMO_REFRESH_TOKEN}
  -scopes string
        [netatmo] Scopes, comma separated {NETATMO_SCOPES}
  -shutdownTimeout string
        [server] Shutdown Timeout {NETATMO_SHUTDOWN_TIMEOUT} (default "10s")
  -url string
        [alcotest] URL to check {NETATMO_URL}
  -userAgent string
        [alcotest] User-Agent for check {NETATMO_USER_AGENT} (default "Alcotest")
  -writeTimeout string
        [server] Write Timeout {NETATMO_WRITE_TIMEOUT} (default "10s")

About

Retrieve data from Station or HomeCoach and exposed them with API / Prometheus

License:MIT License


Languages

Language:Go 82.1%Language:Makefile 15.1%Language:Dockerfile 2.8%