Armada OpenStack deployment yaml

Armada is a tool for managing multiple helm charts with dependencies by
centralizing all configurations in a single Armada yaml. This yaml is
used for a full OpenStack deployment.

Co-Authored-By: Alexis Rivera <gardlt@tetrasol.org>
Co-Authored-By: Pete Birley <pete@port.direct>

Change-Id: I70b41f038c2819aeaa4b2c7bb617b7b2c38441d1
This commit is contained in:
Tim Heyer 2017-07-06 15:57:59 -05:00 committed by Pete Birley
parent e30c1cf414
commit 47bb6d2a85
5 changed files with 1474 additions and 5 deletions

View File

@ -0,0 +1,696 @@
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: helm-toolkit
data:
chart_name: helm-toolkit
release: helm-toolkit
namespace: helm-toolkit
timeout: 300
values: {}
source:
type: local
location: /opt/openstack-helm/charts
subpath: helm-toolkit
reference: master
dependencies: []
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: ceph
data:
chart_name: ceph
release: ceph
namespace: ceph
timeout: 3600
install:
no_hooks: false
upgrade:
no_hooks: false
pre:
delete:
- name: ceph-bootstrap
type: job
labels:
- application: ceph
- component: bootstrap
- release_group: osh-ceph
- name: ceph-mds-keyring-generator
type: job
labels:
- application: ceph
- component: mds-keyring-generator
- release_group: osh-ceph
- name: ceph-mon-keyring-generator
type: job
labels:
- application: ceph
- component: mon-keyring-generator
- release_group: osh-ceph
- name: ceph-rgw-keyring-generator
type: job
labels:
- application: ceph
- component: rgw-keyring-generator
- release_group: osh-ceph
- name: ceph-storage-keys-generator
type: job
labels:
- application: ceph
- component: storage-keys-generator
- release_group: osh-ceph
- name: ceph-osd-keyring-generator
type: job
labels:
- application: ceph
- component: osd-keyring-generator
- release_group: osh-ceph
values:
manifests_enabled:
client_secrets: False
bootstrap:
enabled: True
network:
public: 192.168.0.0/16
cluster: 192.168.0.0/16
conf:
ceph:
config:
global:
osd_pool_default_size: 1
osd:
osd_crush_chooseleaf_type: 0
source:
type: local
location: /opt/openstack-helm/charts
subpath: ceph
reference: master
dependencies:
- helm-toolkit
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: ceph-config
data:
chart_name: ceph-config
release: ceph-config
namespace: openstack
timeout: 3600
install:
no_hooks: false
upgrade:
no_hooks: false
pre:
delete:
- name: ceph-namespace-client-key-generator
type: job
labels:
- application: ceph
- component: namespace-client-key-generator
- release_group: osh-ceph
values:
ceph:
namespace: ceph
manifests_enabled:
deployment: False
storage_secrets: False
network:
public: 192.168.0.0/16
cluster: 192.168.0.0/16
source:
type: local
location: /opt/openstack-helm/charts
subpath: ceph
reference: master
dependencies:
- helm-toolkit
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: mariadb
data:
chart_name: mariadb
release: mariadb
namespace: openstack
timeout: 3600
install:
no_hooks: false
upgrade:
no_hooks: false
values: {}
source:
type: local
location: /opt/openstack-helm/charts
subpath: mariadb
reference: master
dependencies:
- helm-toolkit
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: memcached
data:
chart_name: memcached
release: memcached
namespace: openstack
timeout: 300
install:
no_hooks: false
upgrade:
no_hooks: false
values: {}
source:
type: local
location: /opt/openstack-helm/charts
subpath: memcached
reference: master
dependencies:
- helm-toolkit
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: etcd
data:
chart_name: etcd
release: etcd
namespace: openstack
timeout: 3600
install:
no_hooks: false
upgrade:
no_hooks: false
values: {}
source:
type: local
location: /opt/openstack-helm/charts
subpath: etcd
reference: master
dependencies:
- helm-toolkit
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: rabbitmq
data:
chart_name: rabbitmq
release: rabbitmq
namespace: openstack
timeout: 300
install:
no_hooks: false
upgrade:
no_hooks: false
values: {}
source:
type: local
location: /opt/openstack-helm/charts
subpath: rabbitmq
reference: master
dependencies:
- helm-toolkit
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: ingress
data:
chart_name: ingress
release: ingress
namespace: openstack
timeout: 300
install:
no_hooks: false
upgrade:
no_hooks: false
values: {}
source:
type: local
location: /opt/openstack-helm/charts
subpath: ingress
reference: master
dependencies:
- helm-toolkit
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: keystone
data:
chart_name: keystone
release: keystone
namespace: openstack
timeout: 300
install:
no_hooks: false
upgrade:
no_hooks: false
pre:
delete:
- name: keystone-bootstrap
type: job
labels:
- application: keystone
- component: bootstrap
- release_group: osh-keystone
- name: keystone-credential-setup
type: job
labels:
- application: keystone
- component: credential-setup
- release_group: osh-keystone
- name: keystone-db-init
type: job
labels:
- application: keystone
- component: db-init
- release_group: osh-keystone
- name: keystone-db-sync
type: job
labels:
- application: keystone
- component: db-sync
- release_group: osh-keystone
- name: keystone-fernet-setup
type: job
labels:
- application: keystone
- component: fernet-setup
- release_group: osh-keystone
values: {}
source:
type: local
location: /opt/openstack-helm/charts
subpath: keystone
reference: master
dependencies:
- helm-toolkit
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: horizon
data:
chart_name: horizon
release: horizon
namespace: openstack
timeout: 300
install:
no_hooks: false
upgrade:
no_hooks: false
pre:
delete:
- name: horizon-db-init
type: job
labels:
- application: horizon
- component: db-init
- release_group: osh-horizon
- name: horizon-db-sync
type: job
labels:
- application: horizon
- component: db-sync
- release_group: osh-horizon
values: {}
source:
type: local
location: /opt/openstack-helm/charts
subpath: horizon
reference: master
dependencies:
- helm-toolkit
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: glance
data:
chart_name: glance
release: glance
namespace: openstack
timeout: 300
install:
no_hooks: false
upgrade:
no_hooks: false
pre:
delete:
- name: glance-bootstrap
type: job
labels:
- application: glance
- component: bootstrap
- release_group: osh-glance
- name: glance-db-init
type: job
labels:
- application: glance
- component: db-init
- release_group: osh-glance
- name: glance-db-sync
type: job
labels:
- application: glance
- component: db-sync
- release_group: osh-glance
- name: glance-ks-service
type: job
labels:
- application: glance
- component: ks-service
- release_group: osh-glance
- name: glance-ks-endpoints
type: job
labels:
- application: glance
- component: ks-endpoints
- release_group: osh-glance
- name: glance-ks-user
type: job
labels:
- application: glance
- component: ks-user
- release_group: osh-glance
values: {}
source:
type: local
location: /opt/openstack-helm/charts
subpath: glance
reference: master
dependencies:
- helm-toolkit
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: neutron
data:
chart_name: neutron
release: neutron
namespace: openstack
timeout: 300
install:
no_hooks: false
upgrade:
no_hooks: false
pre:
delete:
- name: neutron-bootstrap
type: job
labels:
- application: neutron
- component: bootstrap
- release_group: osh-neutron
- name: neutron-db-init
type: job
labels:
- application: neutron
- component: db-init
- release_group: osh-neutron
- name: neutron-db-sync
type: job
labels:
- application: neutron
- component: db-sync
- release_group: osh-neutron
- name: neutron-ks-service
type: job
labels:
- application: neutron
- component: ks-service
- release_group: osh-neutron
- name: neutron-ks-endpoints
type: job
labels:
- application: neutron
- component: ks-endpoints
- release_group: osh-neutron
- name: neutron-ks-user
type: job
labels:
- application: neutron
- component: ks-user
- release_group: osh-neutron
update:
- name: neutron-l3-agent
type: daemonset
labels:
- component: l3-agent
- application: neutron
- release_group: osh-neutron
values:
network:
interface:
tunnel: docker0
conf:
neutron:
default:
oslo:
log:
debug: false
neutron:
db:
l3_ha: False
min_l3_agents_per_router: 1
max_l3_agents_per_router: 1
l3_ha_network_type: vxlan
dhcp_agents_per_network: 1
ml2_conf:
ml2_type_flat:
neutron:
ml2:
flat_networks: public
openvswitch_agent:
agent:
neutron:
ml2:
ovs:
agent:
tunnel_types: vxlan
ovs:
neutron:
ml2:
ovs:
agent:
of_interface: ovs-ofctl
ovsdb_interface: vsctl
bridge_mappings: public:br-ex
source:
type: local
location: /opt/openstack-helm/charts
subpath: neutron
reference: master
dependencies:
- helm-toolkit
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: nova
data:
chart_name: nova
release: nova
namespace: openstack
timeout: 300
install:
no_hooks: false
upgrade:
no_hooks: false
pre:
delete:
- name: nova-bootstrap
type: job
labels:
- application: nova
- component: bootstrap
- release_group: osh-nova
- name: nova-db-init
type: job
labels:
- application: nova
- component: db-init
- release_group: osh-nova
- name: nova-db-sync
type: job
labels:
- application: nova
- component: db-sync
- release_group: osh-nova
- name: nova-ks-service
type: job
labels:
- application: nova
- component: ks-service
- release_group: osh-nova
- name: nova-ks-endpoints
type: job
labels:
- application: nova
- component: ks-endpoints
- release_group: osh-nova
- name: nova-ks-user
type: job
labels:
- application: nova
- component: ks-user
- release_group: osh-nova
values:
ceph:
enabled: false
conf:
nova:
default:
oslo:
log:
debug: false
libvirt:
nova:
conf:
virt_type: qemu
images_type: null
images_rbd_pool: null
images_rbd_ceph_conf: null
rbd_user: null
rbd_secret_uuid: null
disk_cachemodes: null
hw_disk_discard: null
upgrade_levels:
nova:
conf:
compute: null
source:
type: local
location: /opt/openstack-helm/charts
subpath: nova
reference: master
dependencies:
- helm-toolkit
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: cinder
data:
chart_name: cinder
release: cinder
namespace: openstack
timeout: 300
install:
no_hooks: false
upgrade:
no_hooks: false
pre:
delete:
- name: cinder-bootstrap
type: job
labels:
- application: cinder
- component: bootstrap
- release_group: osh-cinder
- name: cinder-db-init
type: job
labels:
- application: cinder
- component: db-init
- release_group: osh-cinder
- name: cinder-db-sync
type: job
labels:
- application: cinder
- component: db-sync
- release_group: osh-cinder
- name: cinder-ks-service
type: job
labels:
- application: cinder
- component: ks-service
- release_group: osh-cinder
- name: cinder-ks-endpoints
type: job
labels:
- application: cinder
- component: ks-endpoints
- release_group: osh-cinder
- name: cinder-ks-user
type: job
labels:
- application: cinder
- component: ks-user
- release_group: osh-cinder
values: {}
source:
type: local
location: /opt/openstack-helm/charts
subpath: cinder
reference: master
dependencies:
- helm-toolkit
---
schema: armada/ChartGroup/v1
metadata:
schema: metadata/Document/v1
name: ceph-storage
data:
description: "Ceph Storage"
sequenced: True
chart_group:
- ceph
- ceph-config
---
schema: armada/ChartGroup/v1
metadata:
schema: metadata/Document/v1
name: deploy-mariadb
data:
description: "Mariadb"
sequenced: True
chart_group:
- mariadb
---
schema: armada/ChartGroup/v1
metadata:
schema: metadata/Document/v1
name: openstack-infra-services
data:
description: "OpenStack Infra Services"
sequenced: False
chart_group:
- etcd
- rabbitmq
- memcached
- ingress
---
schema: armada/ChartGroup/v1
metadata:
schema: metadata/Document/v1
name: openstack-components
data:
description: "OpenStack Components"
sequenced: False
chart_group:
- keystone
- horizon
- glance
- neutron
- nova
- cinder
---
schema: armada/Manifest/v1
metadata:
schema: metadata/Document/v1
name: armada-manifest
data:
release_prefix: osh
chart_groups:
- ceph-storage
- deploy-mariadb
- openstack-infra-services
- openstack-components

