Sha256: db09030c00f0a8076fe117e1b2886b62b1dd4e0a1700ba6f08e55a78391b7a2e

Contents?: true

Size: 1.69 KB

Versions: 5

Compression:

Stored size: 1.69 KB

Contents

RBMK
====
[//]: # (DESCRIPTION START)
This is a rather simple Ruby LDAP server that proxies operations upstream but
at the same time provides a facility to invoke your code at certain points in
the operation runtime. This may help to accomodate for some clients that
are not smart enough to implement the logic you need themselves.
LDAP is very rigid and static in its nature and although OpenLDAP provides some
very helpful overlays, it is far from enough.
[//]: # (DESCRIPTION STOP)

CAUTION
-------
Like its name suggests, `rbmk` is somewhat powerful, but is not very stable.
Expect random meltdowns! Please, **NEVER** run it as superuser. LDAP gems
that it uses are surprisingly feature-rich, but are not quite polished yet.
This user does not have the time to rewrite them and does not consider it
a huge problem. Remember, the best architecture is not the one that never fails,
but is instead the one that can handle failures gracefully.

LIMITATIONS
-----------
* This proxy is read-only, by design.
* This script does not detach from its terminal, again by design.
* Only tested with MRI 2.2, but will likely work with anything 1.9+.

INSTALL
-------
`gem install rbmk`, simple as that.

RUN
---
As this script is not a daemon, you have two easy options besides anything
you may invent yourself:
1. use any supervisor that are plenty nowadays: `supervisord`, `bluepill` etc.
1. or just run it inside a `tmux` session and leave it there.

USAGE
-----
`rbmk FILENAME`, where *FILENAME* is a configuration file.

CONFIGURATION
-------------
Upon its invocation `rbmk` evals its first argument and thus is configured
by your Ruby code inside that file. Please refer to `examples/rbmk.rb` for an example
configuration file.

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
rbmk-0.1.0.e README.md
rbmk-0.1.0.d README.md
rbmk-0.1.0.c README.md
rbmk-0.1.0.b README.md
rbmk-0.1.0.a README.md