Skip to content

Commit

Permalink
Integrate oslo-config-validator
Browse files Browse the repository at this point in the history
Regularly, we experience issues in Kolla Ansible deployments because we
use wrong options in OpenStack configuration files. This is because
OpenStack services ignore unknown options. We also need to keep on top
of deprecated options that may be removed in the future. Integrating
oslo-config-validator into Kolla Ansible will greatly help.

Adds a shared role to run oslo-config-validator on each service. Takes
into account that services have multiple containers, and these may also
use multiple config files. Service roles are extended to use this shared
role. Executed with the new command ``kolla-ansible validate-config``.

Change-Id: Ic10b410fc115646d96d2ce39d9618e7c46cb3fbc
  • Loading branch information
MoteHue committed Dec 21, 2022
1 parent 113242c commit 6c2aace
Show file tree
Hide file tree
Showing 101 changed files with 594 additions and 0 deletions.
6 changes: 6 additions & 0 deletions ansible/roles/aodh/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,12 @@ aodh_services:
# change this option.
aodh_evaluation_interval: 300

####################
# Config Validate
####################
aodh_config_validation:
- generator: "/aodh/aodh/cmd/aodh-config-generator.conf"
config: "/etc/aodh/aodh.conf"

####################
# Database
Expand Down
7 changes: 7 additions & 0 deletions ansible/roles/aodh/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
- import_role:
name: service-config-validate
vars:
service_config_validate_services: "{{ aodh_services }}"
service_name: "{{ project_name }}"
service_config_validation: "{{ aodh_config_validation }}"
6 changes: 6 additions & 0 deletions ansible/roles/barbican/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,12 @@ barbican_services:
dimensions: "{{ barbican_worker_dimensions }}"
healthcheck: "{{ barbican_worker_healthcheck }}"

####################
# Config Validate
####################
barbican_config_validation:
- generator: "/barbican/etc/oslo-config-generator/barbican.conf"
config: "/etc/barbican/barbican.conf"

####################
# Database
Expand Down
7 changes: 7 additions & 0 deletions ansible/roles/barbican/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
- import_role:
name: service-config-validate
vars:
service_config_validate_services: "{{ barbican_services }}"
service_name: "{{ project_name }}"
service_config_validation: "{{ barbican_config_validation }}"
1 change: 1 addition & 0 deletions ansible/roles/bifrost/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
---
7 changes: 7 additions & 0 deletions ansible/roles/blazar/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,13 @@ blazar_services:
####################
blazar_aggregate_pool_name: "freepool"

####################
# Config Validate
####################
blazar_config_validation:
- generator: "/blazar/etc/blazar/blazar-config-generator.conf"
config: "/etc/blazar/blazar.conf"

####################
# Database
####################
Expand Down
7 changes: 7 additions & 0 deletions ansible/roles/blazar/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
- import_role:
name: service-config-validate
vars:
service_config_validate_services: "{{ blazar_services }}"
service_name: "{{ project_name }}"
service_config_validation: "{{ blazar_config_validation }}"
6 changes: 6 additions & 0 deletions ansible/roles/ceilometer/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,12 @@ ceilometer_services:
dimensions: "{{ ceilometer_ipmi_dimensions }}"
healthcheck: "{{ ceilometer_ipmi_healthcheck }}"

####################
# Config Validate
####################
ceilometer_config_validation:
- generator: "/ceilometer/etc/ceilometer/ceilometer-config-generator.conf"
config: "/etc/ceilometer/ceilometer.conf"

####################
# Docker
Expand Down
7 changes: 7 additions & 0 deletions ansible/roles/ceilometer/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
- import_role:
name: service-config-validate
vars:
service_config_validate_services: "{{ ceilometer_services }}"
service_name: "{{ project_name }}"
service_config_validation: "{{ ceilometer_config_validation }}"
1 change: 1 addition & 0 deletions ansible/roles/ceph-rgw/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
---
7 changes: 7 additions & 0 deletions ansible/roles/cinder/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,13 @@ cinder_services:
dimensions: "{{ cinder_backup_dimensions }}"
healthcheck: "{{ cinder_backup_healthcheck }}"

####################
# Config Validate
####################
cinder_config_validation:
- generator: "/cinder/tools/config/cinder-config-generator.conf"
config: "/etc/cinder/cinder.conf"

####################
# Database
####################
Expand Down
7 changes: 7 additions & 0 deletions ansible/roles/cinder/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
- import_role:
name: service-config-validate
vars:
service_config_validate_services: "{{ cinder_services }}"
service_name: "{{ project_name }}"
service_config_validation: "{{ cinder_config_validation }}"
6 changes: 6 additions & 0 deletions ansible/roles/cloudkitty/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,12 @@ cloudkitty_services:
dimensions: "{{ cloudkitty_processor_dimensions }}"
healthcheck: "{{ cloudkitty_processor_healthcheck }}"

