058ad3e288347ee231d6cb122abb67aba104ff88
[osm/devops.git] / installers / charm / bundles / osm / bundle.yaml
1 # Copyright 2020 Canonical Ltd.
2 #
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
6 #
7 #     http://www.apache.org/licenses/LICENSE-2.0
8 #
9 #     Unless required by applicable law or agreed to in writing, software
10 #     distributed under the License is distributed on an "AS IS" BASIS,
11 #     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 #     See the License for the specific language governing permissions and
13 #     limitations under the License.
14 name: osm
15 bundle: kubernetes
16 docs: https://discourse.charmhub.io/t/osm-docs-index/8806
17 description: |
18   **Single instance Charmed OSM**
19
20   Charmed OSM is an OSM distribution, developed and maintained by Canonical, which uses
21   Juju charms to simplify its deployments and operations. This bundle distribution refers
22   to the development stack for OSM and allows you to deploy a single instance OSM bundle
23   that is fast, reliable, and a complete solution with MicroStack and MicroK8s.
24
25   - Industry‐aligned and fully compliant with upstream
26   - Predictable release cadence and upgrade path
27   - Simplified deployments and operations
28   - Stable and secure
29   - Supported with Ubuntu Advantage
30   - Availability of managed services
31 applications:
32   zookeeper:
33     charm: zookeeper-k8s
34     channel: latest/stable
35     scale: 1
36     storage:
37       data: 100M
38   kafka:
39     charm: kafka-k8s
40     channel: latest/stable
41     scale: 1
42     trust: true
43     storage:
44       data: 100M
45   mariadb:
46     charm: charmed-osm-mariadb-k8s
47     scale: 1
48     series: kubernetes
49     storage:
50       database: 50M
51     options:
52       password: manopw
53       root_password: osm4u
54       user: mano
55   mongodb:
56     charm: mongodb-k8s
57     channel: 5/edge
58     series: jammy
59     scale: 1
60     storage:
61       db: 50M
62   nbi:
63     charm: osm-nbi
64     channel: latest/edge/paas
65     series: focal
66     trust: true
67     scale: 1
68     options:
69       database-commonkey: osm
70       log-level: DEBUG
71     resources:
72       nbi-image: opensourcemano/nbi:testing-daily
73   ro:
74     charm: osm-ro
75     channel: latest/beta
76     series: focal
77     trust: true
78     scale: 1
79     options:
80       log-level: DEBUG
81     resources:
82       ro-image: opensourcemano/ro:testing-daily
83   ng-ui:
84     charm: osm-ng-ui
85     channel: latest/beta
86     series: focal
87     trust: true
88     scale: 1
89     resources:
90       ng-ui-image: opensourcemano/ng-ui:testing-daily
91   lcm:
92     charm: osm-lcm
93     channel: latest/edge/paas
94     series: focal
95     scale: 1
96     options:
97       database-commonkey: osm
98       log-level: DEBUG
99     resources:
100       lcm-image: opensourcemano/lcm:testing-daily
101   mon:
102     charm: osm-mon
103     channel: latest/beta
104     series: focal
105     trust: true
106     scale: 1
107     options:
108       database-commonkey: osm
109       log-level: DEBUG
110       keystone-enabled: true
111     resources:
112       mon-image: opensourcemano/mon:testing-daily
113   pol:
114     charm: osm-pol
115     channel: latest/beta
116     series: focal
117     scale: 1
118     options:
119       log-level: DEBUG
120     resources:
121       pol-image: opensourcemano/pol:testing-daily
122   vca:
123     charm: osm-vca-integrator
124     channel: latest/beta
125     scale: 1
126   ingress:
127     charm: nginx-ingress-integrator
128     channel: latest/stable
129     scale: 1
130   prometheus:
131     charm: osm-prometheus
132     channel: latest/stable
133     scale: 1
134     series: kubernetes
135     storage:
136       data: 50M
137     options:
138       default-target: "mon:8000"
139   grafana:
140     charm: osm-grafana
141     channel: latest/stable
142     scale: 1
143     series: kubernetes
144   keystone:
145     charm: osm-keystone
146     channel: latest/stable
147     scale: 1
148     resources:
149       keystone-image: opensourcemano/keystone:testing-daily
150   temporal:
151     charm: osm-temporal
152     channel: latest/edge
153     series: focal
154     scale: 1
155     resources:
156       temporal-server-image: temporalio/auto-setup:1.20.0
157 relations:
158   - - grafana:prometheus
159     - prometheus:prometheus
160   - - kafka:zookeeper
161     - zookeeper:zookeeper
162   - - keystone:db
163     - mariadb:mysql
164   - - lcm:kafka
165     - kafka:kafka
166   - - lcm:mongodb
167     - mongodb:database
168   - - lcm:vca
169     - vca:vca
170   - - ro:ro
171     - lcm:ro
172   - - ro:kafka
173     - kafka:kafka
174   - - ro:mongodb
175     - mongodb:database
176   - - pol:kafka
177     - kafka:kafka
178   - - pol:mongodb
179     - mongodb:database
180   - - mon:mongodb
181     - mongodb:database
182   - - mon:kafka
183     - kafka:kafka
184   - - mon:vca
185     - vca:vca
186   - - nbi:mongodb
187     - mongodb:database
188   - - nbi:kafka
189     - kafka:kafka
190   - - nbi:ingress
191     - ingress:ingress
192   - - nbi:prometheus
193     - prometheus:prometheus
194   - - nbi:keystone
195     - keystone:keystone
196   - - nbi:temporal
197     - temporal:temporal
198   - - mon:prometheus
199     - prometheus:prometheus
200   - - ng-ui:nbi
201     - nbi:nbi
202   - - ng-ui:ingress
203     - ingress:ingress
204   - - mon:keystone
205     - keystone:keystone
206   - - mariadb:mysql
207     - pol:mysql
208   - - grafana:db
209     - mariadb:mysql
210   - - temporal:db
211     - mariadb:mysql