# Copyright © 2018  AT&T, Amdocs, Bell Canada Intellectual Property.  All rights reserved.
# Modifications Copyright © 2021 Nokia
#
# 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.

dependencies:
  - name: common
    version: ~8.x-0
    repository: '@local'
  - name: dcae-bootstrap
    version: ~8.x-0
    repository: 'file://components/dcae-bootstrap'
    condition: dcae-bootstrap.enabled
  - name: dcae-cloudify-manager
    version: ~8.x-0
    repository: 'file://components/dcae-cloudify-manager'
    condition: dcae-cloudify-manager.enabled
  - name: dcae-config-binding-service
    version: ~8.x-0
    repository: 'file://components/dcae-config-binding-service'
    condition: dcae-config-binding-service.enabled
  - name: dcae-healthcheck
    version: ~8.x-0
    repository: 'file://components/dcae-healthcheck'
    condition: dcae-healthcheck.enabled
  - name: dcae-servicechange-handler
    version: ~8.x-0
    repository: 'file://components/dcae-servicechange-handler'
    condition: dcae-servicechange-handler.enabled
  - name: dcae-inventory-api
    version: ~8.x-0
    repository: 'file://components/dcae-inventory-api'
    condition: dcae-inventory-api.enabled
  - name: dcae-deployment-handler
    version: ~8.x-0
    repository: 'file://components/dcae-deployment-handler'
    condition: dcae-deployment-handler.enabled
  - name: dcae-policy-handler
    version: ~8.x-0
    repository: 'file://components/dcae-policy-handler'
    condition: dcae-policy-handler.enabled
  - name: dcae-dashboard
    version: ~8.x-0
    repository: 'file://components/dcae-dashboard'
    condition: dcae-dashboard.enabled
  - name: dcae-ves-openapi-manager
    version: ~8.x-0
    repository: 'file://components/dcae-ves-openapi-manager'
    condition: dcae-ves-openapi-manager.enabled
