Make stand-alone Policy environment

This is a first cut at making it possible to easily run Policy
components within a stand-alone environment.  Made the following
changes:
- enhanced wait_for_port.sh to accept a list of hosts/ports
- enhanced wait_for_port.sh to accept an optional command to execute
  when the wait completes
- consolidated all of the yml files into a single file
- removed "extra" services from the yml so that a component and its
  dependents can be brought up in a single invocation
- modified the component setup.sh

With these changes, a developer can clone the csit repo, run detmVers.sh
to set the docker image version env variables, and then bring up a
component (and its dependents) using:

  docker-compose -f scripts/policy/docker-compose-all.yml
    up --detach <component>

Note: this does not preload or deploy any policies; that must be done
manually via curl.

Modified to use new simulator docker image.
Also fixed drools-apps CSIT broken due to disabling frankfurt
controller.
Also removed operational.Apex policy. The csar file used in
policy-distribution test is also updated to reflect this change.

Issue-ID: POLICY-2742
Change-Id: I412dbd5db9219ad2cdece9693f0b4b9fe7b2eb69
Signed-off-by: Jim Hahn <jrh3@att.com>
Signed-off-by: a.sreekumar <ajith.sreekumar@bell.ca>
diff --git a/scripts/policy/docker-compose-all.yml b/scripts/policy/docker-compose-all.yml
new file mode 100644
index 0000000..55044c9
--- /dev/null
+++ b/scripts/policy/docker-compose-all.yml
@@ -0,0 +1,190 @@
+#
+# ===========LICENSE_START====================================================
+#  Copyright (C) 2020 AT&T Intellectual Property. All rights reserved.
+# ============================================================================
+# 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.
+# ============LICENSE_END=====================================================
+#
+version: '2'
+services:
+   mariadb:
+      image: mariadb:${POLICY_MARIADB_VER}
+      container_name: mariadb
+      hostname: mariadb
+      command: ['--lower-case-table-names=1', '--wait_timeout=28800']
+      env_file: config/db/db.conf
+      volumes:
+         - ./config/db:/docker-entrypoint-initdb.d:ro
+      expose:
+       - 3306
+   policy.api.simpledemo.onap.org:
+      image: nexus3.onap.org:10001/onap/policy-models-simulator:${POLICY_MODELS_VERSION}
+      container_name: policy.api.simpledemo.onap.org
+      hostname: policy.api.simpledemo.onap.org
+      volumes:
+       - ./config/sim-all:/opt/app/policy/simulators/etc/mounted:ro
+      expose:
+       - 6666
+       - 6668
+       - 6669
+       - 6670
+       - 3905
+   api:
+      image: nexus3.onap.org:10001/onap/policy-api:${POLICY_API_VERSION}
+      container_name: policy-api
+      depends_on:
+       - mariadb
+      hostname: policy-api
+      expose:
+       - 6969
+      volumes:
+       - ./wait_for_port.sh:/opt/app/policy/api/bin/wait_for_port.sh:ro
+      entrypoint: ./wait_for_port.sh
+      command: [
+        '-c', 'bash ./policy-api.sh',
+        'mariadb', '3306'
+        ]
+   pap:
+      image: nexus3.onap.org:10001/onap/policy-pap:${POLICY_PAP_VERSION}
+      container_name: policy-pap
+      depends_on:
+       - mariadb
+       - policy.api.simpledemo.onap.org
+       - api
+      hostname: policy-pap
+      expose:
+       - 6969
+      volumes:
+       - ./config/pap/defaultConfig.json:/opt/app/policy/pap/etc/defaultConfig.json:ro
+       - ./wait_for_port.sh:/opt/app/policy/pap/bin/wait_for_port.sh:ro
+      entrypoint: ./wait_for_port.sh
+      command: [
+        '-c', 'bash ./policy-pap.sh',
+        'mariadb', '3306',
+        'policy.api.simpledemo.onap.org', '3905',
+        'api', '6969'
+        ]
+   xacml-pdp:
+      image: nexus3.onap.org:10001/onap/policy-xacml-pdp:${POLICY_XACML_PDP_VERSION}
+      container_name: policy-xacml-pdp
+      depends_on:
+       - mariadb
+       - policy.api.simpledemo.onap.org
+       - pap
+      hostname: policy-xacml-pdp
+      expose:
+       - 6969
+      volumes:
+       - ./config/xacml-pdp/defaultConfig.json:/opt/app/policy/pdpx/etc/defaultConfig.json:ro
+       - ./wait_for_port.sh:/opt/app/policy/pdpx/bin/wait_for_port.sh:ro
+      entrypoint: ./wait_for_port.sh
+      command: [
+        '-c', 'bash ./policy-pdpx.sh',
+        'mariadb', '3306',
+        'policy.api.simpledemo.onap.org', '3905',
+        'pap', '6969'
+        ]
+   drools:
+      image: nexus3.onap.org:10001/onap/policy-drools:${POLICY_DROOLS_VERSION}
+      container_name: drools
+      depends_on:
+       - mariadb
+       - policy.api.simpledemo.onap.org
+       - pap
+      hostname: drools
+      expose:
+       - 6969
+       - 9696
+      volumes:
+       - ./config/drools/custom:/tmp/policy-install/config:ro
+       - ./wait_for_port.sh:/opt/app/policy/bin/wait_for_port.sh:ro
+      env_file:
+        - config/drools/env/base.conf
+      entrypoint: /opt/app/policy/bin/wait_for_port.sh
+      command: [
+        '-c', '/opt/app/policy/bin/pdpd-entrypoint.sh boot',
+        'mariadb', '3306',
+        'policy.api.simpledemo.onap.org', '3905'
+        ]
+   drools-apps:
+      image: nexus3.onap.org:10001/onap/policy-pdpd-cl:${POLICY_DROOLS_APPS_VERSION}
+      container_name: drools-apps
+      depends_on:
+       - mariadb
+       - policy.api.simpledemo.onap.org
+       - pap
+       - xacml-pdp
+      hostname: drools-apps
+      expose:
+       - 6969
+       - 9696
+      volumes:
+       - ./config/drools-apps/custom:/tmp/policy-install/config:ro
+       - ./wait_for_port.sh:/opt/app/policy/bin/wait_for_port.sh:ro
+      env_file:
+        - config/drools-apps/env/base.conf
+        - config/drools-apps/env/feature-healthcheck.conf
+        - config/drools-apps/env/feature-pooling-dmaap.conf
+      entrypoint: /opt/app/policy/bin/wait_for_port.sh
+      command: [
+        '-c', '/opt/app/policy/bin/pdpd-cl-entrypoint.sh boot',
+        'mariadb', '3306',
+        'policy.api.simpledemo.onap.org', '3905',
+        'pap', '6969',
+        'policy.api.simpledemo.onap.org', '6666',
+        'policy.api.simpledemo.onap.org', '6668',
+        'policy.api.simpledemo.onap.org', '6669',
+        'policy.api.simpledemo.onap.org', '6670'
+        ]
+   apex-pdp:
+      image: nexus3.onap.org:10001/onap/policy-apex-pdp:${POLICY_APEX_PDP_VERSION}
+      container_name: policy-apex-pdp
+      depends_on:
+       - mariadb
+       - policy.api.simpledemo.onap.org
+       - pap
+      hostname: policy-apex-pdp
+      expose:
+       - 6969
+       - 23324
+      volumes:
+       - ./config/apex-pdp/OnapPfConfig.json:/opt/app/policy/apex-pdp/etc/onappf/config/OnapPfConfig.json:ro
+       - ./wait_for_port.sh:/opt/app/policy/bin/wait_for_port.sh:ro
+      entrypoint: /opt/app/policy/bin/wait_for_port.sh
+      command: [
+        '-c', '/opt/app/policy/apex-pdp/bin/apexOnapPf.sh -c /opt/app/policy/apex-pdp/etc/onappf/config/OnapPfConfig.json',
+        'mariadb', '3306',
+        'policy.api.simpledemo.onap.org', '3905',
+        'pap', '6969'
+        ]
+   distribution:
+      image: nexus3.onap.org:10001/onap/policy-distribution:${POLICY_DISTRIBUTION_VERSION}
+      container_name: policy-distribution
+      depends_on:
+       - mariadb
+       - api
+       - pap
+       - apex-pdp
+      hostname: policy-distribution
+      volumes:
+       - ./config/distribution/defaultConfig.json:/opt/app/policy/distribution/etc/defaultConfig.json:ro
+       - ./policy-distribution/config/distribution/temp/:/opt/app/policy/distribution/etc/temp/:ro
+       - ./wait_for_port.sh:/opt/app/policy/bin/wait_for_port.sh:ro
+      entrypoint: /opt/app/policy/bin/wait_for_port.sh
+      command: [
+        '-c', './policy-dist.sh',
+        'mariadb', '3306',
+        'policy.api.simpledemo.onap.org', '3905',
+        'pap', '6969',
+        'apex-pdp', '6969'
+        ]