####################
# Config Validate
####################
cloudkitty_config_validation:
- generator: "/cloudkitty/etc/oslo-config-generator/cloudkitty.conf"
config: "/etc/cloudkitty/cloudkitty.conf"

####################
# Database
Expand Down
7 changes: 7 additions & 0 deletions ansible/roles/cloudkitty/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
- import_role:
name: service-config-validate
vars:
service_config_validate_services: "{{ cloudkitty_services }}"
service_name: "{{ project_name }}"
service_config_validation: "{{ cloudkitty_config_validation }}"
1 change: 1 addition & 0 deletions ansible/roles/collectd/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
---
1 change: 1 addition & 0 deletions ansible/roles/common/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
---
7 changes: 7 additions & 0 deletions ansible/roles/cyborg/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,13 @@ cyborg_services:
dimensions: "{{ cyborg_conductor_dimensions }}"
healthcheck: "{{ cyborg_conductor_healthcheck }}"

####################
# Config Validate
####################
cyborg_config_validation:
- generator: "/cyborg/tools/config/cyborg-config-generator.conf"
config: "/etc/cyborg/cyborg.conf"

####################
# Database
####################
Expand Down
7 changes: 7 additions & 0 deletions ansible/roles/cyborg/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
- import_role:
name: service-config-validate
vars:
service_config_validate_services: "{{ cyborg_services }}"
service_name: "{{ project_name }}"
service_config_validation: "{{ cyborg_config_validation }}"
6 changes: 6 additions & 0 deletions ansible/roles/designate/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,12 @@ designate_services:
dimensions: "{{ designate_sink_dimensions }}"
healthcheck: "{{ designate_sink_healthcheck }}"

####################
# Config Validate
####################
designate_config_validation:
- generator: "/designate/etc/designate/designate-config-generator.conf"
config: "/etc/designate/designate.conf"

####################
# Database
Expand Down
7 changes: 7 additions & 0 deletions ansible/roles/designate/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
- import_role:
name: service-config-validate
vars:
service_config_validate_services: "{{ designate_services }}"
service_name: "{{ project_name }}"
service_config_validation: "{{ designate_config_validation }}"
1 change: 1 addition & 0 deletions ansible/roles/etcd/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
---
7 changes: 7 additions & 0 deletions ansible/roles/freezer/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,13 @@ freezer_services:
volumes: "{{ freezer_scheduler_default_volumes + freezer_scheduler_extra_volumes }}"
dimensions: "{{ freezer_scheduler_dimensions }}"

####################
# Config Validate
####################
freezer_config_validation:
- generator: "/freezer/etc/config-generator.conf"
config: "/etc/freezer/freezer.conf"

####################
## Database
#####################
Expand Down
7 changes: 7 additions & 0 deletions ansible/roles/freezer/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
- import_role:
name: service-config-validate
vars:
service_config_validate_services: "{{ freezer_services }}"
service_name: "{{ project_name }}"
service_config_validation: "{{ freezer_config_validation }}"
13 changes: 13 additions & 0 deletions ansible/roles/glance/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,19 @@ glance_services:
custom_member_list: "{{ haproxy_tls_members.split(';') }}"
tls_backend: "yes"

####################
# Config Validate
####################
glance_config_validation:
- generator: "/glance/etc/oslo-config-generator/glance-api.conf"
config: "/etc/glance/glance-api.conf"
- generator: "/glance/etc/oslo-config-generator/glance-cache.conf"
config: "/etc/glance/glance-cache.conf"
- generator: "/glance/etc/oslo-config-generator/glance-manage.conf"
config: "/etc/glance/glance-manage.conf"
- generator: "/glance/etc/oslo-config-generator/glance-scrubber.conf"
config: "/etc/glance/glance-scrubber.conf"

####################
# HAProxy
####################
Expand Down
7 changes: 7 additions & 0 deletions ansible/roles/glance/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
- import_role:
name: service-config-validate
vars:
service_config_validate_services: "{{ glance_services }}"
service_name: "{{ project_name }}"
service_config_validation: "{{ glance_config_validation }}"
6 changes: 6 additions & 0 deletions ansible/roles/gnocchi/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,12 @@ gnocchi_services:
dimensions: "{{ gnocchi_statsd_dimensions }}"
healthcheck: "{{ gnocchi_statsd_healthcheck }}"

####################
# Config Validate
####################
gnocchi_config_validation:
- generator: "/gnocchi/gnocchi/gnocchi-config-generator.conf"
config: "/etc/gnocchi/gnocchi.conf"

####################
# Swift
Expand Down
7 changes: 7 additions & 0 deletions ansible/roles/gnocchi/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
- import_role:
name: service-config-validate
vars:
service_config_validate_services: "{{ gnocchi_services }}"
service_name: "{{ project_name }}"
service_config_validation: "{{ gnocchi_config_validation }}"
1 change: 1 addition & 0 deletions ansible/roles/grafana/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
---
1 change: 1 addition & 0 deletions ansible/roles/hacluster/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
---
7 changes: 7 additions & 0 deletions ansible/roles/heat/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,13 @@ heat_services:
dimensions: "{{ heat_engine_dimensions }}"
healthcheck: "{{ heat_engine_healthcheck }}"

