Enforce function declaration format in bash8

Check that function calls look like ^function foo {$ in bash8, and fix
all existing failures of that check.  Add a note to HACKING.rst

Change-Id: Ic19eecb39e0b20273d1bcd551a42fe400d54e938
diff --git a/lib/neutron_plugins/services/firewall b/lib/neutron_plugins/services/firewall
index 8273e54..ab6c324 100644
--- a/lib/neutron_plugins/services/firewall
+++ b/lib/neutron_plugins/services/firewall
@@ -7,11 +7,11 @@
 
 FWAAS_PLUGIN=neutron.services.firewall.fwaas_plugin.FirewallPlugin
 
-function neutron_fwaas_configure_common() {
+function neutron_fwaas_configure_common {
     _neutron_service_plugin_class_add $FWAAS_PLUGIN
 }
 
-function neutron_fwaas_configure_driver() {
+function neutron_fwaas_configure_driver {
     FWAAS_DRIVER_CONF_FILENAME=/etc/neutron/fwaas_driver.ini
     cp $NEUTRON_DIR/etc/fwaas_driver.ini $FWAAS_DRIVER_CONF_FILENAME
 
@@ -19,7 +19,7 @@
     iniset_multiline $FWAAS_DRIVER_CONF_FILENAME fwaas driver "neutron.services.firewall.drivers.linux.iptables_fwaas.IptablesFwaasDriver"
 }
 
-function neutron_fwaas_stop() {
+function neutron_fwaas_stop {
     :
 }
 
diff --git a/lib/neutron_plugins/services/loadbalancer b/lib/neutron_plugins/services/loadbalancer
index 5d7a94e..744826e 100644
--- a/lib/neutron_plugins/services/loadbalancer
+++ b/lib/neutron_plugins/services/loadbalancer
@@ -9,7 +9,7 @@
 AGENT_LBAAS_BINARY="$NEUTRON_BIN_DIR/neutron-lbaas-agent"
 LBAAS_PLUGIN=neutron.services.loadbalancer.plugin.LoadBalancerPlugin
 
-function neutron_agent_lbaas_install_agent_packages() {
+function neutron_agent_lbaas_install_agent_packages {
     if is_ubuntu || is_fedora; then
         install_package haproxy
     elif is_suse; then
@@ -18,11 +18,11 @@
     fi
 }
 
-function neutron_agent_lbaas_configure_common() {
+function neutron_agent_lbaas_configure_common {
     _neutron_service_plugin_class_add $LBAAS_PLUGIN
 }
 
-function neutron_agent_lbaas_configure_agent() {
+function neutron_agent_lbaas_configure_agent {
     LBAAS_AGENT_CONF_PATH=/etc/neutron/services/loadbalancer/haproxy
     mkdir -p $LBAAS_AGENT_CONF_PATH
 
@@ -41,7 +41,7 @@
     fi
 }
 
-function neutron_lbaas_stop() {
+function neutron_lbaas_stop {
     pids=$(ps aux | awk '/haproxy/ { print $2 }')
     [ ! -z "$pids" ] && sudo kill $pids
 }
diff --git a/lib/neutron_plugins/services/metering b/lib/neutron_plugins/services/metering
index 37952bb..0e5f75b 100644
--- a/lib/neutron_plugins/services/metering
+++ b/lib/neutron_plugins/services/metering
@@ -9,11 +9,11 @@
 AGENT_METERING_BINARY="$NEUTRON_BIN_DIR/neutron-metering-agent"
 METERING_PLUGIN="neutron.services.metering.metering_plugin.MeteringPlugin"
 
-function neutron_agent_metering_configure_common() {
+function neutron_agent_metering_configure_common {
     _neutron_service_plugin_class_add $METERING_PLUGIN
 }
 
-function neutron_agent_metering_configure_agent() {
+function neutron_agent_metering_configure_agent {
     METERING_AGENT_CONF_PATH=/etc/neutron/services/metering
     mkdir -p $METERING_AGENT_CONF_PATH
 
@@ -22,7 +22,7 @@
     cp $NEUTRON_DIR/etc/metering_agent.ini $METERING_AGENT_CONF_FILENAME
 }
 
-function neutron_metering_stop() {
+function neutron_metering_stop {
     :
 }
 
diff --git a/lib/neutron_plugins/services/vpn b/lib/neutron_plugins/services/vpn
index 02370e7..e56d361 100644
--- a/lib/neutron_plugins/services/vpn
+++ b/lib/neutron_plugins/services/vpn
@@ -10,15 +10,15 @@
 VPN_PLUGIN="neutron.services.vpn.plugin.VPNDriverPlugin"
 IPSEC_PACKAGE=${IPSEC_PACKAGE:-"openswan"}
 
-function neutron_vpn_install_agent_packages() {
+function neutron_vpn_install_agent_packages {
     install_package $IPSEC_PACKAGE
 }
 
-function neutron_vpn_configure_common() {
+function neutron_vpn_configure_common {
     _neutron_service_plugin_class_add $VPN_PLUGIN
 }
 
-function neutron_vpn_stop() {
+function neutron_vpn_stop {
     local ipsec_data_dir=$DATA_DIR/neutron/ipsec
     local pids
     if [ -d $ipsec_data_dir ]; then