prelude-correlator/master: Add a sample-plugin example

[email protected] Fri, 26 Feb 2010 15:45:52 +0100 (CET)
Newsgroups gmane.comp.security.ids.prelude.cvs
Message-ID <[email protected]>
commit e0d28d24a950fe912818c3059145b3cb970df790
Author: Yoann Vandoorselaere <[email protected]>
Date:   Fri Feb 26 15:45:35 2010 +0100

    Add a sample-plugin example


========================================

 docs/sample-plugin/myplugin/__init__.py |    1 +
 docs/sample-plugin/myplugin/main.py     |    6 ++++++
 docs/sample-plugin/setup.py             |   13 +++++++++++++
 setup.py                                |    9 +++++++--
 4 files changed, 27 insertions(+), 2 deletions(-)

========================================

diff --git a/docs/sample-plugin/myplugin/__init__.py b/docs/sample-plugin/myplugin/__init__.py
new file mode 100644
index 0000000..677ba9b
--- /dev/null
+++ b/docs/sample-plugin/myplugin/__init__.py
@@ -0,0 +1 @@
+from main import MyPlugin
diff --git a/docs/sample-plugin/myplugin/main.py b/docs/sample-plugin/myplugin/main.py
new file mode 100644
index 0000000..617e0ed
--- /dev/null
+++ b/docs/sample-plugin/myplugin/main.py
@@ -0,0 +1,6 @@
+from PreludeCorrelator.pluginmanager import Plugin
+
+class MyPlugin(Plugin):
+    def run(self, idmef):
+        print("Hello from %s" % self.__class__.__name__)
+        print(idmef)
diff --git a/docs/sample-plugin/setup.py b/docs/sample-plugin/setup.py
new file mode 100644
index 0000000..722c4bb
--- /dev/null
+++ b/docs/sample-plugin/setup.py
@@ -0,0 +1,13 @@
+from setuptools import setup, find_packages
+
+setup(
+    name='MyPlugin',
+    version='1.0',
+    description="Plugin description",
+    author="Foo Bar",
+    packages=find_packages(),
+    entry_points='''
+    	[PreludeCorrelator.plugins]
+    	MyPlugin = myplugin:MyPlugin
+    '''
+)
diff --git a/setup.py b/setup.py
index 5aa9cbe..65dd612 100644
--- a/setup.py
+++ b/setup.py
@@ -79,16 +79,21 @@ class my_install(install):
                 config.close()
 
 
+docs_plugin_support = ["docs/sample-plugin/setup.py"]
+docs_plugin_files = ["docs/sample-plugin/myplugin/__init__.py", "docs/sample-plugin/myplugin/main.py"]
+
 is_egg = "bdist_egg" in sys.argv
 if is_egg:
         # Make sure we remove any trace of siteconfig.py
         try: shutil.rmtree("build")
         except: pass
-        package_data = { '': [ "*.dat"] }
-        data_files = [ ("", ["prelude-correlator.conf"]) ]
+        package_data = { '': [ "*.dat"], 'docs/sample-plugin': ["docs/sample-plugin/setup.py"] }
+        data_files = [ ("", ["prelude-correlator.conf"]), ("docs/sample-plugin", docs_plugin_support), ("docs/sample-plugin/myplugin", docs_plugin_files) ]
 else:
         package_data = {}
         data_files = [ ("etc/prelude-correlator", ["prelude-correlator.conf"]),
+                       ("share/doc/prelude-correlator/sample-plugin", docs_plugin_support),
+		       ("share/doc/prelude-correlator/sample-plugin/myplugin", docs_plugin_files),
                        ("var/lib/prelude-correlator", ["PreludeCorrelator/plugins/dshield.dat", "PreludeCorrelator/plugins/spamhaus_drop.dat"]) ]
 
 setup(
_______________________________________________
Prelude-cvslog site list
[email protected]
http://lists.prelude-technologies.com/mailman/listinfo/prelude-cvslog