# Copyright © 2018 ZTE
# Modifications Copyright © 2018 AT&T, Amdocs, Bell Canada
# Modifications Copyright © 2021 Orange
# Modifications Copyright © 2021 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.

apiVersion: v2
description: ONAP Application Authorization Framework
name: aaf
version: 11.0.0

dependencies:
  - name: aaf-cass
    version: ~11.x-0
    repository: 'file://components/aaf-cass'
    condition: aaf-authz.enabled
  - name: aaf-cm
    version: ~11.x-0
    repository: 'file://components/aaf-cm'
    condition: aaf-authz.enabled
  - name: aaf-fs
    version: ~11.x-0
    repository: 'file://components/aaf-fs'
    condition: aaf-authz.enabled
  - name: aaf-gui
    version: ~11.x-0
    repository: 'file://components/aaf-gui'
    condition: aaf-authz.enabled
  - name: aaf-hello
    version: ~11.x-0
    repository: 'file://components/aaf-hello'
    condition: aaf-hello.enabled
  - name: aaf-locate
    version: ~11.x-0
    repository: 'file://components/aaf-locate'
    condition: aaf-authz.enabled
  - name: aaf-oauth
    version: ~11.x-0
    repository: 'file://components/aaf-oauth'
    condition: aaf-authz.enabled
  - name: aaf-service
    version: ~11.x-0
    repository: 'file://components/aaf-service'
    condition: aaf-authz.enabled
  - name: aaf-sms
    version: ~11.x-0
    repository: 'file://components/aaf-sms'
    condition: aaf-sms.enabled
  - name: aaf-sshsm
    version: ~11.x-0
    repository: 'file://components/aaf-sshsm'
    condition: aaf-sshsm.enabled
