index 20cbce9a8e3160fa0b5c127c0b24aa92b6ac2396..c78ec5fea715d77fb60c15c477e8a567a9f15f2f 100644 (file)
--- a/README
+++ b/README
- syscollector -- a system management / inventory collection service
- ====================================================================
+ SysDB -- a system management and inventory collection service
+ ===============================================================
- “System Collector” (syscollector) is a multi-backend system management and
- inventory collection service. It may be used to collect information from
- various backends (inventory services, monitoring services, etc.) and
- provides a unique interface to access the information independent of the
- active backends. This is done by mapping the backend objects to generic
- objects and correlating the attributes to create a single hierarchy of your
- infrastructure.
+ “System DataBase” (SysDB) is a multi-backend system management and inventory
+ collection service. It stores system and inventory information about
+ hardware and software systems. This information is (continuously) collected
+ from various configurable backends (inventory services, monitoring services,
+ etc.) and stored in a graph-like hierarchy of generic objects. The store may
+ be queried through a generic interface independent of the active backends.
+ Object names are canonicalized before they are added to the store to ensure
+ a consistent view of your infrastructure.
- This is free and open source software, licensed under the 2-clause BSD
- license. See COPYING for details.
+ The central object type is a host, which generally represents a physical or
+ virtual machine or any other type of physical resource. Hosts, in turn, may
+ reference a list of services which represent any kind of logical resource
+ like a software system. Both, hosts and services, may reference a list of
+ attributes which represent further information about the respective host or
+ service object. For example, attributes may specify static information like
+ a host's architecture or the software version or reference performance data
+ like the current memory utilization or much more.
+
+ SysDB is free and open source software, licensed under the 2-clause BSD
+ license. See COPYING for details. Changes between all SysDB releases can be
+ found in the file ReleaseNotes.
+
+ <http://sysdb.io/>
+
+Configure and install SysDB
+---------------------------
+
+ To configure, build and install SysDB with the default settings, run
+ ‘./configure && make && make install’. For detailed, generic instructions
+ see INSTALL. For a complete list of configure options and their description,
+ run ‘./configure --help’.
+
+ Various third-party packages are required for a full installation of SysDB.
+ See the section ‘Prerequisites’ below for details. A summary of
+ user-supplied and auto-detected build settings is displayed at the end of
+ each ‘configure’ run. Consult this first for trouble-shooting.
+
+ By default, SysDB will be installed into ‘/opt/sysdb’. You can adjust this
+ setting by specifying the ‘--prefix’ configure option - see INSTALL for
+ details. If you pass DESTDIR=<path> to ‘make install’, <path> will be
+ prefixed to all installation directories. This might be useful when creating
+ packages for SysDB.
Prerequisites
-------------
- To compile the syscollector package from source you need:
+ To compile the SysDB package from source you need:
* A build environment: autotools, libtool, C compiler, ...
+ <http://www.gnu.org/software/automake/>
+ <http://www.gnu.org/software/autoconf/>
+ <http://www.gnu.org/software/libtool/>
+ <http://www.freedesktop.org/wiki/Software/pkg-config/>
+ <http://gcc.gnu.org/>
+
+ * When building from Git, you also need the flex lexical analyzer generator
+ and bison parser generator (other lex and yacc compatible tools might work
+ as well if you are lucky).
+
+ <http://www.gnu.org/software/bison/>
+ <http://flex.sourceforge.net/>
+
* A POSIX + Single UNIX Specification compatible C library.
- * asciidoc, xsltproc:
+ <http://pubs.opengroup.org/onlinepubs/9699919799/>
+
+ * asciidoc, xmlto:
The AsciiDoc text document format is used to write the manpages.
-Configuring / Compiling / Installing
-------------------------------------
+ <http://www.methods.co.nz/asciidoc/>
+ <https://fedorahosted.org/xmlto/>
- To configure, build and install syscollector with the default settings, run
- `./configure && make && make install'. For detailed, generic instructions
- see INSTALL. For a complete list of configure options and their description,
- run `./configure --help'.
+ * libedit or libreadline:
+ A readline compatible command line editor and history library is used for
+ handling input in the sysdb client program.
+
+ <http://thrysoee.dk/editline/>
+ <http://tiswww.case.edu/php/chet/readline/rltop.html>
+
+ The following optional libraries may be used by various plugins:
+
+ * libdbi:
+ The database independent abstraction layer is used for database access by
+ the puppet::store-configs plugin.
- By default, syscollector will be installed into `/opt/syscollector'. You can
- adjust this setting by specifying the `--prefix' configure option - see
- INSTALL for details. If you pass DESTDIR=<path> to `make install', <path>
- will be prefixed to all installation directories. This might be useful when
- creating packages for syscollector.
+ <http://libdbi.sourceforge.net/>
+
+Testing
+-------
+
+ Unit and integration tests for SysDB are shipped along with the source code
+ in the ‘t’ subdirectory. Run ‘make test’ to run all available tests.
+
+ Some tests require the ‘fopencookie’ function as provided by the GNU libc
+ library. It used used to mock I/O related functions. In case this function
+ is not available, the respective tests will be disabled automatically.
+
+ The integration tests require valgrind. If it is not available, integration
+ tests will be disabled automatically.
+
+ For the latest build status, see:
+ <https://travis-ci.org/tokkee/sysdb>
+
+ Code coverage testing using Gcov may be enabled when using the
+ ‘--enable-gcov’ configure option.
+
+ For the latest coverage report, see:
+ <https://coveralls.io/r/tokkee/sysdb>
+
+Documentation
+-------------
+
+ All documentation for SysDB is available as manual pages (in roff and HTML
+ formats) and shipped alongside the source code in the doc/ subdirectory.
+ Also, it is available online at <http://sysdb.io/documentation/>.
+
+Getting Help
+------------
+
+ Various channels for asynchronous and real-time communication with
+ developers and users are available. See <http://sysdb.io/contact/> for
+ details about the mailing list, IRC channel, and social media.
Author
------
- Sebastian "tokkee" Harl <sh@tokkee.org>
+ Sebastian “tokkee” Harl <sh@tokkee.org>
+
+ See the file THANKS for credits and inspiration.
+
+ Want to contribute? Check out the website <http://sysdb.io> for details.