diff options
author | Christian Pointner <equinox@helsinki.at> | 2011-03-29 21:51:35 (GMT) |
---|---|---|
committer | Christian Pointner <equinox@helsinki.at> | 2011-03-29 21:51:35 (GMT) |
commit | 9ed0da8ca5b125495b3a0796c60f98abb233e27f (patch) | |
tree | 9a79a2d2b43a0d2702228e2af4adf522185e3540 /nopcollect | |
parent | 90d86556d7bcf29964f4c73b72ce47bcda7543aa (diff) |
add initial nopcollect
Diffstat (limited to 'nopcollect')
-rw-r--r-- | nopcollect/conf.lua | 33 | ||||
-rwxr-xr-x | nopcollect/nopcollect | 54 | ||||
-rw-r--r-- | nopcollect/nopcollect.conf | 8 |
3 files changed, 95 insertions, 0 deletions
diff --git a/nopcollect/conf.lua b/nopcollect/conf.lua new file mode 100644 index 0000000..eb1cd29 --- /dev/null +++ b/nopcollect/conf.lua @@ -0,0 +1,33 @@ +-- +-- rhnop +-- +-- Copyright (C) 2011 Christian Pointner <equinox@helsinki.at> +-- +-- This file is part of rhnop. +-- +-- rhnop is free software: you can redistribute it and/or modify +-- it under the terms of the GNU General Public License as published by +-- the Free Software Foundation, either version 3 of the License, or +-- any later version. +-- +-- rhnop is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-- GNU General Public License for more details. +-- +-- You should have received a copy of the GNU General Public License +-- along with rhnop. If not, see <http://www.gnu.org/licenses/>. +-- + +local conf = {} + +local file = assert(io.open("nopcollect.conf", "r")) +for line in file:lines() do + local k,v = string.match(line, "^([^=#]+)=(.*)$") + if k and v and v ~= "" then + conf[k] = v + end +end +file:close() + +return conf diff --git a/nopcollect/nopcollect b/nopcollect/nopcollect new file mode 100755 index 0000000..04560e2 --- /dev/null +++ b/nopcollect/nopcollect @@ -0,0 +1,54 @@ +#!/usr/bin/lua +-- +-- rhnop +-- +-- Copyright (C) 2011 Christian Pointner <equinox@helsinki.at> +-- +-- This file is part of rhnop. +-- +-- rhnop is free software: you can redistribute it and/or modify +-- it under the terms of the GNU General Public License as published by +-- the Free Software Foundation, either version 3 of the License, or +-- any later version. +-- +-- rhnop is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-- GNU General Public License for more details. +-- +-- You should have received a copy of the GNU General Public License +-- along with rhnop. If not, see <http://www.gnu.org/licenses/>. +-- +-- +-- send now and next cart# and length to nopsyncd +-- this script should be called by the now/next macro cart +-- the arguments should be: now# nowlen next# nextlen +-- + +require "socket" + +conf = require "conf" + +-- connect to server (reconnect after error) +local sock = assert(socket.tcp()) + +local ret, err = sock:connect(conf.host, conf.port) +if ret == nil then + print(err) + return 1 +end + +print "connection established" + +-- TODO: load all info we don't have yet + +while true do + local timestamp = sock:receive('*l') + -- TODO: check if connection is closed + print("received: '" .. timestamp .. "'") + + -- TODO: check if we already fetched that timestamp + -- TODO: fetch info for the timestamp and insert it into local db +end +sock:close() +return 0 diff --git a/nopcollect/nopcollect.conf b/nopcollect/nopcollect.conf new file mode 100644 index 0000000..18316fb --- /dev/null +++ b/nopcollect/nopcollect.conf @@ -0,0 +1,8 @@ +host=127.0.0.1 +port=2345 + +db=nop +#db_host=127.0.0.1 +#db_port=3306 +db_user= +db_pwd= |