modfiied to have space support in the juju2 configuration.
[joid.git] / ci / config_tpl / juju2 / bundle_tpl / ceph.yaml
1 {% if opnfv.storage_dict.ceph is defined %}
2     ceph:
3       charm: "./{{ ubuntu.release }}/ceph"
4       num_units: {{ unit_ceph_qty() }}
5       options:
6         monitor-count: {{ unit_ceph_qty() }}
7         fsid: 5a791d94-980b-11e4-b6f6-3c970e8b1cf7
8         monitor-secret: AQAi5a9UeJXUExAA+By9u+GPhl8/XiUQ4nwI3A==
9 {% if ubuntu.release == 'trusty' and os.release < 'newton' %}
10         source: "cloud:{{ ubuntu.release }}-updates/{{ os.release }}"
11 {% elif ubuntu.release == 'xenial' and os.release >= 'newton' %}
12         source: "cloud:{{ ubuntu.release }}-updates/{{ os.release }}"
13 {% endif %}
14 {% if os.network.ipv6 %}
15         prefer-ipv6: {{ os.network.ipv6 }}
16 {% endif %}
17 {% if opnfv.spaces_dict.storage is defined %}
18         #ceph-cluster-network: {{ opnfv.spaces_dict.storage.cidr }}
19 {% endif %}
20       to:
21 {% if os.hyperconverged %}
22 {% for unit_id in to_select(unit_ceph_qty()) %}
23         - "lxd:nodes/{{ unit_id }}"
24 {% endfor %}
25 {% else %}
26 {% if os.ha.mode == 'ha' %}
27 {% for unit_id in range(0, 3) %}
28         - "lxd:nodes/{{ unit_id }}"
29 {% endfor %}
30 {% else %}
31         - "lxd:nodes/0"
32         - "lxd:nodes/0"
33         - "lxd:nodes/0"
34 {% endif %}
35 {% endif %}
36     ceph-osd:
37       charm: "./{{ ubuntu.release }}/ceph-osd"
38 {% if os.hyperconverged %}
39       num_units: {{ opnfv.units }}
40 {% else %}
41       num_units: 3
42 {% endif %}
43       options:
44         osd-devices: {{ opnfv.storage_dict.ceph.disk }}
45         osd-reformat: 'yes'
46 {% if ubuntu.release == 'trusty' and os.release < 'newton' %}
47         source: "cloud:{{ ubuntu.release }}-updates/{{ os.release }}"
48 {% elif ubuntu.release == 'xenial' and os.release >= 'newton' %}
49         source: "cloud:{{ ubuntu.release }}-updates/{{ os.release }}"
50 {% endif %}
51 {% if os.network.ipv6 %}
52         prefer-ipv6: {{ os.network.ipv6 }}
53 {% endif %}
54       to:
55 {% if os.hyperconverged %}
56 {% for unit_id in range(0, opnfv.units) %}
57         - "nodes/{{ unit_id }}"
58 {% endfor %}
59 {% else %}
60 {% if os.ha.mode == 'ha' %}
61 {% for unit_id in range(0, 3) %}
62         - "nodes/{{ unit_id }}"
63 {% endfor %}
64 {% else %}
65         - "nodes/0"
66         - "nodes-compute/0"
67         - "nodes-compute/1"
68 {% endif %}
69 {% endif %}
70     ceph-radosgw:
71       charm: "./{{ ubuntu.release }}/ceph-radosgw"
72       num_units: {{ unit_qty() if os.beta.hacluster_ceph_radosgw else 1 }}
73       bindings:
74         internal: internal
75 {% if opnfv.spaces_dict.data is defined %}
76         admin: admin
77 {% else %}
78         admin: internal
79 {% endif %}
80 {% if opnfv.spaces_dict.public is defined %}
81         public: public
82 {% else %}
83         public: internal
84 {% endif %}
85       options:
86         region: {{ os.region }}
87         use-embedded-webserver: true
88         operator-roles: "Member,admin"
89 {% if ubuntu.release == 'trusty' and os.release < 'newton' %}
90         source: "cloud:{{ ubuntu.release }}-updates/{{ os.release }}"
91 {% elif ubuntu.release == 'xenial' and os.release >= 'newton' %}
92         source: "cloud:{{ ubuntu.release }}-updates/{{ os.release }}"
93 {% endif %}
94 {% if os.network.ipv6 %}
95         prefer-ipv6: {{ os.network.ipv6 }}
96 {% endif %}
97 {% if opnfv.storage_dict.ceph is defined %}
98         ceph-osd-replication-count: {{ unit_ceph_qty() }}
99 {% endif %}
100       to:
101 {% for unit_id in to_select(unit_qty() if os.beta.hacluster_ceph_radosgw else 1) %}
102         - "lxd:nodes/{{ unit_id }}"
103 {% endfor %}
104 {% endif %}