#
# ===========LICENSE_START====================================================
#  Copyright (C) 2020-2021 AT&T Intellectual Property. All rights reserved.
#  Modifications Copyright (C) 2021 Bell Canada. All rights reserved.
#  Modification Copyright 2021-2022 Nordix Foundation.
# ============================================================================
# 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: ${CONTAINER_LOCATION}mariadb:${POLICY_MARIADB_VER}
      container_name: mariadb
      hostname: mariadb
      command: ['--lower-case-table-names=1', '--wait_timeout=28800', '--default-authentication-plugin=mysql_native_password']
      env_file: ./config/db/db.conf
      volumes:
         - ./config/db:/docker-entrypoint-initdb.d:ro
         - ./config/clamp/policy-clamp-create-tables.sql:/tmp/policy-clamp-create-tables.sql
      ports:
       - 3306:3306
   policy-db-migrator:
      image: ${CONTAINER_LOCATION}onap/policy-db-migrator:${POLICY_DOCKER_VERSION}
      container_name: policy-db-migrator
      hostname: policy-db-migrator
      depends_on:
        - mariadb
      expose:
       - 6824
      env_file: ./config/db/db.conf
      environment:
        SQL_DB: policyadmin
        SQL_HOST: mariadb
      volumes:
         - ./db_migrator_policy_init.sh:/opt/app/policy/bin/db_migrator_policy_init.sh: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/bin/db_migrator_policy_init.sh',
                'mariadb', '3306'
               ]
   simulator:
      image: ${CONTAINER_LOCATION}onap/policy-models-simulator:${POLICY_MODELS_VERSION}
      container_name: simulator
      hostname: simulator
      networks:
          default:
              aliases:
                  - message-router
                  - aai-sim
                  - grpc-sim
                  - sdnc-sim
                  - so-sim
                  - vfc-sim
      volumes:
       - ./config/sim-all:/opt/app/policy/simulators/etc/mounted:ro
       - ./config/sim-all/logback.xml:/opt/app/policy/simulators/etc/mounted/logback.xml:ro
      expose:
       - 6666
       - 6668
       - 6669
       - 6670
       - 3904
       - 6680
      ports:
       - 30227:3904
   api:
      image: ${CONTAINER_LOCATION}onap/policy-api:${POLICY_API_VERSION}
      container_name: policy-api
      depends_on:
       - policy-db-migrator
      hostname: policy-api
      ports:
       - 30440:6969
      volumes:
       - ./config/api/apiParameters.yaml:/opt/app/policy/api/etc/apiParameters.yaml:ro
       - ./config/api/logback.xml:/opt/app/policy/api/etc/logback.xml:ro
       - ./wait_for_port.sh:/opt/app/policy/api/bin/wait_for_port.sh:ro
      entrypoint: ./wait_for_port.sh
      command: [
        '-c', './policy-api.sh',
        'mariadb', '3306',
        'policy-db-migrator', '6824'
        ]
   pap:
      image: ${CONTAINER_LOCATION}onap/policy-pap:${POLICY_PAP_VERSION}
      container_name: policy-pap
      depends_on:
       - mariadb
       - simulator
       - api
      hostname: policy-pap
      ports:
       - 30442:6969
      volumes:
       - ./config/pap/papParameters.yaml:/opt/app/policy/pap/etc/papParameters.yaml:ro
       - ./config/${PROJECT}/groups.json:/opt/app/policy/pap/etc/mounted/groups.json:ro
       - ./config/pap/logback.xml:/opt/app/policy/pap/etc/logback.xml:ro
       - ./wait_for_port.sh:/opt/app/policy/pap/bin/wait_for_port.sh:ro
      entrypoint: ./wait_for_port.sh
      command: [
        '-c', './policy-pap.sh',
        'mariadb', '3306',
        'message-router', '3904',
        'api', '6969'
        ]
   xacml-pdp:
      image: ${CONTAINER_LOCATION}onap/policy-xacml-pdp:${POLICY_XACML_PDP_VERSION}
      container_name: policy-xacml-pdp
      depends_on:
       - mariadb
       - simulator
       - pap
      hostname: policy-xacml-pdp
      ports:
       - 30441:6969
       - 30999:3904
      volumes:
       - ./config/xacml-pdp/defaultConfig.json:/opt/app/policy/pdpx/etc/defaultConfig.json:ro
       - ./config/xacml-pdp/logback.xml:/opt/app/policy/pdpx/etc/logback.xml:ro
       - ./wait_for_port.sh:/opt/app/policy/pdpx/bin/wait_for_port.sh:ro
      entrypoint: ./wait_for_port.sh
      command: [
        '-c', './policy-pdpx.sh',
        'mariadb', '3306',
        'message-router', '3904',
        'pap', '6969'
        ]
   drools:
      image: ${CONTAINER_LOCATION}onap/policy-drools:${POLICY_DROOLS_PDP_VERSION}
      container_name: drools
      depends_on:
       - mariadb
       - simulator
       - pap
      hostname: drools
      ports:
       - 30217:6969
       - 30216:9696
      volumes:
       - ./config/drools-pdp/custom:/tmp/policy-install/config:ro
       - ./wait_for_port.sh:/opt/app/policy/bin/wait_for_port.sh:ro
      env_file:
        - ./config/drools-pdp/env/base.conf
      entrypoint: /opt/app/policy/bin/wait_for_port.sh
      command: [
        '-c', '/opt/app/policy/bin/pdpd-entrypoint.sh boot',
        'mariadb', '3306',
        'message-router', '3904'
        ]
   drools-apps:
      image: ${CONTAINER_LOCATION}onap/policy-pdpd-cl:${POLICY_DROOLS_APPS_VERSION}
      container_name: drools-apps
      depends_on:
       - mariadb
       - simulator
       - pap
       - xacml-pdp
      hostname: drools-apps
      ports:
       - 30221:6969
       - 30219:9696
      volumes:
       - ./config/drools-applications/custom:/tmp/policy-install/config:ro
       - ./wait_for_port.sh:/opt/app/policy/bin/wait_for_port.sh:ro
      env_file:
        - ./config/drools-applications/env/base.conf
        - ./config/drools-applications/env/feature-healthcheck.conf
        - ./config/drools-applications/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',
        'message-router', '3904',
        'pap', '6969',
        'aai-sim', '6666',
        'sdnc-sim', '6668',
        'so-sim', '6669',
        'vfc-sim', '6670'
        ]
   apex-pdp:
      image: ${CONTAINER_LOCATION}onap/policy-apex-pdp:${POLICY_APEX_PDP_VERSION}
      container_name: policy-apex-pdp
      depends_on:
       - mariadb
       - simulator
       - pap
      hostname: policy-apex-pdp
      ports:
       - 30237:6969
      volumes:
       - ./config/apex-pdp/OnapPfConfig.json:/opt/app/policy/apex-pdp/etc/onappf/config/OnapPfConfig.json:ro
       - ./config/apex-pdp/logback.xml:/opt/app/policy/apex-pdp/etc/logback.xml: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',
        'message-router', '3904',
        'pap', '6969'
        ]
   distribution:
      image: ${CONTAINER_LOCATION}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
       - ./distribution/config/temp/:/opt/app/policy/distribution/etc/temp/:ro
       - ./config/distribution/logback.xml:/opt/app/policy/distribution/etc/logback.xml: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',
        'message-router', '3904',
        'pap', '6969',
        'apex-pdp', '6969'
        ]
   policy-clamp-runtime-acm:
      image: ${CONTAINER_LOCATION}onap/policy-clamp-runtime-acm:${POLICY_CLAMP_VERSION}
      container_name: policy-clamp-runtime-acm
      depends_on:
       - mariadb
       - simulator
      hostname: policy-clamp-runtime-acm
      ports:
       - 30258:6969
      volumes:
       - ./config/clamp/AcRuntimeParameters.yaml:/opt/app/policy/clamp/etc/AcRuntimeParameters.yaml
       - ./config/clamp/logback.xml:/opt/app/policy/clamp/etc/logback.xml: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', './acm-runtime.sh',
        'mariadb', '3306',
        'message-router', '3904'
        ]
   policy-clamp-ac-http-ppnt:
      image: ${CONTAINER_LOCATION}onap/policy-clamp-ac-http-ppnt:${POLICY_CLAMP_VERSION}
      container_name: policy-clamp-ac-http-ppnt
      depends_on:
       - simulator
      hostname: policy-clamp-ac-http-ppnt
      ports:
       - 30290:6969
      volumes:
       - ./config/clamp/HttpParticipantParameters.yaml:/opt/app/policy/clamp/etc/HttpParticipantParameters.yaml
       - ./config/clamp/logback.xml:/opt/app/policy/clamp/etc/logback.xml: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', './http-participant.sh',
        'message-router', '3904'
        ]
   policy-clamp-ac-k8s-ppnt:
      image: ${CONTAINER_LOCATION}onap/policy-clamp-ac-k8s-ppnt:${POLICY_CLAMP_VERSION}
      container_name: policy-clamp-ac-k8s-ppnt
      depends_on:
       - simulator
      hostname: policy-clamp-ac-k8s-ppnt
      ports:
       - 30295:6969
      volumes:
       - ./config/clamp/KubernetesParticipantParameters.yaml:/opt/app/policy/clamp/etc/KubernetesParticipantParameters.yaml
       - ./config/clamp/logback.xml:/opt/app/policy/clamp/etc/logback.xml: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', './kubernetes-participant.sh',
        'message-router', '3904'
        ]
   policy-clamp-ac-pf-ppnt:
      image: ${CONTAINER_LOCATION}onap/policy-clamp-ac-pf-ppnt:${POLICY_CLAMP_VERSION}
      container_name: policy-clamp-ac-pf-ppnt
      depends_on:
       - simulator
       - api
      hostname: policy-clamp-ac-pf-ppnt
      ports:
       - 30218:6969
      volumes:
       - ./config/clamp/PolicyParticipantParameters.yaml:/opt/app/policy/clamp/etc/PolicyParticipantParameters.yaml:ro
       - ./config/clamp/logback.xml:/opt/app/policy/clamp/etc/logback.xml: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-participant.sh',
        'message-router', '3904',
        'api', '6969'
        ]
   policy-clamp-ac-a1pms-ppnt:
      image: ${CONTAINER_LOCATION}onap/policy-clamp-ac-a1pms-ppnt:${POLICY_CLAMP_VERSION}
      container_name: policy-clamp-ac-a1pms-ppnt
      depends_on:
       - simulator
      hostname: policy-clamp-ac-a1pms-ppnt
      ports:
       - 30296:6969
      volumes:
       - ./config/clamp/A1pmsParticipantParameters.yaml:/opt/app/policy/clamp/etc/A1pmsParticipantParameters.yaml:ro
       - ./config/clamp/logback.xml:/opt/app/policy/clamp/etc/logback.xml: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', './a1pms-participant.sh',
        'message-router', '3904'
        ]
   policy-gui:
     image: ${CONTAINER_LOCATION}onap/policy-gui:latest
     container_name: policy-gui
     depends_on:
      - policy-clamp-backend
     hostname: policy-gui
     environment:
       CLAMP_URL: http://policy-clamp-backend:8445
       CLAMP_DISABLE_SSL_VALIDATION: "true"
     ports:
      - 2445:2445
     volumes:
      - ./config/policy-gui/application.yaml:/opt/app/policy/gui/etc/application.yml
      - ./config/policy-gui/logback.xml:/opt/app/policy/gui/etc/logback.xml:ro
      - ./wait_for_port.sh:/opt/app/policy/gui/bin/wait_for_port.sh:ro
     entrypoint: ./policy-gui.sh
     working_dir: /opt/app/policy/gui/bin
     command: ./policy-gui.sh
   policy-clamp-backend:
     image: ${CONTAINER_LOCATION}onap/policy-clamp-backend:${POLICY_CLAMP_VERSION}
     container_name: policy-clamp-backend
     depends_on:
      - policy-clamp-runtime-acm
      - distribution
     hostname: policy-clamp-backend
     environment:
        POLICY_API_HOST: api
        POLICY_PAP_HOST: pap
        MARIADB_HOST: mariadb
        RUNTIME_HOST: policy-clamp-runtime-acm
     ports:
      - 8445:8445
     volumes:
      - ./config/clamp/ClampBackend.properties:/opt/policy/clamp/config/ClampBackend.properties:ro
      - ./config/clamp/logback-backend.xml:/opt/policy/clamp/config/logback.xml:ro
     working_dir: /opt/policy/clamp
     command: java
      -Djava.security.egd=file:/dev/./urandom
      -XX:MinRAMPercentage=50
      -XX:MaxRAMPercentage=75
      -jar ./policy-clamp-backend.jar
      --spring.config.name=ClampBackend
      --spring.config.location=/opt/policy/clamp/config/ClampBackend.properties