View File

@ -0,0 +1,689 @@
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: helm-toolkit
data:
chart_name: helm-toolkit
release: helm-toolkit
namespace: helm-toolkit
timeout: 300
values: {}
source:
type: local
location: /opt/openstack-helm/charts
subpath: helm-toolkit
reference: master
dependencies: []
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: ceph
data:
chart_name: ceph
release: ceph
namespace: ceph
timeout: 3600
install:
no_hooks: false
upgrade:
no_hooks: false
pre:
delete:
- name: ceph-bootstrap
type: job
labels:
- application: ceph
- component: bootstrap
- release_group: osh-ceph
- name: ceph-mds-keyring-generator
type: job
labels:
- application: ceph
- component: mds-keyring-generator
- release_group: osh-ceph
- name: ceph-mon-keyring-generator
type: job
labels:
- application: ceph
- component: mon-keyring-generator
- release_group: osh-ceph
- name: ceph-rgw-keyring-generator
type: job
labels:
- application: ceph
- component: rgw-keyring-generator
- release_group: osh-ceph
- name: ceph-storage-keys-generator
type: job
labels:
- application: ceph
- component: storage-keys-generator
- release_group: osh-ceph
- name: ceph-osd-keyring-generator
type: job
labels:
- application: ceph
- component: osd-keyring-generator
- release_group: osh-ceph
values:
manifests_enabled:
client_secrets: False
bootstrap:
enabled: True
network:
public: 192.168.0.0/16
cluster: 192.168.0.0/16
source:
type: local
location: /opt/openstack-helm/charts
subpath: ceph
reference: master
dependencies:
- helm-toolkit
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: ceph-config
data:
chart_name: ceph-config
release: ceph-config
namespace: openstack
timeout: 3600
install:
no_hooks: false
upgrade:
no_hooks: false
pre:
delete:
- name: ceph-namespace-client-key-generator
type: job
labels:
- application: ceph
- component: namespace-client-key-generator
- release_group: osh-ceph
values:
ceph:
namespace: ceph
manifests_enabled:
deployment: False
storage_secrets: False
network:
public: 192.168.0.0/16
cluster: 192.168.0.0/16
source:
type: local
location: /opt/openstack-helm/charts
subpath: ceph
reference: master
dependencies:
- helm-toolkit
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: mariadb
data:
chart_name: mariadb
release: mariadb
namespace: openstack
timeout: 3600
install:
no_hooks: false
upgrade:
no_hooks: false
values: {}
source:
type: local
location: /opt/openstack-helm/charts
subpath: mariadb
reference: master
dependencies:
- helm-toolkit
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: memcached
data:
chart_name: memcached
release: memcached
namespace: openstack
timeout: 300
install:
no_hooks: false
upgrade:
no_hooks: false
values: {}
source:
type: local
location: /opt/openstack-helm/charts
subpath: memcached
reference: master
dependencies:
- helm-toolkit
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: etcd
data:
chart_name: etcd
release: etcd
namespace: openstack
timeout: 3600
install:
no_hooks: false
upgrade:
no_hooks: false
values: {}
source:
type: local
location: /opt/openstack-helm/charts
subpath: etcd
reference: master
dependencies:
- helm-toolkit
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: rabbitmq
data:
chart_name: rabbitmq
release: rabbitmq
namespace: openstack
timeout: 300
install:
no_hooks: false
upgrade:
no_hooks: false
values: {}
source:
type: local
location: /opt/openstack-helm/charts
subpath: rabbitmq
reference: master
dependencies:
- helm-toolkit
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: ingress
data:
chart_name: ingress
release: ingress
namespace: openstack
timeout: 300
install:
no_hooks: false
upgrade:
no_hooks: false
values: {}
source:
type: local
location: /opt/openstack-helm/charts
subpath: ingress
reference: master
dependencies:
- helm-toolkit
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: keystone
data:
chart_name: keystone
release: keystone
namespace: openstack
timeout: 300
install:
no_hooks: false
upgrade:
no_hooks: false
pre:
delete:
- name: keystone-bootstrap
type: job
labels:
- application: keystone
- component: bootstrap
- release_group: osh-keystone
- name: keystone-credential-setup
type: job
labels:
- application: keystone
- component: credential-setup
- release_group: osh-keystone
- name: keystone-db-init
type: job
labels:
- application: keystone
- component: db-init
- release_group: osh-keystone
- name: keystone-db-sync
type: job
labels:
- application: keystone
- component: db-sync
- release_group: osh-keystone
- name: keystone-fernet-setup
type: job
labels:
- application: keystone
- component: fernet-setup
- release_group: osh-keystone
values: {}
source:
type: local
location: /opt/openstack-helm/charts
subpath: keystone
reference: master
dependencies:
- helm-toolkit
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: horizon
data:
chart_name: horizon
release: horizon
namespace: openstack
timeout: 300
install:
no_hooks: false
upgrade:
no_hooks: false
pre:
delete:
- name: horizon-db-init
type: job
labels:
- application: horizon
- component: db-init
- release_group: osh-horizon
- name: horizon-db-sync
type: job
labels:
- application: horizon
- component: db-sync
- release_group: osh-horizon
values: {}
source:
type: local
location: /opt/openstack-helm/charts
subpath: horizon
reference: master
dependencies:
- helm-toolkit
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: glance
data:
chart_name: glance
release: glance
namespace: openstack
timeout: 300
install:
no_hooks: false
upgrade:
no_hooks: false
pre:
delete:
- name: glance-bootstrap
type: job
labels:
- application: glance
- component: bootstrap
- release_group: osh-glance
- name: glance-db-init
type: job
labels:
- application: glance
- component: db-init
- release_group: osh-glance
- name: glance-db-sync
type: job
labels:
- application: glance
- component: db-sync
- release_group: osh-glance
- name: glance-ks-service
type: job
labels:
- application: glance
- component: ks-service
- release_group: osh-glance
- name: glance-ks-endpoints
type: job
labels:
- application: glance
- component: ks-endpoints
- release_group: osh-glance
- name: glance-ks-user
type: job
labels:
- application: glance
- component: ks-user
- release_group: osh-glance
values: {}
source:
type: local
location: /opt/openstack-helm/charts
subpath: glance
reference: master
dependencies:
- helm-toolkit
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: neutron
data:
chart_name: neutron
release: neutron
namespace: openstack
timeout: 300
install:
no_hooks: false
upgrade:
no_hooks: false
pre:
delete:
- name: neutron-bootstrap
type: job
labels:
- application: neutron
- component: bootstrap
- release_group: osh-neutron
- name: neutron-db-init
type: job
labels:
- application: neutron
- component: db-init
- release_group: osh-neutron
- name: neutron-db-sync
type: job
labels:
- application: neutron
- component: db-sync
- release_group: osh-neutron
- name: neutron-ks-service
type: job
labels:
- application: neutron
- component: ks-service
- release_group: osh-neutron
- name: neutron-ks-endpoints
type: job
labels:
- application: neutron
- component: ks-endpoints
- release_group: osh-neutron
- name: neutron-ks-user
type: job
labels:
- application: neutron
- component: ks-user
- release_group: osh-neutron
update:
- name: neutron-l3-agent
type: daemonset
labels:
- component: l3-agent
- application: neutron
- release_group: osh-neutron
values:
network:
interface:
tunnel: docker0
conf:
neutron:
default:
oslo:
log:
debug: false
neutron:
db:
l3_ha: False
min_l3_agents_per_router: 1
max_l3_agents_per_router: 1
l3_ha_network_type: vxlan
dhcp_agents_per_network: 1
ml2_conf:
ml2_type_flat:
neutron:
ml2:
flat_networks: public
openvswitch_agent:
agent:
neutron:
ml2:
ovs:
agent:
tunnel_types: vxlan
ovs:
neutron:
ml2:
ovs:
agent:
of_interface: ovs-ofctl
ovsdb_interface: vsctl
bridge_mappings: public:br-ex
source:
type: local
location: /opt/openstack-helm/charts
subpath: neutron
reference: master
dependencies:
- helm-toolkit
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: nova
data:
chart_name: nova
release: nova
namespace: openstack
timeout: 300
install:
no_hooks: false
upgrade:
no_hooks: false
pre:
delete:
- name: nova-bootstrap
type: job
labels:
- application: nova
- component: bootstrap
- release_group: osh-nova
- name: nova-db-init
type: job
labels:
- application: nova
- component: db-init
- release_group: osh-nova
- name: nova-db-sync
type: job
labels:
- application: nova
- component: db-sync
- release_group: osh-nova
- name: nova-ks-service
type: job
labels:
- application: nova
- component: ks-service
- release_group: osh-nova
- name: nova-ks-endpoints
type: job
labels:
- application: nova
- component: ks-endpoints
- release_group: osh-nova
- name: nova-ks-user
type: job
labels:
- application: nova
- component: ks-user
- release_group: osh-nova
values:
ceph:
enabled: false
conf:
nova:
default:
oslo:
log:
debug: false
libvirt:
nova:
conf:
virt_type: qemu
images_type: null
images_rbd_pool: null
images_rbd_ceph_conf: null
rbd_user: null
rbd_secret_uuid: null
disk_cachemodes: null
hw_disk_discard: null
upgrade_levels:
nova:
conf:
compute: null
source:
type: local
location: /opt/openstack-helm/charts
subpath: nova
reference: master
dependencies:
- helm-toolkit
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: cinder
data:
chart_name: cinder
release: cinder
namespace: openstack
timeout: 300
install:
no_hooks: false
upgrade:
no_hooks: false
pre:
delete:
- name: cinder-bootstrap
type: job
labels:
- application: cinder
- component: bootstrap
- release_group: osh-cinder
- name: cinder-db-init
type: job
labels:
- application: cinder
- component: db-init
- release_group: osh-cinder
- name: cinder-db-sync
type: job
labels:
- application: cinder
- component: db-sync
- release_group: osh-cinder
- name: cinder-ks-service
type: job
labels:
- application: cinder
- component: ks-service
- release_group: osh-cinder
- name: cinder-ks-endpoints
type: job
labels:
- application: cinder
- component: ks-endpoints
- release_group: osh-cinder
- name: cinder-ks-user
type: job
labels:
- application: cinder
- component: ks-user
- release_group: osh-cinder
values: {}
source:
type: local
location: /opt/openstack-helm/charts
subpath: cinder
reference: master
dependencies:
- helm-toolkit
---
schema: armada/ChartGroup/v1
metadata:
schema: metadata/Document/v1
name: ceph-storage
data:
description: "Ceph Storage"
sequenced: True
chart_group:
- ceph
- ceph-config
---
schema: armada/ChartGroup/v1
metadata:
schema: metadata/Document/v1
name: deploy-mariadb
data:
description: "Mariadb"
sequenced: True
chart_group:
- mariadb
---
schema: armada/ChartGroup/v1
metadata:
schema: metadata/Document/v1
name: openstack-infra-services
data:
description: "OpenStack Infra Services"
sequenced: False
chart_group:
- etcd
- rabbitmq
- memcached
- ingress
---
schema: armada/ChartGroup/v1
metadata:
schema: metadata/Document/v1
name: openstack-components
data:
description: "OpenStack Components"
sequenced: False
chart_group:
- keystone
- horizon
- glance
- neutron
- nova
- cinder
---
schema: armada/Manifest/v1
metadata:
schema: metadata/Document/v1
name: armada-manifest
data:
release_prefix: osh
chart_groups:
- ceph-storage
- deploy-mariadb
- openstack-infra-services
- openstack-components