####################
# Config Validate
####################
heat_config_validation:
- generator: "/heat/config-generator.conf"
config: "/etc/heat/heat.conf"

####################
# Database
####################
Expand Down
7 changes: 7 additions & 0 deletions ansible/roles/heat/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
- import_role:
name: service-config-validate
vars:
service_config_validate_services: "{{ heat_services }}"
service_name: "{{ project_name }}"
service_config_validation: "{{ heat_config_validation }}"
1 change: 1 addition & 0 deletions ansible/roles/horizon/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
---
1 change: 1 addition & 0 deletions ansible/roles/influxdb/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
---
6 changes: 6 additions & 0 deletions ansible/roles/ironic/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,12 @@ ironic_services:
volumes: "{{ ironic_dnsmasq_default_volumes + ironic_dnsmasq_extra_volumes }}"
dimensions: "{{ ironic_dnsmasq_dimensions }}"

####################
# Config Validate
####################
ironic_config_validation:
- generator: "/ironic/tools/config/ironic-config-generator.conf"
config: "/etc/ironic/ironic.conf"

####################
# Database
Expand Down
7 changes: 7 additions & 0 deletions ansible/roles/ironic/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
- import_role:
name: service-config-validate
vars:
service_config_validate_services: "{{ ironic_services }}"
service_name: "{{ project_name }}"
service_config_validation: "{{ ironic_config_validation }}"
1 change: 1 addition & 0 deletions ansible/roles/iscsi/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
---
1 change: 1 addition & 0 deletions ansible/roles/kafka/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
---
7 changes: 7 additions & 0 deletions ansible/roles/keystone/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,13 @@ keystone_services:
dimensions: "{{ keystone_fernet_dimensions }}"
healthcheck: "{{ keystone_fernet_healthcheck }}"

####################
# Config Validate
####################
keystone_config_validation:
- generator: "/keystone/config-generator/keystone.conf"
config: "/etc/keystone/keystone.conf"

####################
# Database
####################
Expand Down
7 changes: 7 additions & 0 deletions ansible/roles/keystone/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
- import_role:
name: service-config-validate
vars:
service_config_validate_services: "{{ keystone_services }}"
service_name: "{{ project_name }}"
service_config_validation: "{{ keystone_config_validation }}"
6 changes: 6 additions & 0 deletions ansible/roles/kuryr/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,12 @@ kuryr_services:
dimensions: "{{ kuryr_dimensions }}"
healthcheck: "{{ kuryr_healthcheck }}"

####################
# Config Validate
####################
kuryr_config_validation:
- generator: "/kuryr/etc/kuryr-config-generator.conf"
config: "/etc/kuryr/kuryr.conf"

####################
# Docker
Expand Down
7 changes: 7 additions & 0 deletions ansible/roles/kuryr/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
- import_role:
name: service-config-validate
vars:
service_config_validate_services: "{{ kuryr_services }}"
service_name: "{{ project_name }}"
service_config_validation: "{{ kuryr_config_validation }}"
1 change: 1 addition & 0 deletions ansible/roles/loadbalancer/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
---
6 changes: 6 additions & 0 deletions ansible/roles/magnum/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,12 @@ magnum_services:
dimensions: "{{ magnum_conductor_dimensions }}"
healthcheck: "{{ magnum_conductor_healthcheck }}"

####################
# Config Validate
####################
magnum_config_validation:
- generator: "/magnum/etc/magnum/magnum-config-generator.conf"
config: "/etc/magnum/magnum.conf"

####################
# Database
Expand Down
7 changes: 7 additions & 0 deletions ansible/roles/magnum/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
- import_role:
name: service-config-validate
vars:
service_config_validate_services: "{{ magnum_services }}"
service_name: "{{ project_name }}"
service_config_validation: "{{ magnum_config_validation }}"
6 changes: 6 additions & 0 deletions ansible/roles/manila/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,12 @@ manila_services:
dimensions: "{{ manila_data_dimensions }}"
healthcheck: "{{ manila_data_healthcheck }}"

####################
# Config Validate
####################
manila_config_validation:
- generator: "/manila/etc/oslo-config-generator/manila.conf"
config: "/etc/manila/manila.conf"

#####################
## Database
Expand Down
7 changes: 7 additions & 0 deletions ansible/roles/manila/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
- import_role:
name: service-config-validate
vars:
service_config_validate_services: "{{ manila_services }}"
service_name: "{{ project_name }}"
service_config_validation: "{{ manila_config_validation }}"
1 change: 1 addition & 0 deletions ansible/roles/mariadb/tasks/config_validate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
---
Loading

0 comments on commit 6c2aace

Please sign in to comment.