1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
|
Juju Deployer
-------------
A deployment tool for juju that allows stack-like configurations of complex
deployments.
It supports configuration in yaml or json.
Installation
------------
$ virtualenv --system-site-packages deployer
$ ./deployer/bin/easy_install juju-deployer
$ ./deployer/bin/juju-deployer -h
Usage
-----
Stack Definitions
-----------------
High level view::
blog:
series: precise
services:
blog:
charm: wordpress
branch: lp:charms/precise/wordpress
db:
charm: mysql
branch: lp:charms/precise/mysql
relations:
- [db, blog]
blog-prod:
inherits: blog
services:
blog:
num_units: 3
constraints: instance-type=m1.medium
options:
wp-content: include-file://content-branch.txt
db:
constraints: instance-type=m1.large
options:
tuning: include-base64://db-tuning.txt
cachelb:
charm: varnish
branch: lp:charms/precise/varnish
relations:
- [cachelb, blog]
We've got two deployment stacks here, blog, and blog-prod. The blog stack defines
a simple wordpress deploy with mysql and two relations. In this case its
Development
-----------
Obtain source
$ bzr branch lp:juju-deployer/darwin deployer
$ cd deployer
# Test runner
$ python setup.py test
Background
----------
This is a wrapper for Juju that allows stack-like configurations of complex
deployments. It was created to deploy Openstack but should be able to deploy
other complex service configurations in the same manner.
See deployments.cfg and deployments.cfg.sample for examples of how to describe
service stacks in JSON.
|