Sort variables and remove duplicates for min env doc

The script generating docs/minimal-environment-vars.md now sorts
variables alphabetically per service and remove duplicates.

Update minimal-environment-vars.md.

Change-Id: I30cc674b6e9834f2a6c771bd30539a21af39b228
Closes-Bug: #1470504
This commit is contained in:
Martin André 2015-07-01 22:19:51 +09:00
parent a082d38b97
commit 36eab6a1c3
2 changed files with 188 additions and 178 deletions

View File

@ -4,10 +4,10 @@ In order for each service to function, there is a minimum set of required variab
# Barbican
KEYSTONE_ADMIN_TOKEN
BARBICAN_ADMIN_PASSWORD
KEYSTONE_ADMIN_SERVICE_HOST
KEYSTONE_ADMIN_SERVICE_PORT
BARBICAN_ADMIN_PASSWORD
KEYSTONE_ADMIN_TOKEN
# Ceilometer-alarm
@ -15,33 +15,33 @@ In order for each service to function, there is a minimum set of required variab
# Ceilometer-api
CEILOMETER_DB_USER
CEILOMETER_DB_NAME
CEILOMETER_DB_PASSWORD
KEYSTONE_ADMIN_TOKEN
KEYSTONE_AUTH_PROTOCOL
KEYSTONE_ADMIN_SERVICE_HOST
KEYSTONE_ADMIN_SERVICE_PORT
ADMIN_TENANT_NAME
CEILOMETER_KEYSTONE_USER
CEILOMETER_ADMIN_PASSWORD
CEILOMETER_API_SERVICE_HOST
CEILOMETER_DB_NAME
CEILOMETER_DB_PASSWORD
CEILOMETER_DB_USER
CEILOMETER_KEYSTONE_USER
KEYSTONE_ADMIN_SERVICE_HOST
KEYSTONE_ADMIN_SERVICE_PORT
KEYSTONE_ADMIN_TOKEN
KEYSTONE_AUTH_PROTOCOL
PUBLIC_IP
# Ceilometer-base
KEYSTONE_ADMIN_TOKEN
KEYSTONE_ADMIN_SERVICE_HOST
KEYSTONE_ADMIN_SERVICE_PORT
KEYSTONE_ADMIN_TOKEN
KEYSTONE_PUBLIC_SERVICE_HOST
dump_vars
# Ceilometer-central
KEYSTONE_ADMIN_TOKEN
KEYSTONE_AUTH_PROTOCOL
KEYSTONE_ADMIN_SERVICE_HOST
KEYSTONE_ADMIN_SERVICE_PORT
KEYSTONE_ADMIN_TOKEN
KEYSTONE_AUTH_PROTOCOL
# Ceilometer-collector
@ -59,116 +59,112 @@ In order for each service to function, there is a minimum set of required variab
# Cinder-api
KEYSTONE_ADMIN_TOKEN
KEYSTONE_ADMIN_SERVICE_HOST
ADMIN_TENANT_NAME
PUBLIC_IP
CINDER_API_SERVICE_HOST
KEYSTONE_AUTH_PROTOCOL
KEYSTONE_ADMIN_SERVICE_PORT
CINDER_KEYSTONE_USER
CINDER_KEYSTONE_PASSWORD
CINDER_API_SERVICE_LISTEN
CINDER_API_SERVICE_PORT
CINDER_KEYSTONE_PASSWORD
CINDER_KEYSTONE_USER
KEYSTONE_ADMIN_SERVICE_HOST
KEYSTONE_ADMIN_SERVICE_PORT
KEYSTONE_ADMIN_TOKEN
KEYSTONE_AUTH_PROTOCOL
PUBLIC_IP
# Cinder-backup
CINDER_BACKUP_API_CLASS
CINDER_BACKUP_DRIVER
CINDER_BACKUP_MANAGER
CINDER_BACKUP_API_CLASS
CINDER_BACKUP_NAME_TEMPLATE
# Cinder-base
ADMIN_TENANT_NAME
CINDER_API_VERSION
CINDER_DB_NAME
CINDER_DB_PASSWORD
CINDER_DB_USER
CINDER_KEYSTONE_PASSWORD
KEYSTONE_PUBLIC_SERVICE_HOST
RABBITMQ_SERVICE_HOST
GLANCE_API_SERVICE_HOST
MARIADB_SERVICE_HOST
RABBITMQ_SERVICE_HOST
RABBITMQ_SERVICE_PORT
RABBIT_USERID
RABBIT_PASSWORD
CINDER_KEYSTONE_USER
GLANCE_API_SERVICE_HOST
GLANCE_API_SERVICE_PORT
ADMIN_TENANT_NAME
CINDER_DB_NAME
CINDER_DB_USER
CINDER_KEYSTONE_USER
PUBLIC_IP
KEYSTONE_AUTH_PROTOCOL
CINDER_API_VERSION
KEYSTONE_PUBLIC_SERVICE_HOST
MARIADB_SERVICE_HOST
PUBLIC_IP
RABBITMQ_SERVICE_HOST
RABBITMQ_SERVICE_PORT
RABBIT_PASSWORD
RABBIT_USERID
# Cinder-scheduler
MARIADB_SERVICE_HOST
DB_ROOT_PASSWORD
CINDER_DB_NAME
CINDER_DB_USER
CINDER_DB_PASSWORD
CINDER_DB_USER
DB_ROOT_PASSWORD
INIT_CINDER_DB
MARIADB_SERVICE_HOST
# Cinder-volume
CINDER_VOLUME_API_LISTEN
ISCSI_HELPER
ISCSI_IP_ADDRESS
CINDER_VOLUME_GROUP
CINDER_LVM_LO_VOLUME_SIZE
CINDER_VOLUME_BACKEND_NAME
CINDER_VOLUME_DRIVER
CINDER_ENABLED_BACKEND
CINDER_LVM_LO_VOLUME_SIZE
CINDER_VOLUME_API_LISTEN
CINDER_VOLUME_BACKEND_NAME
CINDER_VOLUME_DRIVER
CINDER_VOLUME_GROUP
ISCSI_HELPER
ISCSI_IP_ADDRESS
# Designate-api
KEYSTONE_ADMIN_TOKEN
KEYSTONE_ADMIN_SERVICE_HOST
DESIGNATE_KEYSTONE_USER
DESIGNATE_KEYSTONE_PASSWORD
KEYSTONE_AUTH_PROTOCOL
ADMIN_TENANT_NAME
DESIGNATE_API_SERVICE_HOST
DESIGNATE_API_SERVICE_PORT
DESIGNATE_KEYSTONE_PASSWORD
DESIGNATE_KEYSTONE_USER
KEYSTONE_ADMIN_SERVICE_HOST
KEYSTONE_ADMIN_SERVICE_PORT
KEYSTONE_ADMIN_TOKEN
KEYSTONE_AUTH_PROTOCOL
# Designate-backend-bind9
DESIGNATE_ALLOW_RECURSION
DESIGNATE_BIND9_RNDC_KEY
DESIGNATE_MASTERNS
DESIGNATE_SLAVENS
DESIGNATE_BIND9_RNDC_KEY
DESIGNATE_ALLOW_RECURSION
# Designate-base
DESIGNATE_DB_PASSWORD
DESIGNATE_KEYSTONE_PASSWORD
KEYSTONE_PUBLIC_SERVICE_HOST
RABBITMQ_SERVICE_HOST
DESIGNATE_BIND9_RNDC_KEY
DEBUG_LOGGING
DESIGNATE_BACKEND
KEYSTONE_PUBLIC_SERVICE_PORT
DESIGNATE_KEYSTONE_USER
RABBIT_USERID
RABBIT_PASSWORD
DESIGNATE_DB_USER
DESIGNATE_BIND9_RNDC_KEY
DESIGNATE_DB_NAME
KEYSTONE_AUTH_PROTOCOL
DESIGNATE_DB_PASSWORD
DESIGNATE_DB_USER
DESIGNATE_KEYSTONE_PASSWORD
DESIGNATE_KEYSTONE_USER
DESIGNATE_POOLMAN_POOLID
KEYSTONE_ADMIN_SERVICE_HOST
KEYSTONE_ADMIN_SERVICE_PORT
DEBUG_LOGGING
DESIGNATE_POOLMAN_POOLID
KEYSTONE_AUTH_PROTOCOL
KEYSTONE_PUBLIC_SERVICE_HOST
KEYSTONE_PUBLIC_SERVICE_PORT
RABBITMQ_SERVICE_HOST
RABBIT_PASSWORD
RABBIT_USERID
# Designate-central
MARIADB_SERVICE_HOST
DB_ROOT_PASSWORD
DESIGNATE_DB_NAME
DESIGNATE_DB_USER
DESIGNATE_DB_PASSWORD
DESIGNATE_DB_USER
INIT_DESIGNATE_DB
MARIADB_SERVICE_HOST
# Designate-mdns
@ -177,15 +173,14 @@ In order for each service to function, there is a minimum set of required variab
# Designate-poolmanager
DESIGNATE_MASTERNS
DESIGNATE_BACKEND
DESIGNATE_SLAVENS
DESIGNATE_MDNS_PORT
DESIGNATE_DNS_PORT
DESIGNATE_POOLMAN_POOLID
DESIGNATE_POOLMAN_TARGETS
DESIGNATE_MASTERNS
DESIGNATE_MDNS_PORT
DESIGNATE_POOLMAN_NSS
DESIGNATE_POOLMAN_POOLID
DESIGNATE_POOLMAN_TARGETS
DESIGNATE_SLAVENS
# Designate-sink
@ -196,11 +191,11 @@ In order for each service to function, there is a minimum set of required variab
# Galera
DB_CLUSTER_BIND_ADDRESS
DB_CLUSTER_INIT_DB
DB_CLUSTER_NAME
DB_CLUSTER_NODES
DB_ROOT_PASSWORD
DB_CLUSTER_WSREP_METHOD
DB_CLUSTER_INIT_DB
DB_ROOT_PASSWORD
# Glance-api
@ -219,7 +214,6 @@ In order for each service to function, there is a minimum set of required variab
# Glance-base
ADMIN_TENANT_NAME
GLANCE_DB_PASSWORD
GLANCE_DB_NAME
GLANCE_DB_PASSWORD
GLANCE_DB_USER
@ -242,43 +236,45 @@ In order for each service to function, there is a minimum set of required variab
# Heat-api-cfn
KEYSTONE_ADMIN_TOKEN
KEYSTONE_ADMIN_SERVICE_HOST
HEAT_CFN_KEYSTONE_USER
HEAT_CFN_KEYSTONE_PASSWORD
KEYSTONE_AUTH_PROTOCOL
KEYSTONE_ADMIN_SERVICE_PORT
ADMIN_TENANT_NAME
HEAT_API_CFN_SERVICE_HOST
HEAT_API_CFN_SERVICE_PORT
HEAT_CFN_KEYSTONE_PASSWORD
HEAT_CFN_KEYSTONE_USER
KEYSTONE_ADMIN_SERVICE_HOST
KEYSTONE_ADMIN_SERVICE_PORT
KEYSTONE_ADMIN_TOKEN
KEYSTONE_AUTH_PROTOCOL
# Heat-api
KEYSTONE_ADMIN_TOKEN
KEYSTONE_ADMIN_SERVICE_HOST
HEAT_KEYSTONE_USER
HEAT_KEYSTONE_PASSWORD
KEYSTONE_AUTH_PROTOCOL
ADMIN_TENANT_NAME
HEAT_API_SERVICE_HOST
HEAT_KEYSTONE_PASSWORD
HEAT_KEYSTONE_USER
KEYSTONE_ADMIN_SERVICE_HOST
KEYSTONE_ADMIN_TOKEN
KEYSTONE_AUTH_PROTOCOL
PUBLIC_IP
# Heat-base
HEAT_DB_PASSWORD
HEAT_KEYSTONE_PASSWORD
HEAT_API_CFN_URL_HOST
HEAT_API_CFN_SERVICE_PORT
HEAT_API_CFN_URL_HOST
HEAT_DB_PASSWORD
HEAT_DOMAIN_PASS
HEAT_KEYSTONE_PASSWORD
KEYSTONE_PUBLIC_SERVICE_HOST
KEYSTONE_PUBLIC_SERVICE_PORT
RABBITMQ_SERVICE_HOST
MARIADB_SERVICE_HOST
RABBITMQ_SERVICE_HOST
# Heat-engine
HEAT_DB_NAME
HEAT_DB_USER
HEAT_DB_PASSWORD
HEAT_DB_USER
HEAT_DOMAIN_PASS
INIT_HEAT_DB
# Horizon
@ -288,53 +284,52 @@ In order for each service to function, there is a minimum set of required variab
# Keepalived
KEEPALIVED_HOST_PRIORITIES
PUBLIC_IP
PUBLIC_INTERFACE
PUBLIC_IP
# Keystone
ADMIN_TENANT_NAME
INIT_KEYSTONE_DB
KEYSTONE_ADMIN_PASSWORD
KEYSTONE_ADMIN_SERVICE_HOST
KEYSTONE_ADMIN_TOKEN
KEYSTONE_DB_PASSWORD
KEYSTONE_ADMIN_PASSWORD
ADMIN_TENANT_NAME
KEYSTONE_PUBLIC_SERVICE_HOST
KEYSTONE_ADMIN_SERVICE_HOST
PUBLIC_IP
INIT_KEYSTONE_DB
# Magnum-api
KEYSTONE_ADMIN_TOKEN
KEYSTONE_ADMIN_SERVICE_HOST
MAGNUM_KEYSTONE_USER
MAGNUM_KEYSTONE_PASSWORD
KEYSTONE_AUTH_PROTOCOL
ADMIN_TENANT_NAME
MAGNUM_API_SERVICE_HOST
KEYSTONE_ADMIN_SERVICE_HOST
KEYSTONE_ADMIN_SERVICE_PORT
KEYSTONE_ADMIN_TOKEN
KEYSTONE_AUTH_PROTOCOL
MAGNUM_API_SERVICE_HOST
MAGNUM_API_SERVICE_PORT
MAGNUM_KEYSTONE_PASSWORD
MAGNUM_KEYSTONE_USER
# Magnum-base
MAGNUM_DB_PASSWORD
MAGNUM_KEYSTONE_PASSWORD
ADMIN_TENANT_NAME
DEBUG_LOGGING
KEYSTONE_AUTH_PROTOCOL
KEYSTONE_PUBLIC_SERVICE_HOST
KEYSTONE_PUBLIC_SERVICE_PORT
MAGNUM_KEYSTONE_USER
ADMIN_TENANT_NAME
MAGNUM_DB_USER
MAGNUM_DB_NAME
KEYSTONE_AUTH_PROTOCOL
KEYSTONE_PUBLIC_SERVICE_PORT
MAGNUM_DB_PASSWORD
MAGNUM_DB_USER
MAGNUM_KEYSTONE_PASSWORD
MAGNUM_KEYSTONE_USER
RABBITMQ_SERVICE_HOST
VERBOSE_LOGGING
DEBUG_LOGGING
# Magnum-conductor
MAGNUM_DB_NAME
MAGNUM_DB_USER
MAGNUM_DB_PASSWORD
MAGNUM_DB_USER
# Mariadb
@ -346,70 +341,78 @@ In order for each service to function, there is a minimum set of required variab
# Neutron-agents
VERBOSE_LOGGING
ADMIN_TENANT_NAME
DEBUG_LOGGING
MECHANISM_DRIVERS
DHCP_DRIVER
USE_NAMESPACES
DELETE_NAMESPACES
NEUTRON_LOG_DIR
DHCP_DRIVER
DNSMASQ_CONFIG_FILE
PUBLIC_IP
NEUTRON_FLAT_NETWORK_NAME
NEUTRON_FLAT_NETWORK_INTERFACE
KEYSTONE_AUTH_PROTOCOL
KEYSTONE_PUBLIC_SERVICE_HOST
ADMIN_TENANT_NAME
NEUTRON_KEYSTONE_USER
MECHANISM_DRIVERS
NEUTRON_KEYSTONE_PASSWORD
NEUTRON_KEYSTONE_USER
NEUTRON_LOG_DIR
NEUTRON_SHARED_SECRET
NOVA_METADATA_API_SERVICE_HOST
NOVA_METADATA_API_SERVICE_PORT
USE_NAMESPACES
VERBOSE_LOGGING
cfg
# Neutron-base
NEUTRON_KEYSTONE_PASSWORD
NEUTRON_API_PASTE_CONFIG
KEYSTONE_PUBLIC_SERVICE_HOST
NEUTRON_API_PASTE_CONFIG
NEUTRON_KEYSTONE_PASSWORD
RABBITMQ_SERVICE_HOST
# Neutron-linuxbridge-agent
NEUTRON_FLAT_NETWORK_INTERFACE
NEUTRON_FLAT_NETWORK_NAME
PUBLIC_IP
# Neutron-openvswitch-agent
NEUTRON_FLAT_NETWORK_INTERFACE
NEUTRON_FLAT_NETWORK_NAME
PUBLIC_IP
# Neutron-server
KEYSTONE_ADMIN_TOKEN
KEYSTONE_ADMIN_SERVICE_HOST
KEYSTONE_AUTH_PROTOCOL
NOVA_API_SERVICE_HOST
NOVA_KEYSTONE_USER
NOVA_KEYSTONE_PASSWORD
NEUTRON_DB_NAME
NEUTRON_DB_USER
NEUTRON_DB_PASSWORD
NEUTRON_KEYSTONE_USER
NEUTRON_KEYSTONE_PASSWORD
ADMIN_TENANT_NAME
NEUTRON_SERVER_SERVICE_HOST
PUBLIC_IP
KEYSTONE_ADMIN_SERVICE_HOST
KEYSTONE_ADMIN_TOKEN
KEYSTONE_AUTH_PROTOCOL
NEUTRON_DB_NAME
NEUTRON_DB_PASSWORD
NEUTRON_DB_USER
NEUTRON_KEYSTONE_PASSWORD
NEUTRON_KEYSTONE_USER
NEUTRON_SERVER_SERVICE_HOST
NOVA_API_SERVICE_HOST
NOVA_KEYSTONE_PASSWORD
NOVA_KEYSTONE_USER
PUBLIC_IP
# Nova-base
KEYSTONE_ADMIN_TOKEN
NOVA_DB_PASSWORD
RABBITMQ_SERVICE_HOST
GLANCE_API_SERVICE_HOST
KEYSTONE_PUBLIC_SERVICE_HOST
PUBLIC_IP
PUBLIC_INTERFACE
FLAT_INTERFACE
DEBUG_LOGGING
FLAT_INTERFACE
GLANCE_API_SERVICE_HOST
KEYSTONE_ADMIN_TOKEN
KEYSTONE_PUBLIC_SERVICE_HOST
NOVA_DB_PASSWORD
PUBLIC_INTERFACE
PUBLIC_IP
RABBITMQ_SERVICE_HOST
VERBOSE_LOGGING
NEUTRON_SHARED_SECRET
# Nova-compute
NOVA_VNCSERVER_PROXYCLIENT_ADDRESS
NOVA_NOVNC_PROXY_PORT
NOVA_NOVNC_BASE_ADDRESS
NOVA_NOVNC_PROXY_PORT
NOVA_VNCSERVER_PROXYCLIENT_ADDRESS
# Nova-libvirt
@ -421,22 +424,22 @@ In order for each service to function, there is a minimum set of required variab
# Nova-api
KEYSTONE_ADMIN_TOKEN
KEYSTONE_ADMIN_SERVICE_HOST
NOVA_KEYSTONE_USER
NOVA_KEYSTONE_PASSWORD
ADMIN_TENANT_NAME
KEYSTONE_ADMIN_SERVICE_HOST
KEYSTONE_ADMIN_TOKEN
NOVA_API_SERVICE_HOST
NOVA_EC2_API_SERVICE_HOST
PUBLIC_IP
NOVA_DB_NAME
NOVA_EC2_API_SERVICE_HOST
NOVA_KEYSTONE_PASSWORD
NOVA_KEYSTONE_USER
PUBLIC_IP
# Nova-conductor
NOVA_DB_NAME
NOVA_DB_USER
NOVA_DB_PASSWORD
INIT_NOVA_DB
NOVA_DB_NAME
NOVA_DB_PASSWORD
NOVA_DB_USER
# Nova-consoleauth
@ -444,29 +447,38 @@ In order for each service to function, there is a minimum set of required variab
# Nova-novncproxy
PUBLIC_IP
NOVA_NOVNC_PROXY_SERVICE_HOST
NOVA_NOVNC_PROXY_PORT
NOVA_NOVNC_BASE_ADDRESS
NOVA_NOVNC_PROXY_PORT
NOVA_NOVNC_PROXY_SERVICE_HOST
NOVA_VNCSERVER_LISTEN_ADDRESS
NOVA_VNCSERVER_PROXYCLIENT_ADDRESS
PUBLIC_IP
# Nova-scheduler
NOVA_DB_NAME
# Ovs-base
None
# Ovs-db-server
None
# Ovs-vswitchd
None
# Rabbitmq
RABBITMQ_CLUSTER_COOKIE
RABBITMQ_CLUSTER_NODES
RABBITMQ_LOG_BASE
RABBITMQ_PASS
RABBITMQ_USER
# Swift-account
KEYSTONE_ADMIN_TOKEN
KEYSTONE_ADMIN_SERVICE_HOST
KEYSTONE_ADMIN_TOKEN
SWIFT_ADMIN_PASSWORD
# Swift-base
@ -475,14 +487,14 @@ In order for each service to function, there is a minimum set of required variab
# Swift-container
KEYSTONE_ADMIN_TOKEN
KEYSTONE_ADMIN_SERVICE_HOST
KEYSTONE_ADMIN_TOKEN
SWIFT_ADMIN_PASSWORD
# Swift-object
KEYSTONE_ADMIN_TOKEN
KEYSTONE_ADMIN_SERVICE_HOST
KEYSTONE_ADMIN_TOKEN
SWIFT_ADMIN_PASSWORD
# Swift-proxy-server
@ -491,8 +503,8 @@ In order for each service to function, there is a minimum set of required variab
# Zaqar
ZAQAR_KEYSTONE_PASSWORD
ZAQAR_SERVER_SERVICE_HOST
KEYSTONE_ADMIN_SERVICE_HOST
KEYSTONE_ADMIN_TOKEN
PUBLIC_IP
ZAQAR_KEYSTONE_PASSWORD
ZAQAR_SERVER_SERVICE_HOST

View File

@ -34,22 +34,20 @@ function write_env_var {
function find_vars {
local img_location=$1
local empty=true
scripts=$(find ${img_location} -name *.sh | sort -t / -k 4)
local all_vars=''
local scripts=$(find ${img_location} -name *.sh | sort -t / -k 4)
for script in $scripts; do
local vars=$(awk '/^check_required_vars/,/([^\\] *$)/' $script)
vars=$(echo "$vars" | sed 's/check_required_vars//' | sed 's/\\//g')
if [ ! -z "$vars" ]; then
empty=false
for v in $vars; do
write_env_var $v
done
fi
all_vars="$all_vars $(echo "$vars" | sed 's/check_required_vars//' | sed 's/\\//g')"
done
if $empty; then
if [ -n "${all_vars// }" ]; then
all_vars=$(echo "${all_vars[@]}" | tr ' ' '\n' | sort -u | tr '\n' ' ')
for v in $all_vars; do
write_env_var $v
done
else
echo " None" >> "$DOC"
fi
}