Metadata-Version: 1.0
Name: slapos.cookbook
Version: 0.12
Summary: SlapOS recipes.
Home-page: UNKNOWN
Author: UNKNOWN
Author-email: UNKNOWN
License: GPLv3
Description: slapos.cookbook
        ===============
        
        0.12 (unreleased)
        =================
        
        * Fix slaprunner, phpmyadmin software releases, added
        wordpress software release. [Cedric de Saint Martin]
        
        0.11 (2011-07-07)
        =================
        
        * Enable test suite runner for vifib.
        
        0.10 (2011-07-01)
        =================
        
        * Add PHPMyAdmin software release used in SlapOS tutorials
        [Cedric de Saint Martin]
        * Add slaprunner software release [Cedric de Saint Martin]
        
        0.9 (2011-06-24)
        ================
        
        * mysql recipe : Changing slapos.recipe.erp5.execute to
        slapos.recipe.librecipe.execute [Cedric de Saint Martin]
        
        0.8 (2011-06-15)
        ================
        
        * Add MySQL and MariaDB standalone software release and recipe
        [Cedric de Saint Martin]
        * Fixed slapos.recipe.erp5testnode instantiation [Sebastien Robin]
        
        0.7 (2011-06-14)
        ================
        
        * Fix slapos.recipe.erp5 package by providing site.zcml in it. [Łukasz Nowak]
        * Improve slapos.recipe.erp5testnode partition instantiation error reporting
        [Sebastien Robin]
        
        0.6 (2011-06-13)
        ================
        
        * Fixed slapos.recipe.erp5 instantiation. [Łukasz Nowak]
        
        0.5 (2011-06-13)
        ================
        
        * Implement zabbix agent instantiation. [Łukasz Nowak]
        * Drop dependency on Zope2. [Łukasz Nowak]
        * Share more in slapos.recipe.librecipe module. [Łukasz Nowak]
        
        0.4 (2011-06-09)
        ================
        
        * Remove reference to slapos.tool.networkcache as it was removed from pypi. [Łukasz Nowak]
        * Add Kumofs standalone software release and recipe [Cedric de Saint Martin]
        * Add Memcached standalone software release and recipe [Cedric de Saint Martin]
        
        0.3 (2011-06-09)
        ================
        
        * Moved out template and build to separate distributions [Łukasz Nowak]
        * Depend on slapos.core instead of depracated slapos.slap [Romain Courteaud]
        * Fix apache module configuration [Kazuhiko Shiozaki]
        * Allow to control full environment in erp5 module [Łukasz Nowak]
        
        0.2 (2011-05-30)
        ================
        
        * Allow to pass zope_environment in erp5 entry point [Łukasz Nowak]
        
        0.1 (2011-05-27)
        ================
        
        * All slapos.recipe.* became slapos.cookbook:* [Łukasz Nowak]
        
        
        cloudooo
        =========
        
        Instantiates CloudOOo instance.
        
        
        download
        ========
        
        Extremely simple recipe to download using zc.buildout download utility.
        
        Usage
        -----
        
        ::
        
        [buildout]
        parts =
        download
        
        [download]
        recipe = slapos.cookbook:download
        url = https://some.url/file
        
        Such profile will download https://some.url/file and put it in
        buildout:parts-directory/download/download
        
        filename parameter can be used to change destination named filename.
        
        destination parameter allows to put explicit destination.
        
        md5sum parameter allows pass md5sum.
        
        mode (octal, so for rw-r--r-- use 0644) allows to set mode
        
        Exposes target attribute which is path to downloaded file.
        
        Notes
        -----
        
        This recipe suffers from buildout download utility issue, which will do not
        try to redownload resource with wrong md5sum.
        
        
        erp5
        ====
        
        Instantiates ERP5 instance.
        
        
        erp5testnode
        ============
        
        
        helloworld
        ==========
        
        It only installs a dummy wrapper saying "Hello World!" and sends to the master an "HelloWorld" parameter.
        
        
        java
        ====
        
        This recipe downloads and installs java in your buildout.
        
        Buildout configuration:
        -----------------------
        
        Add this section to your buildout configuration::
        
        [buildout]
        parts =
        ... your other parts ...
        java
        ...
        
        [java]
        recipe = slapos.cookbook:java
        
        By default it will fetch Java 6u25, but you might want to install from another location or another version like this::
        
        [java]
        recipe = slapos.cookbook:java
        download-url = ftp://location/to/self-extracting/java.bin
        
        Or you can install openjdk instead.
        
        [java]
        recipe = slapos.cookbook:java
        flavour = openjdk
        
        
        Notes:
        ------
        
        This recipe only works with linux at the moment
        
        This recipe requires rpm2cpio and cpio to be installed on your system.
        
        Authors:
        --------
        
        Original author: Cedric de Saint Martin - cedric.dsm [ at ] tiolive [ dot ] com
        
        Inspired by : z3c.recipe.openoffice made by Jean-Francois Roche - jfroche@affinitic.be
        
        
        
        kumofs
        =========
        
        Instantiates KumoFS instance.
        
        
        kvm
        ===
        
        Introduction
        ------------
        
        The erp5.recipe.kvm aims to integrate KVM setups and buildout. This recipe is
        able to download one remote image and setup a KVM environment to use it.
        
        This recipe is also capable to reuse images or partitions already present on
        disk to create the setup.
        
        Examples
        --------
        
        The follow examples lists different kind of configurations.
        
        
        KVM with Remote and gzipped Image
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        
        ::
        
        [kvm-testing-with-remote-gzip-image]
        image = http://URL/public.mdv2010.0_x86_64.qcow2.img.gz
        
        # md5 checks are optional
        md5_download = adcff8adcff8adcff8adcff8
        md5_image = 1a4e371a4e371a4e371a4e371a4e37
        
        gzip = true
        
        # Use -hda instead -drive arg
        # Default is drive (see Options bellow)
        image_type = hda
        
        ### Common Configuration bellow. ###
        
        # VNC is optional
        kvm_vnc = <SOME-IP>:<VNC-DISPLAY>
        
        # Graphic is optional
        kvm_graphic = std
        
        
        # Define list of redirections.
        kvm_redir =
        tcp:13480::80
        
        kvm_net =
        user,hostname=publicmandriva
        nic,model=ne2k_pci
        
        # This automatically create a redirection for 13456 -> 22
        ssh_port = 13456
        ssh_key_path = /path/to/mykey.key
        
        KVM with Remote and raw Image
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        
        ::
        
        [kvm-testing-with-remote-raw-image]
        image = http://URL/public.mdv2010.0_x86_64.qcow2.img
        md5_download = 1a4e371a4e371a4e371a4e371a4e37
        md5_image = 1a4e371a4e371a4e371a4e371a4e37
        
        gzip = false
        
        ### The Rest Same configuration as previous ###
        
        KVM with direct local Image file
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        
        This does not copy and/or download the image::
        
        [kvm-testing-with-local-image]
        
        file = /home/you/public.mdv2010.0_x86_64.qcow2.img
        md5_image = 1a4e371a4e371a4e371a4e371a4e37
        
        ### The Rest Same configuration as previous ###
        
        KVM with a linux partition
        ~~~~~~~~~~~~~~~~~~~~~~~~~~
        
        This does not copy and/or download the image::
        
        [kvm-testing-a-linux-partition]
        
        file = /dev/sdb
        
        ### The Rest Same configuration as previous ###
        
        
        Options
        -------
        
        
        location
        
        When define, it does not use buildout parts directory to allocate the image.
        
        image
        
        URL to a remote image.
        
        file
        
        Use file makes recipe ignore image option. You can define a path to a image
        or partion to use.
        
        image_type
        
        You can define how the KVM will use the image with "-hdx" or "-drive". By
        default it uses drive and the result is:
        
        "kvm -drive file=IMAGE,if=virtio,cache=none,boot=on ..."
        
        if you use image_type=hda:
        
        "kvm -hda IMAGE ..."
        
        gzip
        
        If true means the image is compressed (gzipped), and the recipe will
        uncompress the image before copy it.
        
        md5_download
        
        When defined, this values is used to verify the file downloaded.
        
        md5_image
        
        When defined, this values is used to verify the image generated, don't use it
        when a partition is used in file parameter.
        
        kvm_vnc
        
        Define the ip-address:display used by KVM to start the VNC server. If not
        defined, no VNC port is created.
        
        kvm_redir
        
        Define port redirections to the buildout.
        
        kvm_graphic
        
        If defined it adds the "-vga value" at the KVM command.
        
        kvm_net
        
        Define the net definitions, each value defines one "-net" in kvm command.
        Example:
        
        kvm_net =
        user,hostname=publicmandriva
        nic,model=ne2k_pci
        
        It generates:
        
        "kvm -net user,hostname=publicmandriva -net  nic,model=ne2k_pci ..."
        
        kvm_snapshot
        
        Use "-snapshot" when run a KVM. This not write the changes direct into the
        image. Default value is False.
        
        ssh_port
        
        If defined creates a new redirection for port 22 and creates few script to
        connect to the instance.
        
        ssh_hostname
        
        By default it uses localhost. You don't need to define this.
        
        ssh_key_path
        
        Path to the ssh key used to connect without password to the image running.
        
        ssh_user
        
        Define the server that will be used to connect to the instance.
        
        kvm_bin_directory
        
        Place where the scripts will be created. By default it uses bin-directory from
        buildout.
        
        kvm_run_directory
        
        Place where the pid file will be created, by default it uses var-directory
        from buildout.
        
        
        Generated Commands
        ------------------
        
        Few scripts are generated to you manage your KVM instance. The scripts names are
        created with the followed standard:
        
        KVM-PARTS-NAME-ctl
        
        Commands usage
        ~~~~~~~~~~~~~~
        
        KVM-PARTS-NAME-ctl (start|stop|status|restart)
        
        This script is used to manage the KVM instance.
        
        
        KVM-PARTS-NAME-sendfile REMOTEFILE LOCALFILE
        
        Copy the local file to a remote place.
        
        KVM-PARTS-NAME-getfile REMOTEFILE LOCALFILE
        
        Copy the remote file to a local place.
        
        KVM-PARTS-NAME-runscript COMMAND
        
        Run a command into remote KVM computer.
        
        
        libcloud
        ========
        
        Slapified recipe to interact with any libcloud supported IaaS system
        
        
        libcloudrequest
        ===============
        
        
        librecipe
        =========
        
        Thanks to using slapos.cookbook:librecipe it is easier to create zc.buildout recipes in SlapOS environment.
        
        How to use?
        -----------
        
        In setup.py of recipe add only one install requires to slap.lib.recipe.
        
        In code itself subclass from slap.lib.recipe.BaseSlapRecipe.BaseSlapRecipe.
        
        Use _install hook:
        
        ::
        
        from slap.lib.recipe.BaseSlapRecipe import BaseSlapRecipe
        
        class Recipe(BaseSlapRecipe):
        ...
        def _install(self):
        # refer below for list of available objects
        specific code
        of recipe
        
        Available variables self.:
        
        * name and options passed by zc.buildout during init
        * work_directory -- buildout's directory
        * bin_directory -- places for generated binaries
        * running_wrapper_location -- filename of wrapper to create
        * data_root_directory -- directory container for data -- inside this
        directory it is advised to create named directories for provided servers
        which needs data
        * backup_directory -- directory container for backups -- inside this
        directory it is advised o created named directories for backups, with same
        structure as in data_root_directory
        * var_directory -- container for various, unix following things:
        
        * log_directory -- container for logs
        * run_directory -- container for pidfiles and sockets
        
        * etc_directory -- place to put named files and directories of configuration
        for provided servers
        * computer_id -- id of computer
        * computer_partition_id -- if of computer partition
        * server_url - url of Vifib server
        * software_release_url -- url of software release being instantiated
        * slap -- initialised connection to Vifib server
        * computer_partition -- initialised connection to computer partition
        * request -- shortcut to computer partition request method
        
        By default all directories are created before calling _install hook.
        
        _install method shall return list of paths which are safe to be removed by
        buildout during part uninstallation.
        
        Important assumptions
        ---------------------
        
        Because in SlapOS environment zc.buildout does not know when data are changed,
        recipes shall be always uninstalled/installed. This is done during constructing
        recipe instance which subclasses from BaseSlapRecipe.
        
        
        memcached
        =========
        
        Instantiates Memcached instance.
        
        
        mysql
        =========
        
        Instantiates MySQL instance.
        
        
        nbdserver
        =========
        
        
        nosqltestbed
        ============
        
        
        proactive
        =========
        Instantiate an proactive environment.
        
        
        sheepdogtestbed
        ===============
        
        
        siptester
        =========
        
        
        slaprunner
        ==========
        
        
        testnode
        ========
        
        Generic testnode.
        
        
        vifib
        =====
        
        
        xwiki
        =====
        
        Instantiates an xwiki environment.
        
        
        zabbixagent
        ===========
        
        
Keywords: slapos recipe
Platform: UNKNOWN
Classifier: Framework :: Buildout :: Recipe
Classifier: Programming Language :: Python