View File

@ -0,0 +1,80 @@
#!/bin/bash
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
set -ex
: ${WORK_DIR:="$(pwd)"}
source ${WORK_DIR}/tools/gate/funcs/helm.sh
source ${WORK_DIR}/tools/gate/funcs/kube.sh
source ${WORK_DIR}/tools/gate/funcs/network.sh
# NOTE(portdirect): Temp workaround until module loading is supported by
# OpenStack-Helm in Fedora
if [ "x$HOST_OS" == "xfedora" ]; then
sudo modprobe openvswitch
sudo modprobe gre
sudo modprobe vxlan
sudo modprobe ip6_tables
fi
helm install --namespace=openstack ${WORK_DIR}/dns-helper --name=dns-helper
kube_wait_for_pods openstack 180
if ! [ "x$PVC_BACKEND" == "xceph" ]; then
echo "ARMADA LAUNCH only supports ceph currently"
exit 1
fi
kubectl label nodes ceph-mon=enabled --all
kubectl label nodes ceph-osd=enabled --all
kubectl label nodes ceph-mds=enabled --all
CONTROLLER_MANAGER_POD=$(kubectl get -n kube-system pods -l component=kube-controller-manager --no-headers -o name | awk -F '/' '{ print $NF; exit }')
kubectl exec -n kube-system ${CONTROLLER_MANAGER_POD} -- sh -c "cat > /etc/resolv.conf <<EOF
nameserver 10.96.0.10
nameserver ${UPSTREAM_DNS}
search cluster.local svc.cluster.local
EOF"
ARMADA_MANIFEST=$(mktemp --suffix=.yaml)
if [ "x$INTEGRATION" == "xaio" ]; then
SUBNET_RANGE=$(find_subnet_range)
ARMADA_MANIFEST_TEMPLATE=${WORK_DIR}/tools/deployment/armada/openstack-master-aio.yaml
else
SUBNET_RANGE="$(find_multi_subnet_range)"
ARMADA_MANIFEST_TEMPLATE=${WORK_DIR}/tools/deployment/armada/openstack-master.yaml
fi
sed "s|192.168.0.0/16|${SUBNET_RANGE}|g" ${ARMADA_MANIFEST_TEMPLATE} > ${ARMADA_MANIFEST}
sudo docker build https://github.com/att-comdev/armada.git#master -t openstackhelm/armada:latest
sudo docker run -d \
--net=host \
--name armada \
-v ${HOME}/.kube/config:/armada/.kube/config \
-v ${ARMADA_MANIFEST}:${ARMADA_MANIFEST}:ro \
-v ${WORK_DIR}:/opt/openstack-helm/charts:ro \
openstackhelm/armada:latest
sudo docker exec armada armada tiller --status
sudo docker exec armada armada apply ${ARMADA_MANIFEST}
kube_wait_for_pods ceph 600
kube_wait_for_pods openstack 1200
MON_POD=$(kubectl get pods -l application=ceph -l component=mon -n ceph --no-headers | awk '{ print $1; exit }')
kubectl exec -n ceph ${MON_POD} -- ceph -s
if [ "x$INTEGRATION" == "xmulti" ]; then
helm_test_deployment osh-keystone ${SERVICE_TEST_TIMEOUT}
helm_test_deployment osh-glance ${SERVICE_TEST_TIMEOUT}
helm_test_deployment osh-cinder ${SERVICE_TEST_TIMEOUT}
helm_test_deployment osh-neutron ${SERVICE_TEST_TIMEOUT}
helm_test_deployment osh-nova ${SERVICE_TEST_TIMEOUT}
fi

