• By tengu-bot
  • Latest version (#0)
  • trusty
  • Stable


Storm Deployer
The Storm Deployer provides a mechanism for deploying Storm Topology Jar application files on Juju deployed Storm Servers. Deployed as a
subordinate charm, applications may be subsequently upgraded across all of your Juju services/units.


The storm charm connector is a library used by the StormDeployer subordinate Juju charm that provides a Storm bolt, spout, etc. with the host, port, user, password, etc. for the services that are related to the subordinate charm.


The storm deployer is a tool to deploy topologies to a Storm cluster that was deployed via Juju.
Deployment is possible via source code or via jar. A .storm yaml file is needed with deploy configurations. An example can be seen here.

Deploying with source code requires a .stom with the format:

    - name: name of the topology (this should be the same as the topologyname which is used in submitTopology())
      jar: jar of the topology
      topologyclass: full domain and class of the topology
      packaging: mvn package
      repository: the git url where the topology can be found
      scriptbeforepackaging: optional script to run before packaging
      scriptbeforedeploying: optional script to run before deployment
      - parameters:
        - {name: name1, value: value1}
        - {name: name2, value: value2}
        type: type, can my mysql/mongo/postgres/redis/kafka/etc.
        script: script to execute
    - name: another topology

Deploying with jar requires a .storm with the format:

    - name: WordCount
      jar: WordCountExample-1.0-SNAPSHOT.jar
      topologyclass: com.sborny.wordcountexample.WordCountTopology
      packaging: jar

Deploying from a private repository requires username and password wich can be entered as credentials in the config:

juju set stormdeployer "credentials=username:password"
juju set stormdeployer "deploy=[url to .storm file on github]"
juju set stormdeployer "undeploy=TopologyName"

Deploying a topology with starting parameters is possible by entering them after the name:

  -name: ExampleTopologyName Arg1 Arg2

Contact Information


Report bugs on Github.


This software was created in the IBCN research group of Ghent University in Belgium. This software is used in Tengu, a project that aims to make experimenting with data frameworks and tools as easy as possible.


(string) Storm topologies that need to be undeployed. Comma separated list of storm topology names.
(string) Github username and password to deploy from private repository. Example username:password
(string) Storm topologies that need to be deployed. Comma separated list of urls that point to a stormdeployer file. Example