From d2a7b2a36ff10d98f54cd429f4a41e2f850f80d5 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Marek=20Vavru=C5=A1a?= Date: Thu, 7 May 2015 15:42:57 +0200 Subject: [PATCH] modules/ketcd: added polling --- modules/ketcd/ketcd.lua | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/modules/ketcd/ketcd.lua b/modules/ketcd/ketcd.lua index fed767632..5a43af086 100644 --- a/modules/ketcd/ketcd.lua +++ b/modules/ketcd/ketcd.lua @@ -39,11 +39,17 @@ function ketcd.config(conf) if type(conf) == 'table' then for k,v in pairs(conf) do options[k] = v end end + -- create connection local cli, err = ketcd.Etcd.new(options) if err then error(err) end ketcd.cli = cli + -- schedule recurrent polling + -- @todo: the etcd has watch() API, but this requires + -- coroutines on socket operations + if ketcd.ev then event.cancel(ketcd.ev) end + ketcd.ev = event.recurrent(5 * sec, ketcd.reload) end return ketcd -- 2.47.2