View File

@ -107,10 +107,6 @@ helm install --namespace=openstack ${WORK_DIR}/neutron --name=neutron \
--values=${WORK_DIR}/tools/overrides/mvp/neutron.yaml --values=${WORK_DIR}/tools/overrides/mvp/neutron.yaml
kube_wait_for_pods openstack ${SERVICE_LAUNCH_TIMEOUT} kube_wait_for_pods openstack ${SERVICE_LAUNCH_TIMEOUT}
if [ "x$INTEGRATION" == "xaio" ]; then
bash ${WORK_DIR}/tools/gate/openstack_aio_launch.sh
fi
if [ "x$INTEGRATION" == "xmulti" ]; then if [ "x$INTEGRATION" == "xmulti" ]; then
if [ "x$PVC_BACKEND" == "xceph" ]; then if [ "x$PVC_BACKEND" == "xceph" ]; then
helm install --namespace=openstack ${WORK_DIR}/cinder --name=cinder helm install --namespace=openstack ${WORK_DIR}/cinder --name=cinder

View File

@ -86,5 +86,13 @@ fi
if [ "x$INTEGRATION_TYPE" == "xbasic" ]; then if [ "x$INTEGRATION_TYPE" == "xbasic" ]; then
bash ${WORK_DIR}/tools/gate/helm_dry_run.sh bash ${WORK_DIR}/tools/gate/helm_dry_run.sh
bash ${WORK_DIR}/tools/gate/basic_launch.sh bash ${WORK_DIR}/tools/gate/basic_launch.sh
bash ${WORK_DIR}/tools/gate/dump_logs.sh 0 elif [ "x$INTEGRATION_TYPE" == "xarmada" ]; then
bash ${WORK_DIR}/tools/gate/armada_launch.sh
fi fi
# Run Basic Funtional Full Stack Intergation Tests
if [ "x$INTEGRATION" == "xaio" ]; then
bash ${WORK_DIR}/tools/gate/openstack_aio_launch.sh
fi
bash ${WORK_DIR}/tools/gate/dump_logs.sh 0