diff options
77 files changed, 16 insertions, 3986 deletions
diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/clearwater-live-test-existing.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/clearwater-live-test-existing.yaml deleted file mode 100644 index 0e6a11c..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/clearwater-live-test-existing.yaml +++ /dev/null @@ -1,54 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -tosca_definitions_version: tosca_simple_yaml_1_0 - -description: >- - Project Clearwater is an open-source IMS core, developed by Metaswitch Networks and released under - the GNU GPLv3. - -metadata: - template_name: clearwater-live-test-existing - template_author: ARIA - template_version: '1.0' - aria_version: '0.2.0' - -imports: - - types/clearwater.yaml - - aria-1.0 - -topology_template: - - inputs: - hosts.ssh.user: - type: string - hosts.ssh.password: - type: string - existing_host.public_address: - type: string - - node_templates: - live_test: - type: clearwater.LiveTest - - existing_host: - type: clearwater.HostBase - attributes: - public_address: { get_input: existing_host.public_address } - capabilities: - host: - properties: - ssh.user: { get_input: hosts.ssh.user } - ssh.password: { get_input: hosts.ssh.password } diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/clearwater-single-existing.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/clearwater-single-existing.yaml deleted file mode 100644 index 72b882a..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/clearwater-single-existing.yaml +++ /dev/null @@ -1,147 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -tosca_definitions_version: tosca_simple_yaml_1_0 - -description: >- - Project Clearwater is an open-source IMS core, developed by Metaswitch Networks and released under - the GNU GPLv3. - -metadata: - template_name: clearwater-single-existing - template_author: ARIA - template_version: '1.0' - aria_version: '0.2.0' - -imports: - - types/clearwater.yaml - - aria-1.0 - -topology_template: - - inputs: - hosts.ssh.user: - description: >- - Existing SSH user. - type: string - hosts.ssh.password: - description: >- - Existing SSH password. - type: string - existing_host.public_address: - description: >- - Existing IP address that can be accessed by ARIA. - type: string - existing_host.private_address: - description: >- - Existing IP address that can be accessed within the service. - type: string - default: { get_input: existing_host.public_address } - existing_host.hostname: - description: >- - The hostname will be changed to this. - type: string - default: aria-clearwater-single - - node_templates: - bono: - type: clearwater.Bono - requirements: - - sip_downstream: clearwater.Sprout - - sip_secure_downstream: clearwater.Sprout - - ralf: clearwater.Ralf - - sprout: - type: clearwater.Sprout - requirements: - - ralf: clearwater.Ralf -# cyclical: see ARIA-327 -# - sip_upstream: clearwater.Bono - - dime: - type: clearwater.Dime - - homestead: - type: clearwater.Homestead - - ralf: - type: clearwater.Ralf - description: >- - Optional, only required if you are using a CCF (Charging Collection Function). - - homer: - type: clearwater.Homer - - vellum: - type: clearwater.Vellum -# requirements: -# cyclical: see ARIA-327 -# - ralf: clearwater.Ralf - - i-cscf: - type: clearwater.I-CSCF - - s-cscf: - type: clearwater.S-CSCF - - ellis: - type: clearwater.Ellis - description: >- - Optional, only required if you want a web frontend. - properties: - provision_numbers_count: 1000 - requirements: - - ralf: clearwater.Ralf - - existing_host: - type: clearwater.Host - attributes: - public_address: { get_input: existing_host.public_address } - private_address: { get_input: existing_host.private_address } - capabilities: - host: - properties: - hostname: { get_input: existing_host.hostname } - ssh.user: { get_input: hosts.ssh.user } - ssh.password: { get_input: hosts.ssh.password } - max_log_directory_size: 50 MiB - reduce_cassandra_mem_usage: true - - smtp: - type: smtp.SMTP - properties: - address: 127.0.0.1 - capabilities: - smtp: - properties: - username: username - password: password - - policies: - configuration: - type: clearwater.Configuration - properties: - zone: example.com - secret: secret - - substitution_mappings: - node_type: ims.nodes.IMS - capabilities: - p-cscf: [ bono, p-cscf ] - i-cscf: [ i-cscf, i-cscf ] - s-cscf: [ s-cscf, s-cscf ] - hss: [ homestead, hss ] - ctf: [ ralf, ctf ] - xdms: [ homer, xdms ] diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/bono/create.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/bono/create.sh deleted file mode 100644 index b2a3a68..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/bono/create.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -set -e - -yes | aptdcon --hide-terminal --install bono -yes | aptdcon --hide-terminal --install restund diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/bono/delete.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/bono/delete.sh deleted file mode 100644 index 73485c3..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/bono/delete.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -TODO diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/dime/create.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/dime/create.sh deleted file mode 100644 index 9b25876..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/dime/create.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -set -e - -# Installs Homestead and Ralf -yes | aptdcon --hide-terminal --install dime -yes | aptdcon --hide-terminal --install clearwater-prov-tools diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/dime/delete.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/dime/delete.sh deleted file mode 100644 index 73485c3..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/dime/delete.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -TODO diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/ellis/configure.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/ellis/configure.sh deleted file mode 100644 index b52cc08..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/ellis/configure.sh +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -set -e - -PROVISION_NUMBERS_START=$(ctx node properties provision_numbers_start) -PROVISION_NUMBERS_COUNT=$(ctx node properties provision_numbers_count) - -if [ "$PROVISION_NUMBERS_COUNT" != 0 ]; then - cd /usr/share/clearwater/ellis - . env/bin/activate - python src/metaswitch/ellis/tools/create_numbers.py \ - --start "$PROVISION_NUMBERS_START" \ - --count "$PROVISION_NUMBERS_COUNT" - deactivate -fi diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/ellis/create.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/ellis/create.sh deleted file mode 100644 index bdd9341..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/ellis/create.sh +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -set -e - -yes | aptdcon --hide-terminal --install ellis diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/ellis/delete.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/ellis/delete.sh deleted file mode 100644 index 73485c3..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/ellis/delete.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -TODO diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/homer/create.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/homer/create.sh deleted file mode 100644 index 5f40960..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/homer/create.sh +++ /dev/null @@ -1,27 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -set -e - -yes | aptdcon --hide-terminal --install homer - -# ARIA fix to avoid warnings by Twisted for missing service_identity library -# (Crest is used by both Homer and Homestead-prov) -cd /usr/share/clearwater/crest -. env/bin/activate -pip install service_identity -deactivate -service homer restart diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/homer/delete.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/homer/delete.sh deleted file mode 100644 index 73485c3..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/homer/delete.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -TODO diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/homestead/create.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/homestead/create.sh deleted file mode 100644 index d280033..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/homestead/create.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -set -e - -# ARIA fix to avoid warnings by Twisted for missing service_identity library -# (Crest is used by both Homer and Homestead-prov) -cd /usr/share/clearwater/crest -. env/bin/activate -pip install service_identity -deactivate -service homer restart diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/homestead/delete.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/homestead/delete.sh deleted file mode 100644 index 73485c3..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/homestead/delete.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -TODO diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/host-base/configure.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/host-base/configure.sh deleted file mode 100644 index c5b87d9..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/host-base/configure.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -set -e - -if ! type aptdcon > /dev/null; then - # This will allow us to do concurrent installs - apt update - apt install aptdaemon --yes -fi diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/host/configure.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/host/configure.sh deleted file mode 100644 index 61cb835..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/host/configure.sh +++ /dev/null @@ -1,183 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -set -e - -HOSTNAME=$(ctx node capabilities host properties hostname) - -# Change hostname -OLD_HOSTNAME=$(hostname) -if [ "$OLD_HOSTNAME" != "$HOSTNAME" ]; then - hostname "$HOSTNAME" - echo "$HOSTNAME" > /etc/hostname - sed --in-place --expression "s/127.0.1.1\s\+$OLD_HOSTNAME/127.0.1.1 $HOSTNAME/" /etc/hosts -fi - -ZONE=$(ctx service get_policy_by_type [ clearwater.Configuration ] properties zone) -GEOGRAPHICALLY_REDUNDANT=$(ctx service get_policy_by_type [ clearwater.Configuration ] properties geographically_redundant) -SITE_NAME=$(ctx service get_policy_by_type [ clearwater.Configuration ] properties site_name) -SECRET=$(ctx service get_policy_by_type [ clearwater.Configuration ] properties secret) - -SMTP_HOSTNAME=$(ctx service get_node_by_type [ clearwater.Ellis ] get_outbound_relationship_by_name [ smtp ] target_node properties address) -SMTP_USERNAME=$(ctx service get_node_by_type [ clearwater.Ellis ] get_outbound_relationship_by_name [ smtp ] target_node capabilities smtp properties username) -SMTP_PASSWORD=$(ctx service get_node_by_type [ clearwater.Ellis ] get_outbound_relationship_by_name [ smtp ] target_node capabilities smtp properties password) - -MAX_LOG_DIRECTORY_SIZE=$(ctx node capabilities host properties max_log_directory_size value) -REDUCE_CASSANDRA_MEM_USAGE=$(ctx node capabilities host properties reduce_cassandra_mem_usage) - -PRIVATE_IP=$(ctx node attributes private_address) -PUBLIC_IP=$(ctx node attributes public_address) -PUBLIC_HOSTNAME=$(hostname) -# TODO: comma-separated list of all private IP addresses in group -ETCD_CLUSTER=$PRIVATE_IP - -REPO_FILE=/etc/apt/sources.list.d/clearwater.list -REPO_LINE='deb http://repo.cw-ngv.com/stable binary/' -KEY_URL=http://repo.cw-ngv.com/repo_key - - -# -# Repository -# - -if [ ! -f "$REPO_FILE" ]; then - echo "$REPO_LINE" > "$REPO_FILE" - curl --location "$KEY_URL" | apt-key add - -fi - -apt update - -if ! type aptdcon > /dev/null; then - # This will allow us to do concurrent installs - apt install aptdaemon --yes -fi - -yes | aptdcon --hide-terminal --install clearwater-management - - -# -# DNS -# - -S_CSCF_HOST="$PRIVATE_IP scscf.$PUBLIC_HOSTNAME # ARIA" -grep --quiet --fixed-strings "$S_CSCF_HOST" /etc/hosts || echo "$S_CSCF_HOST" >> /etc/hosts - - -# -# Local configuration -# - -mkdir --parents /etc/clearwater -CONFIG_FILE=/etc/clearwater/local_config -echo "# Created by ARIA on $(date -u)" > "$CONFIG_FILE" - -echo >> "$CONFIG_FILE" -echo "# Local IP configuration" >> "$CONFIG_FILE" -echo "local_ip=$PRIVATE_IP" >> "$CONFIG_FILE" -echo "public_ip=$PUBLIC_IP" >> "$CONFIG_FILE" -echo "public_hostname=$PUBLIC_HOSTNAME" >> "$CONFIG_FILE" -echo "etcd_cluster=$ETCD_CLUSTER" >> "$CONFIG_FILE" - -if [ "$MAX_LOG_DIRECTORY_SIZE" != 0 ]; then - echo >> "$CONFIG_FILE" - echo "max_log_directory_size=$MAX_LOG_DIRECTORY_SIZE" >> "$CONFIG_FILE" -fi - -if [ "$GEOGRAPHICALLY_REDUNDANT" = True ]; then - echo >> "$CONFIG_FILE" - echo "# Geographically redundant" >> "$CONFIG_FILE" - echo "local_site_name=$SITE_NAME" >> "$CONFIG_FILE" - - # On the first Vellum node in the second site, you should set remote_cassandra_seeds to the - # IP address of a Vellum node in the first site. - #echo "remote_cassandra_seeds=" >> "$CONFIG_FILE" -fi - - -# -# Shared configuration -# - -if [ "$GEOGRAPHICALLY_REDUNDANT" = True ]; then - SPROUT_HOSTNAME=sprout.$SITE_NAME.$ZONE - SPROUT_REGISTRATION_STORE=vellum.$SITE_NAME.$ZONE - HS_HOSTNAME=hs.$SITE_NAME.$ZONE:8888 - HS_PROVISIONING_HOSTNAME=hs.$SITE_NAME.$ZONE:8889 - RALF_HOSTNAME=ralf.$SITE_NAME.$ZONE:10888 - RALF_SESSION_STORE=vellum.$ZONE - XDMS_HOSTNAME=homer.$SITE_NAME.$ZONE:7888 - CHRONOS_HOSTNAME=vellum.$SITE_NAME.$ZONE - CASSANDRA_HOSTNAME=vellum.$SITE_NAME.$ZONE -else - VELLUM_IP=$PRIVATE_IP - HOMESTEAD_IP=$PRIVATE_IP - HOMER_IP=$PRIVATE_IP - - SPROUT_HOSTNAME=$PUBLIC_HOSTNAME - SPROUT_REGISTRATION_STORE=$VELLUM_IP - HS_HOSTNAME=$HOMESTEAD_IP:8888 - HS_PROVISIONING_HOSTNAME=$HOMESTEAD_IP:8889 - RALF_HOSTNAME= - RALF_SESSION_STORE= - XDMS_HOSTNAME=$HOMER_IP:7888 - CHRONOS_HOSTNAME= - CASSANDRA_HOSTNAME= -fi - -mkdir --parents /etc/clearwater -CONFIG_FILE=/etc/clearwater/shared_config -echo "# Created by ARIA on $(date -u)" > "$CONFIG_FILE" - -echo >> "$CONFIG_FILE" -echo "# Deployment definitions" >> "$CONFIG_FILE" -echo "home_domain=$ZONE" >> "$CONFIG_FILE" -echo "sprout_hostname=$SPROUT_HOSTNAME" >> "$CONFIG_FILE" -echo "sprout_registration_store=$SPROUT_REGISTRATION_STORE" >> "$CONFIG_FILE" -echo "hs_hostname=$HS_HOSTNAME" >> "$CONFIG_FILE" -echo "hs_provisioning_hostname=$HS_PROVISIONING_HOSTNAME" >> "$CONFIG_FILE" -echo "ralf_hostname=$RALF_HOSTNAME" >> "$CONFIG_FILE" -echo "ralf_session_store=$RALF_SESSION_STORE" >> "$CONFIG_FILE" -echo "xdms_hostname=$XDMS_HOSTNAME" >> "$CONFIG_FILE" -echo "chronos_hostname=$CHRONOS_HOSTNAME" >> "$CONFIG_FILE" -echo "cassandra_hostname=$CASSANDRA_HOSTNAME" >> "$CONFIG_FILE" - -echo >> "$CONFIG_FILE" -echo "# Email server configuration" >> "$CONFIG_FILE" -echo "smtp_smarthost=$SMTP_HOSTNAME" >> "$CONFIG_FILE" -echo "smtp_username=$SMTP_USERNAME" >> "$CONFIG_FILE" -echo "smtp_password=$SMTP_PASSWORD" >> "$CONFIG_FILE" -echo "email_recovery_sender=clearwater@$ZONE" >> "$CONFIG_FILE" - -echo >> "$CONFIG_FILE" -echo "# I-CSCF/S-CSCF configuration (used by Bono to proxy to Sprout)" >> "$CONFIG_FILE" -echo "upstream_hostname=scscf.$HOSTNAME" >> "$CONFIG_FILE" - -echo >> "$CONFIG_FILE" -echo "# Keys" >> "$CONFIG_FILE" -echo "signup_key=$SECRET" >> "$CONFIG_FILE" -echo "turn_workaround=$SECRET" >> "$CONFIG_FILE" -echo "ellis_api_key=$SECRET" >> "$CONFIG_FILE" -echo "ellis_cookie_key=$SECRET" >> "$CONFIG_FILE" - -if [ "$REDUCE_CASSANDRA_MEM_USAGE" = True ]; then - echo >> "$CONFIG_FILE" - echo "# $REDUCE_CASSANDRA_MEM_USAGE" >> "$CONFIG_FILE" - echo "reduce_cassandra_mem_usage=Y" >> "$CONFIG_FILE" -fi - -# Copy to other hosts in etcd group -#yes | aptdcon --hide-terminal --install clearwater-config-manager -#cw-upload_shared_config diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/live-test/create.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/live-test/create.sh deleted file mode 100644 index f28bff3..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/live-test/create.sh +++ /dev/null @@ -1,69 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -set -e - -LIB=/opt/clearwater-live-test -COMMAND=/usr/bin/clearwater-live-test -RUBY_VERSION=1.9.3 -RVM=/usr/local/rvm -QUAFF_OLD_URL=git@github.com:metaswitch/quaff.git -QUAFF_NEW_URL=https://github.com/Metaswitch/quaff.git - -# Build requirements -yes | aptdcon --hide-terminal --install build-essential -yes | aptdcon --hide-terminal --install bundler -yes | aptdcon --hide-terminal --install git - -# Required by nokogiri Ruby gem -yes | aptdcon --hide-terminal --install zlib1g-dev - -# Install Ruby enVironment Manager -if [ ! -d "$RVM" ]; then - # Install - curl --location https://get.rvm.io | bash -s stable -fi - -# Install Ruby using RVM -. "$RVM/scripts/rvm" -rvm autolibs enable -rvm install "$RUBY_VERSION" -rvm use "$RUBY_VERSION@global" - -# Install Clearwater Live Test -if [ ! -d "$LIB" ]; then - mkdir --parents /opt - cd /opt - git clone --depth 1 https://github.com/Metaswitch/clearwater-live-test.git - cd clearwater-live-test - chmod a+rw -R . - - # Note: we must fix the URLs for Quaff - sed --in-place --expression "s,$QUAFF_OLD_URL,$QUAFF_NEW_URL,g" Gemfile Gemfile.lock - - # Install required Ruby gems - bundle install -fi - -# Create command -echo "#!/bin/bash" > "$COMMAND" -echo ". \"$RVM/scripts/rvm\"" >> "$COMMAND" -echo "rvm use \"$RUBY_VERSION@global\"" >> "$COMMAND" -echo "cd \"$LIB\"" >> "$COMMAND" -echo "rake \"\$@\"" >> "$COMMAND" -chmod a+x "$COMMAND" - -# clearwater-live-test test[example.com] SIGNUP_CODE=secret PROXY=192.168.1.171 ELLIS=192.168.1.171 diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/live-test/delete.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/live-test/delete.sh deleted file mode 100644 index 079627c..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/live-test/delete.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -set -e - -LIB=/opt/clearwater-live-test -COMMAND=/usr/bin/clearwater-live-test - -rm --recursive --force "$LIB" -rm --force "$COMMAND" diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/memento/create.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/memento/create.sh deleted file mode 100644 index 91ffd9f..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/memento/create.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -set -e - -yes | aptdcon --hide-terminal --install memento-as -yes | aptdcon --hide-terminal --install memento-nginx diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/memento/delete.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/memento/delete.sh deleted file mode 100644 index 73485c3..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/memento/delete.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -TODO diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/ralf/create.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/ralf/create.sh deleted file mode 100644 index 5cae7ef..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/ralf/create.sh +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/ralf/delete.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/ralf/delete.sh deleted file mode 100644 index 73485c3..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/ralf/delete.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -TODO diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/sprout/create.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/sprout/create.sh deleted file mode 100644 index a9946b9..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/sprout/create.sh +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -set -e - -yes | aptdcon --hide-terminal --install sprout diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/sprout/delete.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/sprout/delete.sh deleted file mode 100644 index 73485c3..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/sprout/delete.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -TODO diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/vellum/create.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/vellum/create.sh deleted file mode 100644 index 1d7b2db..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/vellum/create.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -set -e - -yes | aptdcon --hide-terminal --install vellum - -# Memento -# TODO: see if there is a Memento node -#yes | aptdcon --hide-terminal --install memento-cassandra diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/vellum/delete.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/vellum/delete.sh deleted file mode 100644 index 73485c3..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/scripts/vellum/delete.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -TODO diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/types/cassandra.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/types/cassandra.yaml deleted file mode 100644 index cbb3a5d..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/types/cassandra.yaml +++ /dev/null @@ -1,30 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -capability_types: - - cassandra.Endpoint: - derived_from: tosca.capabilities.Endpoint.Database - properties: - port: # override - type: tosca.datatypes.network.PortDef - default: 7000 - - cassandra.Endpoint.Thrift: - derived_from: tosca.capabilities.Endpoint.Database - properties: - port: # override - type: tosca.datatypes.network.PortDef - default: 9160 diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/types/clearwater.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/types/clearwater.yaml deleted file mode 100644 index 1021262..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/types/clearwater.yaml +++ /dev/null @@ -1,728 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -imports: - - ims.yaml - - smtp.yaml - - cassandra.yaml - -dsl_definitions: - - clearwater_operation_dependencies: &CLEARWATER_OPERATION_DEPENDENCIES - - "ssh.user > { get_property: [ HOST, host, ssh.user ] }" - - "ssh.password > { get_property: [ HOST, host, ssh.password ] }" - - "ssh.address > { get_attribute: [ HOST, public_address ] }" - - "ssh.use_sudo > true" - -policy_types: - - clearwater.Configuration: - derived_from: tosca.policies.Root - properties: - zone: - description: >- - The domain name for SIP addresses, for example if its "example.com" then a SIP address - could be "6505550243@example.com". - type: string - geographically_redundant: - description: >- - Enable a geographically redundant deployment. - - See: http://clearwater.readthedocs.io/en/stable/Geographic_redundancy.html - type: boolean - default: false - site_name: - description: >- - Used by geographically redundant deployments. - type: string - required: false - secret: - description: >- - Used for registration via Ellis. - type: string - -capability_types: - - clearwater.Container: - description: >- - Clearwater container capability. - derived_from: tosca.capabilities.Container - properties: - hostname: - type: string - ssh.user: - type: string - ssh.password: - type: string - max_log_directory_size: - type: scalar-unit.size - default: 0 B # 0 means no max size - reduce_cassandra_mem_usage: - type: boolean - default: false - - # http://clearwater.readthedocs.io/en/stable/Clearwater_IP_Port_Usage.html - - # SIP endpoints - - clearwater.Endpoint.SIP.Upstream: - derived_from: tosca.capabilities.Endpoint - properties: - protocol: # override - type: string - default: sip - port: # override - type: tosca.datatypes.network.PortDef - default: 5052 - - clearwater.Endpoint.SIP.Upstream.Secure: - derived_from: tosca.capabilities.Endpoint - properties: - protocol: # override - type: string - default: sip - port: # override - type: tosca.datatypes.network.PortDef - default: 5054 - secure: # override - type: boolean - default: true - - clearwater.Endpoint.SIP.Proxy: - derived_from: tosca.capabilities.Endpoint - properties: - protocol: # override - type: string - default: sip - port: # override - type: tosca.datatypes.network.PortDef - default: 5058 - - clearwater.Endpoint.SIP.Public: - derived_from: tosca.capabilities.Endpoint.Public - properties: - protocol: # override - type: string - default: sip - port: # override - type: tosca.datatypes.network.PortDef - default: 5060 - - clearwater.Endpoint.SIP.Public.Secure: - derived_from: tosca.capabilities.Endpoint.Public - properties: - protocol: # override - type: string - default: sip - port: # override - type: tosca.datatypes.network.PortDef - default: 5062 - secure: # override - type: boolean - default: true - - # STUN endpoints - - clearwater.Endpoint.STUN: - derived_from: tosca.capabilities.Endpoint - properties: - protocol: # override - type: string - default: stun - port: # override - type: tosca.datatypes.network.PortDef - default: 3478 - - # Diameter endpoints - - clearwater.Endpoint.Diameter.HSS: - description: >- - In shared_config: hs_listen_port - derived_from: tosca.capabilities.Endpoint - properties: - protocol: # override - type: string - default: diameter - port: # override - type: tosca.datatypes.network.PortDef - default: 3868 - - clearwater.Endpoint.Diameter.CTF: - description: >- - In shared_config: ralf_listen_port - derived_from: tosca.capabilities.Endpoint - properties: - protocol: # override - type: string - default: diameter - port: # override - type: tosca.datatypes.network.PortDef - default: 3869 - - # Management endpoints - - clearwater.Endpoint.Management.Homer: - derived_from: ims.interfaces.HTTP - properties: - port: # override - type: tosca.datatypes.network.PortDef - default: 7888 - - clearwater.Endpoint.Management.Homestead: - derived_from: ims.interfaces.HTTP - properties: - port: # override - type: tosca.datatypes.network.PortDef - default: 8888 - - clearwater.Endpoint.Management.Homestead.Provisioning: - description: >- - In shared_config: homestead_provisioning_port - derived_from: ims.interfaces.HTTP - properties: - port: # override - type: tosca.datatypes.network.PortDef - default: 8889 - - clearwater.Endpoint.Management.Sprout: - derived_from: ims.interfaces.HTTP - properties: - port: # override - type: tosca.datatypes.network.PortDef - default: 9886 - - clearwater.Endpoint.Management.Ralf: - derived_from: ims.interfaces.HTTP - properties: - port: # override - type: tosca.datatypes.network.PortDef - default: 9888 # note: some documentation shows 10888 - - # Web endpoints - - clearwater.Endpoint.Public.Web: - derived_from: tosca.capabilities.Endpoint.Public - properties: - protocol: # override - type: string - default: http - port: # override - type: tosca.datatypes.network.PortDef - default: 80 - url_path: # override - type: string - default: / - - clearwater.Endpoint.Public.Web.Secure: - derived_from: tosca.capabilities.Endpoint.Public - properties: - protocol: # override - type: string - default: https - port: # override - type: tosca.datatypes.network.PortDef - default: 443 - secure: # override - type: boolean - default: true - url_path: # override - type: string - default: / - - # Other endpoints - - clearwater.Endpoint.Chronos: - derived_from: tosca.capabilities.Endpoint - properties: - port: # override - type: tosca.datatypes.network.PortDef - default: 7253 - - clearwater.Endpoint.Memcached: - derived_from: tosca.capabilities.Endpoint - properties: - port: # override - type: tosca.datatypes.network.PortDef - default: 11211 - - clearwater.Endpoint.Astaire: - derived_from: tosca.capabilities.Endpoint - properties: - port: # override - type: tosca.datatypes.network.PortDef - default: 11311 - -data_types: - - clearwater.Number: - derived_from: string - constraints: - - pattern: '^\d{10}$' - -node_types: - - # http://clearwater.readthedocs.io/en/stable/Clearwater_Architecture.html - - clearwater.SoftwareComponent: - description: >- - Clearwater software components must be installed in a Clearwater-capable compute node. - derived_from: tosca.nodes.SoftwareComponent - requirements: - - host: # override - capability: clearwater.Container - relationship: tosca.relationships.HostedOn - - clearwater.Bono: - description: >- - Clearwater edge proxy. - - The Bono nodes form a horizontally scalable SIP edge proxy providing both a SIP IMS Gm - compliant interface and a WebRTC interface to clients. Client connections are load balanced - across the nodes. The Bono node provides the anchor point for the client's connection to the - Clearwater system, including support for various NAT traversal mechanisms. A client is - therefore anchored to a particular Bono node for the duration of its registration, but can - move to another Bono node if the connection or client fails. - - Clients can connect to Bono using SIP/UDP or SIP/TCP. Bono supports any WebRTC client that - performs call setup signaling using SIP over WebSocket. - - Alternatively, Clearwater can be deployed with a third party P-CSCF or Session Border - Controller implementing P-CSCF. In this case Bono nodes are not required. - derived_from: clearwater.SoftwareComponent - capabilities: - p-cscf: ims.functions.P-CSCF - gm: ims.interfaces.Gm - sip_endpoint: clearwater.Endpoint.SIP.Public - sip_secure_endpoint: clearwater.Endpoint.SIP.Public.Secure - sip_proxy: clearwater.Endpoint.SIP.Proxy # open to Sprout - stun_endoint: clearwater.Endpoint.STUN - requirements: - - sip_downstream: - capability: clearwater.Endpoint.SIP.Upstream - occurrences: [ 0, UNBOUNDED ] - - sip_secure_downstream: - capability: clearwater.Endpoint.SIP.Upstream.Secure - occurrences: [ 0, UNBOUNDED ] - - ralf: # for billable events - capability: clearwater.Endpoint.Management.Ralf - occurrences: [ 0, 1 ] - interfaces: - Standard: - type: tosca.interfaces.node.lifecycle.Standard - create: - implementation: - primary: scripts/bono/create.sh - dependencies: *CLEARWATER_OPERATION_DEPENDENCIES - delete: - implementation: - primary: scripts/bono/delete.sh - dependencies: *CLEARWATER_OPERATION_DEPENDENCIES - - clearwater.Sprout: - description: >- - Clearwater SIP router. - - The Sprout nodes act as a horizontally scalable, combined SIP registrar and authoritative - routing proxy, and handle client authentication and the ISC interface to application servers. - The Sprout nodes also contain the in-built MMTEL application server. SIP transactions are load - balanced across the Sprout cluster, so there is no long-lived association between a client and - a particular Sprout node. Sprout does not store any long-lived data itself and instead uses - web service interfaces to Homestead and Homer to retrieve HSS configuration such as - authentication data/user profiles and MMTEL service settings APIs to Vellum for storing - subscriber registration data and for running timers. - - Sprout is where the bulk of the I-CSCF and S-CSCF function resides, with the remainder - provided by Dime (and backed by the long-lived data stores on Vellum). - derived_from: clearwater.SoftwareComponent - capabilities: - sip_endpoint: clearwater.Endpoint.SIP.Upstream # open to Bono - sip_secure_endpoint: clearwater.Endpoint.SIP.Upstream.Secure # open to Bono - management_endpoint: clearwater.Endpoint.Management.Sprout - memento: - type: tosca.capabilities.Container - valid_source_types: [ clearwater.Memento ] - requirements: -# cyclical: see ARIA-327 -# - sip_upstream: -# capability: clearwater.Endpoint.SIP.Proxy -# occurrences: [ 0, UNBOUNDED ] - - homer: # for subscriber profiles - capability: clearwater.Endpoint.Management.Homer - - ralf: # for billable events - capability: clearwater.Endpoint.Management.Ralf - occurrences: [ 0, 1 ] - - chronos: - capability: clearwater.Endpoint.Chronos - node: clearwater.Vellum - - astaire: - capability: clearwater.Endpoint.Astaire - node: clearwater.Vellum - interfaces: - Standard: - type: tosca.interfaces.node.lifecycle.Standard - create: - implementation: - primary: scripts/sprout/create.sh - dependencies: *CLEARWATER_OPERATION_DEPENDENCIES - delete: - implementation: - primary: scripts/sprout/delete.sh - dependencies: *CLEARWATER_OPERATION_DEPENDENCIES - - clearwater.Memento: - derived_from: tosca.nodes.Root - capabilities: - sip-as: ims.functions.SIP-AS - web_secure_endpoint: clearwater.Endpoint.Public.Web.Secure - requirements: - - host: - capability: tosca.capabilities.Container - node: clearwater.Sprout - - cassandra_thrift: - capability: cassandra.Endpoint.Thrift - node: clearwater.Vellum - interfaces: - Standard: - type: tosca.interfaces.node.lifecycle.Standard - create: - implementation: - primary: scripts/memento/create.sh - dependencies: *CLEARWATER_OPERATION_DEPENDENCIES - delete: - implementation: - primary: scripts/memento/delete.sh - dependencies: *CLEARWATER_OPERATION_DEPENDENCIES - - clearwater.Dime: - description: >- - Clearwater Diameter gateway. - - Dime nodes run Clearwater's Homestead and Ralf components. - derived_from: clearwater.SoftwareComponent - capabilities: - host: - type: tosca.capabilities.Container - valid_source_types: [ clearwater.DimeSoftwareComponent ] - interfaces: - Standard: - type: tosca.interfaces.node.lifecycle.Standard - create: - implementation: - primary: scripts/dime/create.sh - dependencies: *CLEARWATER_OPERATION_DEPENDENCIES - delete: - implementation: - primary: scripts/dime/delete.sh - dependencies: *CLEARWATER_OPERATION_DEPENDENCIES - - clearwater.DimeSoftwareComponent: - description: >- - Base type for Dime software components. - derived_from: clearwater.SoftwareComponent - requirements: - - host: # override - capability: tosca.capabilities.Container - node: clearwater.Dime - - clearwater.Homestead: - description: >- - Clearwater HSS cache. - - Homestead provides a web services interface to Sprout for retrieving authentication - credentials and user profile information. It can either master the data (in which case it - exposes a web services provisioning interface) or can pull the data from an IMS compliant HSS - over the Cx interface. The Homestead nodes themselves are stateless - the mastered / cached - subscriber data is all stored on Vellum (via Cassandra's Thrift interface). - - In the IMS architecture, the HSS mirror function is considered to be part of the I-CSCF and - S-CSCF components, so in Clearwater I-CSCF and S-CSCF function is implemented with a - combination of Sprout and Dime clusters. - derived_from: clearwater.DimeSoftwareComponent - capabilities: - hss: ims.functions.HSS - cx: ims.interfaces.Cx - diameter_endpoint: clearwater.Endpoint.Diameter.HSS - management_endpoint: clearwater.Endpoint.Management.Homestead # open to Ellis - provisioning_management_endpoint: clearwater.Endpoint.Management.Homestead.Provisioning # open to Ellis - requirements: - - cassandra_thrift: - capability: cassandra.Endpoint.Thrift - node: clearwater.Vellum - interfaces: - Standard: - type: tosca.interfaces.node.lifecycle.Standard - create: - implementation: - primary: scripts/homestead/create.sh - dependencies: *CLEARWATER_OPERATION_DEPENDENCIES - delete: - implementation: - primary: scripts/homestead/delete.sh - dependencies: *CLEARWATER_OPERATION_DEPENDENCIES - - clearwater.Ralf: - description: >- - Clearwater CTF. - - Ralf provides an HTTP API that both Bono and Sprout can use to report billable events that - should be passed to the CDF (Charging Data Function) over the Rf billing interface. Ralf is - stateless, using Vellum to maintain the long lived session state and run the timers necessary - to enable it to conform to the Rf protocol. - derived_from: clearwater.DimeSoftwareComponent - capabilities: - ctf: ims.functions.CTF - rf: ims.interfaces.Rf - diameter_endpoint: clearwater.Endpoint.Diameter.CTF - management_endpoint: clearwater.Endpoint.Management.Ralf # open to Sprout, Bono, Vellum - requirements: - - chronos: - capability: clearwater.Endpoint.Chronos - node: clearwater.Vellum - - astaire: - capability: clearwater.Endpoint.Astaire - node: clearwater.Vellum - interfaces: - Standard: - type: tosca.interfaces.node.lifecycle.Standard - create: - implementation: - primary: scripts/ralf/create.sh - dependencies: *CLEARWATER_OPERATION_DEPENDENCIES - delete: - implementation: - primary: scripts/ralf/delete.sh - dependencies: *CLEARWATER_OPERATION_DEPENDENCIES - - clearwater.Vellum: - description: >- - Clearwater state store. - - Vellum is used to maintain all long-lived state in the deployment. It does this by running a - number of cloud optimized, distributed storage clusters. - - - Cassandra. Cassandra is used by Homestead to store authentication credentials and profile - information, and is used by Homer to store MMTEL service settings. Vellum exposes Cassandra's - Thrift API. - - - etcd. etcd is used by Vellum itself to share clustering information between Vellum nodes and - by other nodes in the deployment for shared configuration. - - - Chronos. Chronos is a distributed, redundant, reliable timer service developed by - Clearwater. It is used by Sprout and Ralf nodes to enable timers to be run (e.g. for SIP - Registration expiry) without pinning operations to a specific node (one node can set the timer - and another act on it when it pops). Chronos is accessed via an HTTP API. - - - Memcached / Astaire. Vellum also runs a Memcached cluster fronted by Astaire. Astaire is a - service developed by Clearwater that enabled more rapid scale up and scale down of memcached - clusters. This cluster is used by Sprout and Ralf for storing registration and session state. - derived_from: clearwater.SoftwareComponent - capabilities: - cassandra_endpoint: cassandra.Endpoint # open to other Vellum - cassandra_thrift_endpoint: cassandra.Endpoint.Thrift # open to Homer, Dime (Homestead), Sprout (Memento) - chronos_endpoint: clearwater.Endpoint.Chronos # open to other Vellum, Sprout, Dime (Ralf) - memcached_endpoint: clearwater.Endpoint.Memcached # open to other Vellum - astaire_endpoint: clearwater.Endpoint.Astaire # open to Sprout, Dime (Ralf) -# cyclical: see ARIA-327 -# requirements: -# - ralf: -# capability: clearwater.Endpoint.Management.Ralf -# occurrences: [ 0, 1 ] - interfaces: - Standard: - type: tosca.interfaces.node.lifecycle.Standard - create: - implementation: - primary: scripts/vellum/create.sh - dependencies: *CLEARWATER_OPERATION_DEPENDENCIES - delete: - implementation: - primary: scripts/vellum/delete.sh - dependencies: *CLEARWATER_OPERATION_DEPENDENCIES - - clearwater.Homer: - description: >- - Clearwater XDMS. - - Homer is a standard XDMS used to store MMTEL service settings documents for each user of the - system. Documents are created, read, updated and deleted using a standard XCAP interface. As - with Homestead, the Homer nodes use Vellum as the data store for all long lived data. - derived_from: clearwater.SoftwareComponent - capabilities: - xdms: ims.functions.XDMS - management_endpoint: clearwater.Endpoint.Management.Homer # open to Sprout, Ellis - requirements: - - cassandra_thrift: - capability: cassandra.Endpoint.Thrift - node: clearwater.Vellum - interfaces: - Standard: - type: tosca.interfaces.node.lifecycle.Standard - create: - implementation: - primary: scripts/homer/create.sh - dependencies: *CLEARWATER_OPERATION_DEPENDENCIES - delete: - implementation: - primary: scripts/homer/delete.sh - dependencies: *CLEARWATER_OPERATION_DEPENDENCIES - - clearwater.Ellis: - description: >- - Ellis is a sample provisioning portal providing self sign-up, password management, line - management and control of MMTEL service settings. It is not intended to be a part of - production Clearwater deployments (it is not easy to horizontally scale because of the MySQL - underpinnings for one thing) but to make the system easy to use out of the box. - derived_from: clearwater.SoftwareComponent - properties: - provision_numbers_start: - type: clearwater.Number - default: '6505550000' - provision_numbers_count: - type: integer - default: 0 # 0 means do not provision numbers - constraints: - - greater_or_equal: 0 - capabilities: - web_endpoint: clearwater.Endpoint.Public.Web - web_secure_endpoint: clearwater.Endpoint.Public.Web.Secure - requirements: - - homer: # for subscriber profiles - capability: clearwater.Endpoint.Management.Homer - - homestead: # for subscriber authentication - capability: clearwater.Endpoint.Management.Homestead - - homestead_provisioning: - capability: clearwater.Endpoint.Management.Homestead.Provisioning - - ralf: # TODO: really? - capability: clearwater.Endpoint.Management.Ralf - occurrences: [ 0, 1 ] - - smtp: - capability: smtp.SMTP - interfaces: - Standard: - type: tosca.interfaces.node.lifecycle.Standard - create: - implementation: - primary: scripts/ellis/create.sh - dependencies: *CLEARWATER_OPERATION_DEPENDENCIES - configure: - implementation: - primary: scripts/ellis/configure.sh - dependencies: *CLEARWATER_OPERATION_DEPENDENCIES - delete: - implementation: - primary: scripts/ellis/delete.sh - dependencies: *CLEARWATER_OPERATION_DEPENDENCIES - - clearwater.I-CSCF: - description: >- - Clearwater I-CSCF. - - Logical node encompassing Sprout and Homestead. Required only if you need to expose the I-CSCF - function. - derived_from: tosca.nodes.Root - capabilities: - i-cscf: ims.functions.I-CSCF - requirements: - - sprout: - capability: tosca.capabilities.Node - node: clearwater.Sprout - - homestead: - capability: tosca.capabilities.Node - node: clearwater.Homestead - - clearwater.S-CSCF: - description: >- - Clearwater S-CSCF. - - Logical node encompassing Sprout and Homestead. Required only if you need to expose the S-CSCF - function. - derived_from: tosca.nodes.Root - capabilities: - s-cscf: ims.functions.S-CSCF - requirements: - - sprout: - capability: tosca.capabilities.Node - node: clearwater.Sprout - - homestead: - capability: tosca.capabilities.Node - node: clearwater.Homestead - - clearwater.LiveTest: - derived_from: tosca.nodes.SoftwareComponent - interfaces: - Standard: - type: tosca.interfaces.node.lifecycle.Standard - create: - implementation: - primary: scripts/live-test/create.sh - dependencies: *CLEARWATER_OPERATION_DEPENDENCIES - delete: - implementation: - primary: scripts/live-test/delete.sh - dependencies: *CLEARWATER_OPERATION_DEPENDENCIES - - clearwater.HostBase: - derived_from: tosca.nodes.Compute - interfaces: - Standard: - type: tosca.interfaces.node.lifecycle.Standard - configure: - implementation: - primary: scripts/host-base/configure.sh - dependencies: *CLEARWATER_OPERATION_DEPENDENCIES - capabilities: - host: # override - type: clearwater.Container - valid_source_types: [ tosca.nodes.SoftwareComponent ] - os: # override - type: tosca.capabilities.OperatingSystem - properties: - architecture: - type: string - default: x86_64 - type: - type: string - default: linux - distribution: - type: string - default: ubuntu - version: - type: version - default: 14.04 - - clearwater.Host: - description: >- - Default Clearwater host. - - Note that any node can function as a Clearwater host as long as it has a clearwater.Container - capability. - derived_from: clearwater.HostBase - capabilities: - host: # override - type: clearwater.Container - valid_source_types: [ tosca.nodes.SoftwareComponent ] - properties: - mem_size: - type: scalar-unit.size - constraints: - - greater_or_equal: 0 MB - default: 4 GB # will run out of memory with less than this - interfaces: - Standard: - type: tosca.interfaces.node.lifecycle.Standard - configure: - implementation: - primary: scripts/host/configure.sh - dependencies: *CLEARWATER_OPERATION_DEPENDENCIES diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/types/ims.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/types/ims.yaml deleted file mode 100644 index 687ad58..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/types/ims.yaml +++ /dev/null @@ -1,446 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -capability_types: - - # https://en.wikipedia.org/wiki/IP_Multimedia_Subsystem#Core_network - - ims.functions.Root: - derived_from: tosca.capabilities.Root - - ims.functions.CTF: # not mentioned in Wikipedia - description: >- - Charging Trigger Function. - derived_from: ims.functions.Root - - ims.functions.XDMS: # not mentioned in Wikipedia - description: >- - XML Document Management Server - derived_from: ims.functions.Root - - ims.functions.HSS: - description: >- - The home subscriber server (HSS), or user profile server function (UPSF), is a master user - database that supports the IMS network entities that actually handle calls. It contains the - subscription-related information (subscriber profiles), performs authentication and - authorization of the user, and can provide information about the subscriber's location and IP - information. It is similar to the GSM home location register (HLR) and Authentication centre - (AuC). - - A subscriber location function (SLF) is needed to map user addresses when multiple HSSs are - used. - derived_from: ims.functions.Root - - ims.functions.CSCF: - description: >- - Several roles of SIP servers or proxies, collectively called Call Session Control Function - (CSCF), are used to process SIP signalling packets in the IMS. - derived_from: ims.functions.Root - - ims.functions.P-CSCF: - description: >- - A Proxy-CSCF (P-CSCF) is a SIP proxy that is the first point of contact for the IMS terminal. - It can be located either in the visited network (in full IMS networks) or in the home network - (when the visited network is not IMS compliant yet). Some networks may use a Session Border - Controller (SBC) for this function. The P-CSCF is at its core a specialized SBC for the - User–network interface which not only protects the network, but also the IMS terminal. The use - of an additional SBC between the IMS terminal and the P-CSCF is unnecessary and infeasible due - to the signaling being encrypted on this leg. The terminal discovers its P-CSCF with either - DHCP, or it may be configured (e.g. during initial provisioning or via a 3GPP IMS Management - Object (MO)) or in the ISIM or assigned in the PDP Context (in General Packet Radio Service - (GPRS)). - derived_from: ims.functions.CSCF - - ims.functions.I-CSCF: - description: >- - An Interrogating-CSCF (I-CSCF) is another SIP function located at the edge of an - administrative domain. Its IP address is published in the Domain Name System (DNS) of the - domain (using NAPTR and SRV type of DNS records), so that remote servers can find it, and use - it as a forwarding point (e.g., registering) for SIP packets to this domain. - derived_from: ims.functions.CSCF - - ims.functions.S-CSCF: - description: >- - A Serving-CSCF (S-CSCF) is the central node of the signalling plane. It is a SIP server, but - performs session control too. It is always located in the home network. It uses Diameter Cx - and Dx interfaces to the HSS to download user profiles and upload user-to-S-CSCF associations - (the user profile is only cached locally for processing reasons only and is not changed). All - necessary subscriber profile information is loaded from the HSS. - derived_from: ims.functions.CSCF - - ims.functions.AS: - description: >- - SIP Application servers (AS) host and execute services, and interface with the S-CSCF using - SIP. An example of an application server that is being developed in 3GPP is the Voice call - continuity Function (VCC Server). Depending on the actual service, the AS can operate in SIP - proxy mode, SIP UA (user agent) mode or SIP B2BUA mode. An AS can be located in the home - network or in an external third-party network. If located in the home network, it can query - the HSS with the Diameter Sh or Si interfaces (for a SIP-AS). - derived_from: ims.functions.Root - - ims.functions.SIP-AS: - description: >- - Host and execute IMS specific services. - derived_from: ims.functions.AS - - ims.functions.IM-SSF: - description: >- - IP Multimedia Service Switching Function. Interfaces SIP to CAP to communicate with CAMEL - Application Servers. - derived_from: ims.functions.AS - - ims.functions.OSA-SCS: - description: >- - OSA service capability server. Interfaces SIP to the OSA framework. - derived_from: ims.functions.AS - - ims.functions.AS-ILCM: - description: >- - The AS-ILCM (Application Server - Incoming Leg Control Model) stores transaction state, and - may optionally store session state depending on the specific service being executed. The - AS-ILCM interfaces to the S-CSCF (ILCM) for an incoming leg. Application Logic provides the - service(s) and interacts between the AS-ILCM and AS-OLCM. - derived_from: ims.functions.AS - - ims.functions.AS-OLCM: - description: >- - The AS-OLCM (Application Server - Outgoing Leg Control Model) stores transaction state, and - may optionally store session state depending on the specific service being executed. The - AS-OLCM interfaces to the S-CSCF (OLCM) for an outgoing leg. Application Logic provides the - service(s) and interacts between the AS-ILCM and AS-OLCM. - derived_from: ims.functions.AS - - ims.functions.MRF: - description: >- - The Media Resource Function (MRF) provides media related functions such as media manipulation - (e.g. voice stream mixing) and playing of tones and announcements. - - Each MRF is further divided into a media resource function controller (MRFC) and a media - resource function processor (MRFP). - derived_from: ims.functions.Root - - ims.functions.MRFC: - description: >- - The MRFC is a signalling plane node that interprets information coming from an AS and S-CSCF - to control the MRFP. - derived_from: ims.functions.Root - - ims.functions.MRFP: - description: >- - The MRFP is a media plane node used to mix, source or process media streams. It can also - manage access right to shared resources. - derived_from: ims.functions.Root - - ims.functions.MRB: - description: >- - The Media Resource Broker (MRB) is a functional entity that is responsible for both collection - of appropriate published MRF information and supplying of appropriate MRF information to - consuming entities such as the AS. MRB can be used in two modes: - * Query mode: AS queries the MRB for media and sets up the call using the response of MRB - * In-Line Mode: AS sends a SIP INVITE to the MRB. The MRB sets up the call - derived_from: ims.functions.Root - - ims.functions.BGCF: - description: >- - A Breakout Gateway Control Function (BGCF) is a SIP proxy which processes requests for routing - from an S-CSCF when the S-CSCF has determined that the session cannot be routed using DNS or - ENUM/DNS. It includes routing functionality based on telephone numbers. - derived_from: ims.functions.Root - - ims.functions.PTSNGateway: - description: >- - A PSTN/CS gateway interfaces with PSTN circuit switched (CS) networks. For signalling, CS - networks use ISDN User Part (ISUP) (or BICC) over Message Transfer Part (MTP), while IMS uses - SIP over IP. For media, CS networks use Pulse-code modulation (PCM), while IMS uses Real-time - Transport Protocol (RTP). - derived_from: ims.functions.Root - - ims.functions.SGW: - description: >- - A signalling gateway (SGW) interfaces with the signalling plane of the CS. It transforms lower - layer protocols as Stream Control Transmission Protocol (SCTP, an IP protocol) into Message - Transfer Part (MTP, an Signalling System 7 (SS7) protocol), to pass ISDN User Part (ISUP) from - the MGCF to the CS network. - derived_from: ims.functions.PTSNGateway - - ims.functions.MGCF: - description: >- - A media gateway controller function (MGCF) is a SIP endpoint that does call control protocol - conversion between SIP and ISUP/BICC and interfaces with the SGW over SCTP. It also controls - the resources in a Media Gateway (MGW) across an H.248 interface. - derived_from: ims.functions.PTSNGateway - - ims.functions.MGW: - description: >- - A media gateway (MGW) interfaces with the media plane of the CS network, by converting between - RTP and PCM. It can also transcode when the codecs don't match (e.g., IMS might use AMR, PSTN - might use G.711). - derived_from: ims.functions.PTSNGateway - - # https://en.wikipedia.org/wiki/IP_Multimedia_Subsystem#Interfaces_description - - ims.interfaces.Diameter: - derived_from: tosca.capabilities.Endpoint - - ims.interfaces.TCP: - derived_from: tosca.capabilities.Endpoint - - ims.interfaces.SIP: - derived_from: tosca.capabilities.Endpoint - properties: - protocol: # override - type: string - default: sip - - ims.interfaces.RTP: - derived_from: tosca.capabilities.Endpoint - properties: - protocol: # override - type: string - default: rtp - - ims.interfaces.H248: - derived_from: tosca.capabilities.Endpoint - properties: - protocol: # override - type: string - default: h248 - - ims.interfaces.HTTP: - derived_from: tosca.capabilities.Endpoint - properties: - protocol: # override - type: string - default: http - - ims.interfaces.MAP: - derived_from: tosca.capabilities.Endpoint - properties: - protocol: # override - type: string - default: map - - ims.interfaces.Cr: - description: >- - Used by MRFC to fetch documents (e.g. scripts, announcement files, and other resources) from - an AS. Also used for media control related commands. - derived_from: ims.interfaces.TCP - - ims.interfaces.Cx: - description: >- - Used to send subscriber data to the S-CSCF; including filter criteria and their priority. Also - used to furnish CDF and/or OCF addresses. - derived_from: ims.interfaces.Diameter - - ims.interfaces.Dh: - description: >- - Used by AS to find the HSS holding the user profile information in a multi-HSS environment. - DH_SLF_QUERY indicates an IMPU and DX_SLF_RESP return the HSS name. - derived_from: ims.interfaces.Diameter - - ims.interfaces.Dx: - description: >- - Used by I-CSCF or S-CSCF to find a correct HSS in a multi-HSS environment. DX_SLF_QUERY - indicates an IMPU and DX_SLF_RESP return the HSS name. - derived_from: ims.interfaces.Diameter - - ims.interfaces.Gm: - description: >- - Used to exchange messages between SIP user equipment (UE) or Voip gateway and P-CSCF. - derived_from: ims.interfaces.SIP - - ims.interfaces.Go: - description: >- - Allows operators to control QoS in a user plane and exchange charging correlation - information between IMS and GPRS network. - derived_from: ims.interfaces.Diameter - - ims.interfaces.Gq: - description: >- - Used to exchange policy decisions-related information between P-CSCF and PDF. - derived_from: ims.interfaces.Diameter - - ims.interfaces.Gx: - description: >- - Used to exchange policy decisions-related information between PCEF and PCRF. - derived_from: ims.interfaces.Diameter - - ims.interfaces.Gy: - description: >- - Used for online flow-based bearer charging. Functionally equivalent to Ro interface. - derived_from: ims.interfaces.Diameter - - ims.interfaces.ISC: - description: >- - Reference point between S-CSCF and AS. Main functions are to: - * Notify the AS of the registered IMPU, registration state and UE capabilities - * Supply the AS with information to allow it to execute multiple services - * Convey charging function addresses - derived_from: ims.interfaces.SIP - - ims.interfaces.Ici: - description: >- - Used to exchange messages between an IBCF and another IBCF belonging to a different IMS - network. - derived_from: ims.interfaces.SIP - - ims.interfaces.Izi: - description: >- - Used to forward media streams from a TrGW to another TrGW belonging to a different IMS - network. - derived_from: ims.interfaces.RTP - - ims.interfaces.Ma: - description: >- - Main functions are to: - * Forward SIP requests which are destined to a public service identity hosted by the AS - * Originate a session on behalf of a user or public service identity, if the AS has no - knowledge of a S-CSCF assigned to that user or public service identity - * Convey charging function addresses - derived_from: ims.interfaces.SIP - - ims.interfaces.Mg: - description: >- - ISUP signalling to SIP signalling and forwards SIP signalling to I-CSCF. - derived_from: ims.interfaces.SIP - - ims.interfaces.Mi: - description: >- - Used to exchange messages between S-CSCF and BGCF. - derived_from: ims.interfaces.SIP - - ims.interfaces.Mj: - description: >- - Used for the interworking with the PSTN/CS domain, when the BGCF has determined that a - breakout should occur in the same IMS network to send SIP message from BGCF to MGCF. - derived_from: ims.interfaces.SIP - - ims.interfaces.Mk: - description: >- - Used for the interworking with the PSTN/CS domain, when the BGCF has determined that a - breakout should occur in another IMS network to send SIP message from BGCF to the BGCF in the - other network. - derived_from: ims.interfaces.SIP - - ims.interfaces.Mm: - description: >- - Used for exchanging messages between IMS and external IP networks. - derived_from: ims.interfaces.SIP - - ims.interfaces.Mn: - description: >- - Allows control of user-plane resources. - derived_from: ims.interfaces.H248 - - ims.interfaces.Mp: - description: >- - Allows an MRFC to control media stream resources provided by an MRFP. - derived_from: ims.interfaces.H248 - - ims.interfaces.Mr: - description: >- - Used to exchange information between S-CSCF and MRFC. - derived_from: ims.interfaces.SIP - - ims.interfaces.Mr2: - description: >- - Used to exchange session controls between AS and MRFC. - derived_from: ims.interfaces.SIP - - ims.interfaces.Mw: - description: >- - Used to exchange messages between CSCFs. AGCF appears as a P-CSCF to the other CSCFs. - derived_from: ims.interfaces.SIP - - ims.interfaces.Mx: - description: >- - Used for the interworking with another IMS network, when the BGCF has determined that a - breakout should occur in the other IMS network to send SIP message from BGCF to the IBCF in - the other network. - derived_from: ims.interfaces.SIP - - ims.interfaces.P1: - description: >- - Used for call control services by AGCF to control H.248 A-MGW and residential gateways. - derived_from: ims.interfaces.H248 - - ims.interfaces.P2: - description: >- - Reference point between AGCF and CSCF. - derived_from: ims.interfaces.SIP - - ims.interfaces.Rc: - description: >- - Used by the AS to request that media resources be assigned to a call when using MRB in-line - mode or in query mode. - derived_from: ims.interfaces.SIP - - ims.interfaces.Rf: - description: >- - Used to exchange offline charging information with CDF. - derived_from: ims.interfaces.Diameter - - ims.interfaces.Ro: - description: >- - Used to exchange online charging information with OCF. - derived_from: ims.interfaces.Diameter - - ims.interfaces.Rx: - description: >- - Used to exchange policy and charging related information between P-CSCF and PCRF. Replacement - for the Gq reference point. - derived_from: ims.interfaces.Diameter - - ims.interfaces.Sh: - description: >- - Used to exchange User Profile information (e.g., user-related data, group lists, - user-service-related information or user location information or charging function addresses - (used when the AS has not received the third-party REGISTER for a user)) between an AS (SIP - AS or OSA SCS) and HSS. Also allow AS to activate/deactivate filter criteria stored in the HSS - on a per-subscriber basis. - derived_from: ims.interfaces.Diameter - - ims.interfaces.Si: - description: >- - Transports CAMEL subscription information, including triggers for use by CAMEL-based - application services information. - derived_from: ims.interfaces.MAP - - ims.interfaces.Sr: - description: >- - Used by MRFC to fetch documents (scripts and other resources) from an AS. - derived_from: ims.interfaces.HTTP - - ims.interfaces.Ut: - description: >- - Facilitates the management of subscriber information related to services and settings. - derived_from: ims.interfaces.HTTP - - ims.interfaces.Z: - description: >- - Conversion of POTS services to SIP messages. - derived_from: tosca.capabilities.Root - -node_types: - - ims.nodes.IMS: - derived_from: tosca.nodes.Root - capabilities: - p-cscf: ims.functions.P-CSCF - i-cscf: ims.functions.I-CSCF - s-cscf: ims.functions.S-CSCF - hss: ims.functions.HSS - ctf: ims.functions.CTF - xdms: ims.functions.XDMS diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/types/smtp.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/types/smtp.yaml deleted file mode 100644 index 14e0df1..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/clearwater/types/smtp.yaml +++ /dev/null @@ -1,35 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -capability_types: - - smtp.SMTP: - derived_from: tosca.capabilities.Root - properties: - username: - type: string - password: - type: string - -node_types: - - smtp.SMTP: - derived_from: tosca.nodes.SoftwareComponent - properties: - address: - type: string - capabilities: - smtp: - type: smtp.SMTP diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/hello-world/hello-world.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/hello-world/hello-world.yaml deleted file mode 100644 index 86e2ad0..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/hello-world/hello-world.yaml +++ /dev/null @@ -1,38 +0,0 @@ -tosca_definitions_version: tosca_simple_yaml_1_0 - -node_types: - - WebServer: - derived_from: tosca:Root - capabilities: - host: - type: tosca:Container - - WebApp: - derived_from: tosca:WebApplication - properties: - port: - type: integer - -topology_template: - - node_templates: - web_server: - type: WebServer - - web_app: - type: WebApp - properties: - port: 9090 - requirements: - - host: web_server - interfaces: - Standard: - configure: scripts/configure.sh - start: scripts/start.sh - stop: scripts/stop.sh - - outputs: - port: - type: integer - value: { get_property: [ web_app, port ] } diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/hello-world/images/aria-logo.png b/azure/aria/aria-extension-cloudify/src/aria/examples/hello-world/images/aria-logo.png Binary files differdeleted file mode 100644 index 3505844..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/hello-world/images/aria-logo.png +++ /dev/null diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/hello-world/index.html b/azure/aria/aria-extension-cloudify/src/aria/examples/hello-world/index.html deleted file mode 100644 index 8d21c3a..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/hello-world/index.html +++ /dev/null @@ -1,14 +0,0 @@ -<html> - <header> - <title>ARIA Hello World</title> - </header> -<body> - <h1>Hello, World!</h1> - <p> - blueprint_id = {{ ctx.service_template.name }}<br/> - deployment_id = {{ ctx.service.name }}<br/> - node_id = {{ ctx.node.name }} - </p> - <img src="aria-logo.png"> -</body> -</html>
\ No newline at end of file diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/hello-world/scripts/configure.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/hello-world/scripts/configure.sh deleted file mode 100644 index dc7c09f..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/hello-world/scripts/configure.sh +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -set -e - -TEMP_DIR=/tmp -PYTHON_FILE_SERVER_ROOT="$TEMP_DIR/python-simple-http-webserver" -INDEX_PATH=index.html -IMAGE_PATH=images/aria-logo.png - -if [ -d "$PYTHON_FILE_SERVER_ROOT" ]; then - ctx logger info [ "Removing old web server root folder: $PYTHON_FILE_SERVER_ROOT." ] - rm -rf "$PYTHON_FILE_SERVER_ROOT" -fi - -ctx logger info [ "Creating web server root folder: $PYTHON_FILE_SERVER_ROOT." ] - -mkdir -p "$PYTHON_FILE_SERVER_ROOT" -cd "$PYTHON_FILE_SERVER_ROOT" - -ctx logger info [ "Downloading service template resources..." ] -ctx download-resource-and-render [ "$PYTHON_FILE_SERVER_ROOT/index.html" "$INDEX_PATH" ] -ctx download-resource [ "$PYTHON_FILE_SERVER_ROOT/aria-logo.png" "$IMAGE_PATH" ] diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/hello-world/scripts/start.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/hello-world/scripts/start.sh deleted file mode 100644 index 1525f30..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/hello-world/scripts/start.sh +++ /dev/null @@ -1,64 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -set -e - -TEMP_DIR=/tmp -PYTHON_FILE_SERVER_ROOT="$TEMP_DIR/python-simple-http-webserver" -PID_FILE=server.pid -PORT=$(ctx node properties port) -URL="http://localhost:$PORT" - -ctx logger info [ "Starting web server at: $PYTHON_FILE_SERVER_ROOT." ] - -cd "$PYTHON_FILE_SERVER_ROOT" -nohup python -m SimpleHTTPServer "$PORT" > /dev/null 2>&1 & -echo $! > "$PID_FILE" - -server_is_up() { - if which wget >/dev/null; then - if wget "$URL" >/dev/null; then - return 0 - fi - elif which curl >/dev/null; then - if curl "$URL" >/dev/null; then - return 0 - fi - else - ctx logger error [ "Both curl and wget were not found in path." ] - exit 1 - fi - return 1 -} - -ctx logger info [ "Waiting for web server to launch on port $PORT..." ] -STARTED=false -for i in $(seq 1 15) -do - if server_is_up; then - ctx logger info [ "Web server is up." ] - STARTED=true - break - else - ctx logger info [ "Web server not up. waiting 1 second." ] - sleep 1 - fi -done - -if [ "$STARTED" = false ]; then - ctx logger error [ "Web server did not start within 15 seconds." ] - exit 1 -fi diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/hello-world/scripts/stop.sh b/azure/aria/aria-extension-cloudify/src/aria/examples/hello-world/scripts/stop.sh deleted file mode 100644 index be4d68e..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/hello-world/scripts/stop.sh +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/bash -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -set -e - -TEMP_DIR=/tmp -PYTHON_FILE_SERVER_ROOT="${TEMP_DIR}/python-simple-http-webserver" -PID_FILE=server.pid -PID=$(cat "$PYTHON_FILE_SERVER_ROOT/$PID_FILE") - -ctx logger info [ "Shutting down web server, pid = ${PID}." ] -kill -9 "$PID" || exit $? - -ctx logger info [ "Removing web server root folder: $PYTHON_FILE_SERVER_ROOT." ] -rm -rf "$PYTHON_FILE_SERVER_ROOT" diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-1/block-storage-1.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-1/block-storage-1.yaml deleted file mode 100644 index 8b3bab3..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-1/block-storage-1.yaml +++ /dev/null @@ -1,68 +0,0 @@ -tosca_definitions_version: tosca_simple_yaml_1_0 - -description: >- - TOSCA simple profile with server and attached block storage using the normative AttachesTo - Relationship Type. - -metadata: - template_name: block-storage-1 - template_author: TOSCA Simple Profile in YAML - template_version: '1.0' - -topology_template: - - inputs: - cpus: - type: integer - description: Number of CPUs for the server. - constraints: - - valid_values: [ 1, 2, 4, 8 ] - storage_size: - type: scalar-unit.size - description: Size of the storage to be created. - default: 1 GB - storage_snapshot_id: - type: string - description: >- - Optional identifier for an existing snapshot to use when creating storage. - storage_location: - type: string - description: Block storage mount point (filesystem path). - - node_templates: - - my_server: - type: Compute - capabilities: - host: - properties: - disk_size: 10 GB - num_cpus: { get_input: cpus } - mem_size: 1 GB - os: - properties: - architecture: x86_64 - type: linux - distribution: fedora - version: 18.0 - requirements: - - local_storage: - node: my_storage - relationship: - type: AttachesTo - properties: - location: { get_input: storage_location } - - my_storage: - type: BlockStorage - properties: - size: { get_input: storage_size } - snapshot_id: { get_input: storage_snapshot_id } - - outputs: - private_ip: - description: The private IP address of the newly created compute instance. - value: { get_attribute: [ my_server, private_address ] } - volume_id: - description: The volume id of the block storage instance. - value: { get_property: [ my_storage, volume_id ] } # ARIA NOTE: wrong in spec diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-1/inputs.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-1/inputs.yaml deleted file mode 100644 index d0b0854..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-1/inputs.yaml +++ /dev/null @@ -1,3 +0,0 @@ -storage_snapshot_id: "snapshot-id" -storage_location: /mnt -cpus: 4
\ No newline at end of file diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-2/block-storage-2.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-2/block-storage-2.yaml deleted file mode 100644 index 9a2c0b0..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-2/block-storage-2.yaml +++ /dev/null @@ -1,75 +0,0 @@ -tosca_definitions_version: tosca_simple_yaml_1_0 - -description: >- - TOSCA simple profile with server and attached block storage using a custom AttachesTo Relationship - Type. - -metadata: - template_name: block-storage-2 - template_author: TOSCA Simple Profile in YAML - template_version: '1.0' - -relationship_types: - - MyCustomAttachesTo: - derived_from: AttachesTo - -topology_template: - - inputs: - cpus: - type: integer - description: Number of CPUs for the server. - constraints: - - valid_values: [ 1, 2, 4, 8 ] - storage_size: - type: scalar-unit.size - description: Size of the storage to be created. - default: 1 GB - storage_snapshot_id: - type: string - description: >- - Optional identifier for an existing snapshot to use when creating storage. - storage_location: - type: string - description: Block storage mount point (filesystem path). - - node_templates: - - my_server: - type: Compute - capabilities: - host: - properties: - disk_size: 10 GB - num_cpus: { get_input: cpus } - mem_size: 4 GB - os: - properties: - architecture: x86_64 - type: Linux - distribution: Fedora - version: 18.0 - requirements: - - local_storage: - node: my_storage - # Declare custom AttachesTo type using the 'relationship' keyword - relationship: - type: MyCustomAttachesTo - properties: - location: { get_input: storage_location } - - my_storage: - type: BlockStorage - properties: - size: { get_input: storage_size } - snapshot_id: { get_input: storage_snapshot_id } - - outputs: - private_ip: - description: The private IP address of the newly created compute instance. - value: { get_attribute: [ my_server, private_address ] } - - volume_id: - description: The volume id of the block storage instance. - value: { get_property: [ my_storage, volume_id ] } # ARIA NOTE: wrong in spec diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-2/inputs.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-2/inputs.yaml deleted file mode 100644 index d0b0854..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-2/inputs.yaml +++ /dev/null @@ -1,3 +0,0 @@ -storage_snapshot_id: "snapshot-id" -storage_location: /mnt -cpus: 4
\ No newline at end of file diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-3/block-storage-3.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-3/block-storage-3.yaml deleted file mode 100644 index 0b09b34..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-3/block-storage-3.yaml +++ /dev/null @@ -1,68 +0,0 @@ -tosca_definitions_version: tosca_simple_yaml_1_0 - -description: >- - TOSCA simple profile with server and attached block storage using a named Relationship Template - for the storage attachment. - -metadata: - template_name: block-storage-3 - template_author: TOSCA Simple Profile in YAML - template_version: '1.0' - -topology_template: - - inputs: - cpus: - type: integer - description: Number of CPUs for the server. - constraints: - - valid_values: [ 1, 2, 4, 8 ] - storage_size: - type: scalar-unit.size - description: Size of the storage to be created. - default: 1 GB - storage_location: - type: string - description: Block storage mount point (filesystem path). - - node_templates: - - my_server: - type: Compute - capabilities: - host: - properties: - disk_size: 10 GB - num_cpus: { get_input: cpus } - mem_size: 4 GB - os: - properties: - architecture: x86_64 - type: Linux - distribution: Fedora - version: 18.0 - requirements: - - local_storage: - node: my_storage - # Declare template to use with 'relationship' keyword - relationship: storage_attachment - - my_storage: - type: BlockStorage - properties: - size: { get_input: storage_size } - - relationship_templates: - - storage_attachment: - type: AttachesTo - properties: - location: { get_input: storage_location } - - outputs: - private_ip: - description: The private IP address of the newly created compute instance. - value: { get_attribute: [ my_server, private_address ] } - volume_id: - description: The volume id of the block storage instance. - value: { get_property: [ my_storage, volume_id ] } # ARIA NOTE: wrong in spec diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-3/inputs.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-3/inputs.yaml deleted file mode 100644 index daca041..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-3/inputs.yaml +++ /dev/null @@ -1,2 +0,0 @@ -storage_location: /mnt -cpus: 4
\ No newline at end of file diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-4/block-storage-4.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-4/block-storage-4.yaml deleted file mode 100644 index d3c2614..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-4/block-storage-4.yaml +++ /dev/null @@ -1,96 +0,0 @@ -tosca_definitions_version: tosca_simple_yaml_1_0 - -description: >- - TOSCA simple profile with a Single Block Storage node shared by 2-Tier Application with custom - AttachesTo Type and implied relationships. - -metadata: - template_name: block-storage-4 - template_author: TOSCA Simple Profile in YAML - template_version: '1.0' - -relationship_types: - - MyAttachesTo: - derived_from: tosca.relationships.AttachesTo - properties: - location: - type: string - default: /default_location - -topology_template: - - inputs: - cpus: - type: integer - description: Number of CPUs for the server. - constraints: - - valid_values: [ 1, 2, 4, 8 ] - storage_size: - type: scalar-unit.size - default: 1 GB - description: Size of the storage to be created. - storage_snapshot_id: - type: string - description: >- - Optional identifier for an existing snapshot to use when creating storage. - - node_templates: - - my_web_app_tier_1: - type: tosca.nodes.Compute - capabilities: - host: - properties: - disk_size: 10 GB - num_cpus: { get_input: cpus } - mem_size: 4096 MB - os: - properties: - architecture: x86_64 - type: Linux - distribution: Fedora - version: 18.0 - requirements: - - local_storage: - node: my_storage - relationship: MyAttachesTo - - my_web_app_tier_2: - type: tosca.nodes.Compute - capabilities: - host: - properties: - disk_size: 10 GB - num_cpus: { get_input: cpus } - mem_size: 4096 MB - os: - properties: - architecture: x86_64 - type: Linux - distribution: Fedora - version: 18.0 - requirements: - - local_storage: - node: my_storage - relationship: - type: MyAttachesTo - properties: - location: /some_other_data_location - - my_storage: - type: tosca.nodes.BlockStorage - properties: - size: { get_input: storage_size } - snapshot_id: { get_input: storage_snapshot_id } - - outputs: - private_ip_1: - description: The private IP address of the application's first tier. - value: { get_attribute: [ my_web_app_tier_1, private_address ] } - private_ip_2: - description: The private IP address of the application's second tier. - value: { get_attribute: [ my_web_app_tier_2, private_address ] } - volume_id: - description: The volume id of the block storage instance. - value: { get_property: [ my_storage, volume_id ] } # ARIA NOTE: wrong in spec diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-4/inputs.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-4/inputs.yaml deleted file mode 100644 index 18e457d..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-4/inputs.yaml +++ /dev/null @@ -1,2 +0,0 @@ -storage_snapshot_id: "snapshot-id" -cpus: 4
\ No newline at end of file diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-5/block-storage-5.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-5/block-storage-5.yaml deleted file mode 100644 index a0c2229..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-5/block-storage-5.yaml +++ /dev/null @@ -1,109 +0,0 @@ -tosca_definitions_version: tosca_simple_yaml_1_0 - -description: >- - TOSCA simple profile with a single Block Storage node shared by 2-Tier Application with custom - AttachesTo Type and explicit Relationship Templates. - -metadata: - template_name: block-storage-5 - template_author: TOSCA Simple Profile in YAML - template_version: '1.0' - -relationship_types: - - MyAttachesTo: - derived_from: tosca.relationships.AttachesTo - properties: - location: - type: string - default: /default_location - -topology_template: - - inputs: - cpus: - type: integer - description: Number of CPUs for the server. - constraints: - - valid_values: [ 1, 2, 4, 8 ] - storage_size: - type: scalar-unit.size - default: 1 GB - description: Size of the storage to be created. - storage_snapshot_id: - type: string - description: >- - Optional identifier for an existing snapshot to use when creating storage. - storage_location: - type: string - description: >- - Block storage mount point (filesystem path). - - node_templates: - - my_web_app_tier_1: - type: tosca.nodes.Compute - capabilities: - host: - properties: - disk_size: 10 GB - num_cpus: { get_input: cpus } - mem_size: 4096 MB - os: - properties: - architecture: x86_64 - type: Linux - distribution: Fedora - version: 18.0 - requirements: - - local_storage: - node: my_storage - relationship: storage_attachesto_1 - - my_web_app_tier_2: - type: tosca.nodes.Compute - capabilities: - host: - properties: - disk_size: 10 GB - num_cpus: { get_input: cpus } - mem_size: 4096 MB - os: - properties: - architecture: x86_64 - type: Linux - distribution: Fedora - version: 18.0 - requirements: - - local_storage: - node: my_storage - relationship: storage_attachesto_2 - - my_storage: - type: tosca.nodes.BlockStorage - properties: - size: { get_input: storage_size } - snapshot_id: { get_input: storage_snapshot_id } - - relationship_templates: - - storage_attachesto_1: - type: MyAttachesTo - properties: - location: /my_data_location - - storage_attachesto_2: - type: MyAttachesTo - properties: - location: /some_other_data_location - - outputs: - private_ip_1: - description: The private IP address of the application's first tier. - value: { get_attribute: [ my_web_app_tier_1, private_address ] } - private_ip_2: - description: The private IP address of the application's second tier. - value: { get_attribute: [ my_web_app_tier_2, private_address ] } - volume_id: - description: The volume id of the block storage instance. - value: { get_property: [ my_storage, volume_id ] } # ARIA NOTE: wrong in spec diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-5/inputs.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-5/inputs.yaml deleted file mode 100644 index d0b0854..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-5/inputs.yaml +++ /dev/null @@ -1,3 +0,0 @@ -storage_snapshot_id: "snapshot-id" -storage_location: /mnt -cpus: 4
\ No newline at end of file diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-6/block-storage-6.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-6/block-storage-6.yaml deleted file mode 100644 index 534884a..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-6/block-storage-6.yaml +++ /dev/null @@ -1,102 +0,0 @@ -tosca_definitions_version: tosca_simple_yaml_1_0 - -description: >- - TOSCA simple profile with 2 servers each with different attached block storage. - -metadata: - template_name: block-storage-6 - template_author: TOSCA Simple Profile in YAML - template_version: '1.0' - -topology_template: - - inputs: - cpus: - type: integer - description: Number of CPUs for the server. - constraints: - - valid_values: [ 1, 2, 4, 8 ] - storage_size: - type: scalar-unit.size - default: 1 GB - description: Size of the storage to be created. - storage_snapshot_id: - type: string - description: >- - Optional identifier for an existing snapshot to use when creating storage. - storage_location: - type: string - description: >- - Block storage mount point (filesystem path). - - node_templates: - - my_server: - type: tosca.nodes.Compute - capabilities: - host: - properties: - disk_size: 10 GB - num_cpus: { get_input: cpus } - mem_size: 4096 MB - os: - properties: - architecture: x86_64 - type: Linux - distribution: Fedora - version: 18.0 - requirements: - - local_storage: - node: my_storage - relationship: - type: AttachesTo - properties: - location: { get_input: storage_location } - - my_storage: - type: tosca.nodes.BlockStorage - properties: - size: { get_input: storage_size } - snapshot_id: { get_input: storage_snapshot_id } - - my_server2: - type: tosca.nodes.Compute - capabilities: - host: - properties: - disk_size: 10 GB - num_cpus: { get_input: cpus } - mem_size: 4096 MB - os: - properties: - architecture: x86_64 - type: Linux - distribution: Fedora - version: 18.0 - requirements: - - local_storage: - node: my_storage2 - relationship: - type: AttachesTo - properties: - location: { get_input: storage_location } - - my_storage2: - type: tosca.nodes.BlockStorage - properties: - size: { get_input: storage_size } - snapshot_id: { get_input: storage_snapshot_id } - - outputs: - server_ip_1: - description: The private IP address of the application's first server. - value: { get_attribute: [ my_server, private_address ] } - server_ip_2: - description: The private IP address of the application's second server. - value: { get_attribute: [ my_server2, private_address ] } - volume_id_1: - description: The volume id of the first block storage instance. - value: { get_property: [ my_storage, volume_id ] } # ARIA NOTE: wrong in spec - volume_id_2: - description: The volume id of the second block storage instance. - value: { get_property: [ my_storage2, volume_id ] } # ARIA NOTE: wrong in spec diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-6/inputs.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-6/inputs.yaml deleted file mode 100644 index d0b0854..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/block-storage-6/inputs.yaml +++ /dev/null @@ -1,3 +0,0 @@ -storage_snapshot_id: "snapshot-id" -storage_location: /mnt -cpus: 4
\ No newline at end of file diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/compute-1/compute-1.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/compute-1/compute-1.yaml deleted file mode 100644 index 254d2b6..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/compute-1/compute-1.yaml +++ /dev/null @@ -1,42 +0,0 @@ -tosca_definitions_version: tosca_simple_yaml_1_0 - -description: >- - TOSCA simple profile that just defines a single compute instance and selects a (guest) host - Operating System from the Compute node's properties. Note, this example does not include default - values on inputs properties. - -metadata: - template_name: compute-1 - template_author: TOSCA Simple Profile in YAML - template_version: '1.0' - -topology_template: - - inputs: - cpus: - type: integer - description: Number of CPUs for the server. - constraints: - - valid_values: [ 1, 2, 4, 8 ] - - node_templates: - - my_server: - type: Compute - capabilities: - host: - properties: - disk_size: 10 GB - num_cpus: { get_input: cpus } - mem_size: 1 GB - os: - properties: - architecture: x86_64 - type: Linux - distribution: ubuntu - version: 12.04 - - outputs: - private_ip: - description: The private IP address of the deployed server instance. - value: { get_attribute: [ my_server, private_address ] } diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/compute-1/inputs.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/compute-1/inputs.yaml deleted file mode 100644 index c1ee88a..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/compute-1/inputs.yaml +++ /dev/null @@ -1 +0,0 @@ -cpus: 4
\ No newline at end of file diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/container-1/container-1.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/container-1/container-1.yaml deleted file mode 100644 index f6f69fc..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/container-1/container-1.yaml +++ /dev/null @@ -1,68 +0,0 @@ -tosca_definitions_version: tosca_simple_yaml_1_0 - -description: >- - TOSCA simple profile with wordpress, web server and mysql on the same server. - -metadata: - template_name: compute-1 - template_author: TOSCA Simple Profile in YAML - template_version: '1.0' - -imports: - - ../non-normative-types.yaml - -# Repositories to retrieve code artifacts from - -repositories: - - docker_hub: https://registry.hub.docker.com/ - -topology_template: - - inputs: - wp_host_port: - type: integer - description: The host port that maps to port 80 of the WordPress container. - db_root_pwd: - type: string - description: Root password for MySQL. - - node_templates: - - # The MYSQL container based on official MySQL image in Docker hub - - mysql_container: - type: tosca.nodes.Container.Application.Docker - # ARIA NOTE: moved to a requirement in the node type - #capabilities: - # # This is a capability that would mimic the Docker –link feature - # database_link: tosca.capabilities.Docker.Link - artifacts: - my_image: - file: mysql - type: tosca.artifacts.Deployment.Image.Container.Docker - repository: docker_hub - interfaces: - Standard: - create: - implementation: my_image - inputs: - db_root_password: { get_input: db_root_pwd } - - # The WordPress container based on official WordPress image in Docker hub - - wordpress_container: - type: tosca.nodes.Container.Application.Docker - requirements: - - database_link: mysql_container - artifacts: - my_image: - file: wordpress - type: tosca.artifacts.Deployment.Image.Container.Docker - repository: docker_hub - interfaces: - Standard: - create: - implementation: my_image - inputs: - host_port: { get_input: wp_host_port } diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/multi-tier-1/custom_types/collectd.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/multi-tier-1/custom_types/collectd.yaml deleted file mode 100644 index 6d28899..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/multi-tier-1/custom_types/collectd.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# ARIA NOTE: missing in spec - -node_types: - - tosca.nodes.SoftwareComponent.Collectd: - derived_from: tosca.nodes.SoftwareComponent - requirements: - - collectd_endpoint: - capability: tosca.capabilities.Endpoint - relationship: tosca.relationships.ConnectsTo diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/multi-tier-1/custom_types/elasticsearch.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/multi-tier-1/custom_types/elasticsearch.yaml deleted file mode 100644 index 72b210a..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/multi-tier-1/custom_types/elasticsearch.yaml +++ /dev/null @@ -1,8 +0,0 @@ -# ARIA NOTE: missing in spec - -node_types: - - tosca.nodes.SoftwareComponent.Elasticsearch: - derived_from: tosca.nodes.SoftwareComponent - capabilities: - app: tosca.capabilities.Endpoint diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/multi-tier-1/custom_types/kibana.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/multi-tier-1/custom_types/kibana.yaml deleted file mode 100644 index 4ee8700..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/multi-tier-1/custom_types/kibana.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# ARIA NOTE: missing in spec - -node_types: - - tosca.nodes.SoftwareComponent.Kibana: - derived_from: tosca.nodes.SoftwareComponent - requirements: - - search_endpoint: - capability: tosca.capabilities.Endpoint - relationship: tosca.relationships.ConnectsTo - capabilities: - app: tosca.capabilities.Endpoint diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/multi-tier-1/custom_types/logstash.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/multi-tier-1/custom_types/logstash.yaml deleted file mode 100644 index ea74c7e..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/multi-tier-1/custom_types/logstash.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# ARIA NOTE: missing in spec - -node_types: - - tosca.nodes.SoftwareComponent.Logstash: - derived_from: tosca.nodes.SoftwareComponent - requirements: - - search_endpoint: - capability: tosca.capabilities.Endpoint - relationship: tosca.relationships.ConnectsTo - capabilities: - app: tosca.capabilities.Endpoint diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/multi-tier-1/custom_types/rsyslog.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/multi-tier-1/custom_types/rsyslog.yaml deleted file mode 100644 index 3bd7c2b..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/multi-tier-1/custom_types/rsyslog.yaml +++ /dev/null @@ -1,10 +0,0 @@ -# ARIA NOTE: missing in spec - -node_types: - - tosca.nodes.SoftwareComponent.Rsyslog: - derived_from: tosca.nodes.SoftwareComponent - requirements: - - rsyslog_endpoint: - capability: tosca.capabilities.Endpoint - relationship: tosca.relationships.ConnectsTo diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/multi-tier-1/inputs.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/multi-tier-1/inputs.yaml deleted file mode 100644 index 5302bbf..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/multi-tier-1/inputs.yaml +++ /dev/null @@ -1 +0,0 @@ -my_cpus: 8
\ No newline at end of file diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/multi-tier-1/multi-tier-1.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/multi-tier-1/multi-tier-1.yaml deleted file mode 100644 index 50401ec..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/multi-tier-1/multi-tier-1.yaml +++ /dev/null @@ -1,237 +0,0 @@ -tosca_definitions_version: tosca_simple_yaml_1_0 - -description: >- - This TOSCA simple profile deploys nodejs, mongodb, elasticsearch, logstash and kibana each on a - separate server with monitoring enabled for nodejs server where a sample nodejs application is - running. The syslog and collectd are installed on a nodejs server. - -metadata: - template_name: multi-tier-1 - template_author: TOSCA Simple Profile in YAML - template_version: '1.0' - -imports: - - ../webserver-dbms-2/custom_types/paypalpizzastore_nodejs_app.yaml # ARIA NOTE: moved - - custom_types/elasticsearch.yaml - - custom_types/logstash.yaml - - custom_types/kibana.yaml - - custom_types/collectd.yaml - - custom_types/rsyslog.yaml - -dsl_definitions: - - host_capabilities: &host_capabilities - # container properties (flavor) - disk_size: 10 GB - num_cpus: { get_input: my_cpus } - mem_size: 4096 MB - os_capabilities: &os_capabilities - architecture: x86_64 - type: Linux - distribution: Ubuntu - version: 14.04 - -topology_template: - - inputs: - my_cpus: - type: integer - description: Number of CPUs for the server. - constraints: - - valid_values: [ 1, 2, 4, 8 ] - github_url: - type: string - description: The URL to download nodejs. - default: https://github.com/sample.git - - node_templates: - - paypal_pizzastore: - type: tosca.nodes.WebApplication.PayPalPizzaStore - properties: - github_url: { get_input: github_url } - requirements: - - host: nodejs - - database_connection: mongo_db - interfaces: - Standard: - configure: - implementation: scripts/nodejs/configure.sh - inputs: - github_url: { get_property: [ SELF, github_url ] } - mongodb_ip: { get_attribute: [ mongo_server, private_address ] } - start: scripts/nodejs/start.sh - - nodejs: - type: tosca.nodes.WebServer.Nodejs - requirements: - - host: app_server - interfaces: - Standard: - create: scripts/nodejs/create.sh - - mongo_db: - type: tosca.nodes.Database - properties: - name: 'pizzastore' # ARIA NOTE: missing in spec - requirements: - - host: mongo_dbms - interfaces: - Standard: - create: create_database.sh - - mongo_dbms: - type: tosca.nodes.DBMS - requirements: - - host: mongo_server - interfaces: - Standard: # ARIA NOTE: wrong in spec - create: scripts/mongodb/create.sh - configure: - implementation: scripts/mongodb/config.sh - inputs: - mongodb_ip: { get_attribute: [ mongo_server, private_address ] } # ARIA NOTE: wrong in spec - start: scripts/mongodb/start.sh - - elasticsearch: - type: tosca.nodes.SoftwareComponent.Elasticsearch - requirements: - - host: elasticsearch_server - interfaces: - Standard: # ARIA NOTE: wrong in spec - create: scripts/elasticsearch/create.sh - start: scripts/elasticsearch/start.sh - - logstash: - type: tosca.nodes.SoftwareComponent.Logstash - requirements: - - host: logstash_server - # ARIA NOTE: mangled in the spec - - search_endpoint: - node: elasticsearch - relationship: - interfaces: - Configure: - pre_configure_source: - implementation: python/logstash/configure_elasticsearch.py - inputs: - elasticsearch_ip: { get_attribute: [ elasticsearch_server, private_address ] } # ARIA NOTE: wrong in spec - interfaces: - Standard: # ARIA NOTE: wrong in spec - create: scripts/lostash/create.sh - configure: scripts/logstash/config.sh - start: scripts/logstash/start.sh - - kibana: - type: tosca.nodes.SoftwareComponent.Kibana - requirements: - - host: kibana_server - - search_endpoint: elasticsearch - interfaces: - Standard: # ARIA NOTE: wrong in spec - create: scripts/kibana/create.sh - configure: - implementation: scripts/kibana/config.sh - inputs: - elasticsearch_ip: { get_attribute: [ elasticsearch_server, private_address ] } # ARIA NOTE: wrong in spec - kibana_ip: { get_attribute: [ kibana_server, private_address ] } # ARIA NOTE: wrong in spec - start: scripts/kibana/start.sh - - app_collectd: - type: tosca.nodes.SoftwareComponent.Collectd - requirements: - - host: app_server - # ARIA NOTE: mangled in the spec - - collectd_endpoint: - node: logstash - relationship: - interfaces: - Configure: - pre_configure_target: - implementation: python/logstash/configure_collectd.py - interfaces: - Standard: # ARIA NOTE: wrong in spec - create: scripts/collectd/create.sh - configure: - implementation: python/collectd/config.py - inputs: - logstash_ip: { get_attribute: [ logstash_server, private_address ] } # ARIA NOTE: wrong in spec - start: scripts/collectd/start.sh - - app_rsyslog: - type: tosca.nodes.SoftwareComponent.Rsyslog - requirements: - - host: app_server - # ARIA NOTE: mangled in the spec - - rsyslog_endpoint: - node: logstash - relationship: - interfaces: - Configure: - pre_configure_target: - implementation: python/logstash/configure_rsyslog.py - interfaces: - Standard: # ARIA NOTE: wrong in spec - create: scripts/rsyslog/create.sh - configure: - implementation: scripts/rsyslog/config.sh - inputs: - logstash_ip: { get_attribute: [ logstash_server, private_address ] } # ARIA NOTE: wrong in spec - start: scripts/rsyslog/start.sh - - app_server: - type: tosca.nodes.Compute - capabilities: - host: - properties: *host_capabilities - os: - properties: *os_capabilities - - mongo_server: - type: tosca.nodes.Compute - capabilities: - host: - properties: *host_capabilities - os: - properties: *os_capabilities - - elasticsearch_server: - type: tosca.nodes.Compute - capabilities: - host: - properties: *host_capabilities - os: - properties: *os_capabilities - - logstash_server: - type: tosca.nodes.Compute - capabilities: - host: - properties: *host_capabilities - os: - properties: *os_capabilities - - kibana_server: - type: tosca.nodes.Compute - capabilities: - host: - properties: *host_capabilities - os: - properties: *os_capabilities - - outputs: - nodejs_url: - description: URL for the nodejs server. - value: { get_attribute: [ app_server, private_address ] } - mongodb_url: - description: URL for the mongodb server. - value: { get_attribute: [ mongo_server, private_address ] } - elasticsearch_url: - description: URL for the elasticsearch server. - value: { get_attribute: [ elasticsearch_server, private_address ] } - logstash_url: - description: URL for the logstash server. - value: { get_attribute: [ logstash_server, private_address ] } - kibana_url: - description: URL for the kibana server. - value: { get_attribute: [ kibana_server, private_address ] } diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/network-1/inputs.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/network-1/inputs.yaml deleted file mode 100644 index 9687bb0..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/network-1/inputs.yaml +++ /dev/null @@ -1 +0,0 @@ -network_name: "network"
\ No newline at end of file diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/network-1/network-1.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/network-1/network-1.yaml deleted file mode 100644 index c66964f..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/network-1/network-1.yaml +++ /dev/null @@ -1,49 +0,0 @@ -tosca_definitions_version: tosca_simple_yaml_1_0 - -description: >- - TOSCA simple profile with 1 server bound to a new network. - -metadata: - template_name: network-1 - template_author: TOSCA Simple Profile in YAML - template_version: '1.0' - -topology_template: - - inputs: - network_name: - type: string - description: Network name - - node_templates: - - my_server: - type: tosca.nodes.Compute - capabilities: - host: - properties: - disk_size: 10 GB - num_cpus: 1 - mem_size: 4096 MB - os: - properties: - architecture: x86_64 - type: Linux - distribution: CirrOS - version: 0.3.2 - - my_network: - type: tosca.nodes.network.Network - properties: - network_name: { get_input: network_name } - ip_version: 4 - cidr: '192.168.0.0/24' - start_ip: '192.168.0.50' - end_ip: '192.168.0.200' - gateway_ip: '192.168.0.1' - - my_port: - type: tosca.nodes.network.Port - requirements: - - binding: my_server - - link: my_network diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/network-2/inputs.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/network-2/inputs.yaml deleted file mode 100644 index 9687bb0..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/network-2/inputs.yaml +++ /dev/null @@ -1 +0,0 @@ -network_name: "network"
\ No newline at end of file diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/network-2/network-2.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/network-2/network-2.yaml deleted file mode 100644 index 017950d..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/network-2/network-2.yaml +++ /dev/null @@ -1,46 +0,0 @@ -tosca_definitions_version: tosca_simple_yaml_1_0 - -description: >- - TOSCA simple profile with 1 server bound to an existing network. - -metadata: - template_name: network-2 - template_author: TOSCA Simple Profile in YAML - template_version: '1.0' - -topology_template: - - inputs: - network_name: - type: string - description: Network name - - node_templates: - - my_server: - type: tosca.nodes.Compute - capabilities: - host: - properties: - disk_size: 10 GB - num_cpus: 1 - mem_size: 4096 MB - os: - properties: - architecture: x86_64 - type: Linux - distribution: CirrOS - version: 0.3.2 - - my_network: - type: tosca.nodes.network.Network - properties: - network_name: { get_input: network_name } - - my_port: - type: tosca.nodes.network.Port - requirements: - - binding: - node: my_server - - link: - node: my_network diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/network-3/inputs.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/network-3/inputs.yaml deleted file mode 100644 index 9687bb0..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/network-3/inputs.yaml +++ /dev/null @@ -1 +0,0 @@ -network_name: "network"
\ No newline at end of file diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/network-3/network-3.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/network-3/network-3.yaml deleted file mode 100644 index 5fa40b7..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/network-3/network-3.yaml +++ /dev/null @@ -1,81 +0,0 @@ -tosca_definitions_version: tosca_simple_yaml_1_0 - -description: >- - TOSCA simple profile with 2 servers bound to the 1 network. - -metadata: - template_name: network-3 - template_author: TOSCA Simple Profile in YAML - template_version: '1.0' - -topology_template: - - inputs: - network_name: - type: string - description: Network name - network_cidr: - type: string - default: 10.0.0.0/24 - description: CIDR for the network - network_start_ip: - type: string - default: 10.0.0.100 - description: Start IP for the allocation pool - network_end_ip: - type: string - default: 10.0.0.150 - description: End IP for the allocation pool - - node_templates: - - my_server: - type: tosca.nodes.Compute - capabilities: - host: - properties: - disk_size: 10 GB - num_cpus: 1 - mem_size: 4096 MB - os: - properties: - architecture: x86_64 - type: Linux - distribution: CirrOS - version: 0.3.2 - - my_server2: - type: tosca.nodes.Compute - capabilities: - host: - properties: - disk_size: 10 GB - num_cpus: 1 - mem_size: 4096 MB - os: - properties: - architecture: x86_64 - type: Linux - distribution: CirrOS - version: 0.3.2 - - my_network: - type: tosca.nodes.network.Network - properties: - ip_version: 4 - cidr: { get_input: network_cidr } - network_name: { get_input: network_name } - start_ip: { get_input: network_start_ip } - end_ip: { get_input: network_end_ip } - - my_port: - type: tosca.nodes.network.Port - requirements: - - binding: my_server - - link: my_network - - my_port2: - type: tosca.nodes.network.Port - requirements: - - binding: my_server2 - - link: my_network diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/network-4/network-4.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/network-4/network-4.yaml deleted file mode 100644 index 5b51117..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/network-4/network-4.yaml +++ /dev/null @@ -1,70 +0,0 @@ -tosca_definitions_version: tosca_simple_yaml_1_0 - -description: >- - TOSCA simple profile with 1 server bound to 3 networks. - -metadata: - template_name: network-4 - template_author: TOSCA Simple Profile in YAML - template_version: '1.0' - -topology_template: - - node_templates: - - my_server: - type: tosca.nodes.Compute - capabilities: - host: - properties: - disk_size: 10 GB - num_cpus: 1 - mem_size: 4096 MB - os: - properties: - architecture: x86_64 - type: Linux - distribution: CirrOS - version: 0.3.2 - - my_network1: - type: tosca.nodes.network.Network - properties: - cidr: '192.168.1.0/24' - network_name: net1 - - my_network2: - type: tosca.nodes.network.Network - properties: - cidr: '192.168.2.0/24' - network_name: net2 - - my_network3: - type: tosca.nodes.network.Network - properties: - cidr: '192.168.3.0/24' - network_name: net3 - - my_port1: - type: tosca.nodes.network.Port - properties: - order: 0 - requirements: - - binding: my_server - - link: my_network1 - - my_port2: - type: tosca.nodes.network.Port - properties: - order: 1 - requirements: - - binding: my_server - - link: my_network2 - - my_port3: - type: tosca.nodes.network.Port - properties: - order: 2 - requirements: - - binding: my_server - - link: my_network3 diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/non-normative-types.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/non-normative-types.yaml deleted file mode 100644 index da89dcb..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/non-normative-types.yaml +++ /dev/null @@ -1,177 +0,0 @@ - -artifact_types: - - tosca.artifacts.Deployment.Image.Container.Docker: - _extensions: - specification: tosca-simple-1.0 - specification_section: 8.1.1 - derived_from: tosca.artifacts.Deployment.Image - description: Docker Container Image - - tosca.artifacts.Deployment.Image.VM.ISO: - _extensions: - specification: tosca-simple-1.0 - specification_section: 8.1.2 - derived_from: tosca.artifacts.Deployment.Image.VM - description: Virtual Machine (VM) image in ISO disk format - mime_type: application/octet-stream - file_ext: [ iso ] - - tosca.artifacts.Deployment.Image.VM.QCOW2: - _extensions: - specification: tosca-simple-1.0 - specification_section: 8.1.3 - derived_from: tosca.artifacts.Deployment.Image.VM - description: Virtual Machine (VM) image in QCOW v2 standard disk format - mime_type: application/octet-stream - file_ext: [ qcow2 ] - -capability_types: - - tosca.capabilities.Container.Docker: - _extensions: - specification: tosca-simple-1.0 - specification_section: 8.2.1 - derived_from: tosca.capabilities.Container - description: The type indicates capabilities of a Docker runtime environment (client). - properties: - version: - description: >- - The Docker version capability (i.e., the versions supported by the capability). - type: list - required: false - entry_schema: version - publish_all: - description: >- - Indicates that all ports (ranges) listed in the dockerfile using the EXPOSE keyword be - published. - type: boolean - default: false - required: false - publish_ports: - description: >- - List of ports mappings from source (Docker container) to target (host) ports to publish. - type: list - entry_schema: PortSpec - required: false - expose_ports: - description: >- - List of ports mappings from source (Docker container) to expose to other Docker containers - (not accessible outside host). - type: list - entry_schema: PortSpec - required: false - volumes: - description: >- - The dockerfile VOLUME command which is used to enable access from the Docker container to - a directory on the host machine. - type: list - entry_schema: string - required: false - # ARIA NOTE: these are missing in the spec - host_id: - description: >- - The optional identifier of an existing host resource that should be used to run this - container on. - type: string - required: false - volume_id: - description: >- - The optional identifier of an existing storage volume (resource) that should be used to - create the container's mount point(s) on. - type: string - required: false - - # ARIA NOTE: missing in spec - tosca.capabilities.Docker.Link: - derived_from: tosca.capabilities.Root - description: This is a capability that would mimic the Docker –link feature - -node_types: - - tosca.nodes.Database.MySQL: - _extensions: - specification: tosca-simple-1.0 - specification_section: 8.3.1 - derived_from: tosca.nodes.Database - requirements: - - host: - capability: tosca.capabilities.Container # ARIA NOTE: missing in spec - node: tosca.nodes.DBMS.MySQL - - tosca.nodes.DBMS.MySQL: - _extensions: - specification: tosca-simple-1.0 - specification_section: 8.3.2 - derived_from: tosca.nodes.DBMS - properties: - port: - description: reflect the default MySQL server port - type: integer # AIRA NOTE: missing in spec - default: 3306 - root_password: - # MySQL requires a root_password for configuration - # Override parent DBMS definition to make this property required - type: string # AIRA NOTE: missing in spec - required: true - capabilities: - # Further constrain the 'host' capability to only allow MySQL databases - host: - type: tosca.capabilities.Container # ARIA NOTE: missing in spec - valid_source_types: [ tosca.nodes.Database.MySQL ] - - tosca.nodes.WebServer.Apache: - _extensions: - specification: tosca-simple-1.0 - specification_section: 8.3.3 - derived_from: tosca.nodes.WebServer - - tosca.nodes.WebApplication.WordPress: - _extensions: - specification: tosca-simple-1.0 - specification_section: 8.3.4 - derived_from: tosca.nodes.WebApplication - properties: - admin_user: - type: string - required: false # ARIA NOTE: missing in spec - admin_password: - type: string - required: false # ARIA NOTE: missing in spec - db_host: - type: string - required: false # ARIA NOTE: missing in spec - requirements: - - database_endpoint: - capability: tosca.capabilities.Endpoint.Database - node: tosca.nodes.Database - relationship: tosca.relationships.ConnectsTo - - tosca.nodes.WebServer.Nodejs: - _extensions: - specification: tosca-simple-1.0 - specification_section: 8.3.5 - derived_from: tosca.nodes.WebServer - properties: - # Property to supply the desired implementation in the Github repository - github_url: - required: false - type: string - description: location of the application on the github. - default: https://github.com/mmm/testnode.git - interfaces: - Standard: - inputs: - github_url: - type: string - - tosca.nodes.Container.Application.Docker: - _extensions: - specification: tosca-simple-1.0 - specification_section: 8.3.6 - derived_from: tosca.nodes.Container.Application - requirements: - - host: - capability: tosca.capabilities.Container.Docker - - database_link: # ARIA NOTE: missing in spec - capability: tosca.capabilities.Docker.Link diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/object-storage-1/inputs.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/object-storage-1/inputs.yaml deleted file mode 100644 index 57f99a3..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/object-storage-1/inputs.yaml +++ /dev/null @@ -1 +0,0 @@ -objectstore_name: "objectstore"
\ No newline at end of file diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/object-storage-1/object-storage-1.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/object-storage-1/object-storage-1.yaml deleted file mode 100644 index c55a4db..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/object-storage-1/object-storage-1.yaml +++ /dev/null @@ -1,24 +0,0 @@ -tosca_definitions_version: tosca_simple_yaml_1_0 - -description: >- - TOSCA template for creating an object storage service. - -metadata: - template_name: object-storage-1 - template_author: TOSCA Simple Profile in YAML - template_version: '1.0' - -topology_template: - - inputs: - objectstore_name: - type: string - - node_templates: - - obj_store_server: - type: tosca.nodes.ObjectStorage - properties: - name: { get_input: objectstore_name } - size: 4096 MB - maxsize: 20 GB diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/software-component-1/inputs.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/software-component-1/inputs.yaml deleted file mode 100644 index c1ee88a..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/software-component-1/inputs.yaml +++ /dev/null @@ -1 +0,0 @@ -cpus: 4
\ No newline at end of file diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/software-component-1/software-component-1.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/software-component-1/software-component-1.yaml deleted file mode 100644 index fc1cfd7..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/software-component-1/software-component-1.yaml +++ /dev/null @@ -1,54 +0,0 @@ -tosca_definitions_version: tosca_simple_yaml_1_0 - -description: >- - TOSCA Simple Profile with a SoftwareComponent node with a declared Virtual machine (VM) deployment - artifact that automatically deploys to its host Compute node. - -metadata: - template_name: software-component-1 - template_author: TOSCA Simple Profile in YAML - template_version: '1.0' - -imports: - - ../non-normative-types.yaml - -topology_template: - - # ARIA NOTE: missing in spec - inputs: - cpus: - type: integer - description: Number of CPUs for the server. - constraints: - - valid_values: [ 1, 2, 4, 8 ] - - node_templates: - - my_virtual_machine: - type: SoftwareComponent - artifacts: - my_vm_image: - file: images/fedora-18-x86_64.qcow2 - type: tosca.artifacts.Deployment.Image.VM.QCOW2 - requirements: - - host: my_server - # Automatically deploy the VM image referenced on the create operation - interfaces: - Standard: - create: my_vm_image - - # Compute instance with no Operating System guest host - my_server: - type: Compute - capabilities: - # Note: no guest OperatingSystem requirements as these are in the image. - host: - properties: - disk_size: 10 GB - num_cpus: { get_input: cpus } - mem_size: 4 GB - - outputs: - private_ip: - description: The private IP address of the deployed server instance. - value: { get_attribute: [ my_server, private_address ] } diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/webserver-dbms-1/webserver-dbms-1.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/webserver-dbms-1/webserver-dbms-1.yaml deleted file mode 100644 index daa24df..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/webserver-dbms-1/webserver-dbms-1.yaml +++ /dev/null @@ -1,122 +0,0 @@ -tosca_definitions_version: tosca_simple_yaml_1_0 - -description: >- - TOSCA simple profile with WordPress, a web server, a MySQL DBMS hosting the application's database - content on the same server. Does not have input defaults or constraints. - -metadata: - template_name: webserver-dbms-1 - template_author: TOSCA Simple Profile in YAML - template_version: '1.0' - -imports: - - ../non-normative-types.yaml - -topology_template: - - inputs: - cpus: - type: integer - description: Number of CPUs for the server. - db_name: - type: string - description: The name of the database. - db_user: - type: string - description: The username of the DB user. - db_pwd: - type: string - description: The WordPress database admin account password. - db_root_pwd: - type: string - description: Root password for MySQL. - db_port: - type: PortDef - description: Port for the MySQL database - # ARIA NOTE: missing in spec - context_root: - type: string - description: Context root for WordPress. - - node_templates: - - wordpress: - type: tosca.nodes.WebApplication.WordPress - properties: - context_root: { get_input: context_root } - requirements: - - host: webserver - - database_endpoint: mysql_database - interfaces: - Standard: - create: wordpress_install.sh - configure: - implementation: wordpress_configure.sh - inputs: - wp_db_name: { get_property: [ mysql_database, name ] } - wp_db_user: { get_property: [ mysql_database, user ] } - wp_db_password: { get_property: [ mysql_database, password ] } - # In my own template, find requirement/capability, find port property - wp_db_port: { get_property: [ SELF, database_endpoint, port ] } - - mysql_database: - type: Database - properties: - name: { get_input: db_name } - user: { get_input: db_user } - password: { get_input: db_pwd } - port: { get_input: db_port } - capabilities: - database_endpoint: - properties: - port: { get_input: db_port } - requirements: - - host: mysql_dbms - interfaces: - Standard: - configure: mysql_database_configure.sh - - mysql_dbms: - type: DBMS - properties: - root_password: { get_input: db_root_pwd } - port: { get_input: db_port } - requirements: - - host: server - interfaces: - Standard: - # ARIA NOTE: not declared in spec - #inputs: - # db_root_password: { get_property: [ mysql_dbms, root_password ] } - create: mysql_dbms_install.sh - start: mysql_dbms_start.sh - configure: mysql_dbms_configure.sh - - webserver: - type: WebServer - requirements: - - host: server - interfaces: - Standard: - create: webserver_install.sh - start: webserver_start.sh - - server: - type: Compute - capabilities: - host: - properties: - disk_size: 10 GB - num_cpus: { get_input: cpus } - mem_size: 4096 MB - os: - properties: - architecture: x86_64 - type: linux - distribution: fedora - version: 17.0 - - outputs: - website_url: - description: URL for Wordpress wiki. - value: { get_attribute: [ server, public_address ] } diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/webserver-dbms-2/custom_types/paypalpizzastore_nodejs_app.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/webserver-dbms-2/custom_types/paypalpizzastore_nodejs_app.yaml deleted file mode 100644 index 02bb399..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/webserver-dbms-2/custom_types/paypalpizzastore_nodejs_app.yaml +++ /dev/null @@ -1,15 +0,0 @@ -# ARIA NOTE: missing in spec - -node_types: - - tosca.nodes.WebApplication.PayPalPizzaStore: - derived_from: tosca.nodes.WebApplication - properties: - github_url: - type: string - requirements: - - database_connection: - capability: tosca.capabilities.Node - - tosca.nodes.WebServer.Nodejs: - derived_from: tosca.nodes.WebServer diff --git a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/webserver-dbms-2/webserver-dbms-2.yaml b/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/webserver-dbms-2/webserver-dbms-2.yaml deleted file mode 100644 index 91f0b35..0000000 --- a/azure/aria/aria-extension-cloudify/src/aria/examples/tosca-simple-1.0/use-cases/webserver-dbms-2/webserver-dbms-2.yaml +++ /dev/null @@ -1,115 +0,0 @@ -tosca_definitions_version: tosca_simple_yaml_1_0 - -description: >- - TOSCA simple profile with a nodejs web server hosting a PayPal sample application which connects - to a mongodb database. - -metadata: - template_name: webserver-dbms-2 - template_author: TOSCA Simple Profile in YAML - template_version: '1.0' - -imports: - - custom_types/paypalpizzastore_nodejs_app.yaml - -dsl_definitions: - - ubuntu_node: &ubuntu_node - disk_size: 10 GB - num_cpus: { get_input: my_cpus } - mem_size: 4096 MB - os_capabilities: &os_capabilities - architecture: x86_64 - type: Linux - distribution: Ubuntu - version: 14.04 - -topology_template: - - inputs: - my_cpus: - type: integer - description: Number of CPUs for the server. - constraints: - - valid_values: [ 1, 2, 4, 8 ] - default: 1 - github_url: - type: string - description: The URL to download nodejs. - default: https://github.com/sample.git - - node_templates: - - paypal_pizzastore: - type: tosca.nodes.WebApplication.PayPalPizzaStore - properties: - github_url: { get_input: github_url } - requirements: - - host: nodejs - - database_connection: mongo_db - interfaces: - Standard: - configure: - implementation: scripts/nodejs/configure.sh - inputs: - github_url: { get_property: [ SELF, github_url ] } - mongodb_ip: { get_attribute: [ mongo_server, private_address ] } - start: scripts/nodejs/start.sh - - nodejs: - type: tosca.nodes.WebServer.Nodejs - requirements: - - host: app_server - interfaces: - Standard: - create: scripts/nodejs/create.sh - - mongo_db: - type: tosca.nodes.Database - properties: - name: 'pizzastore' # ARIA NOTE: missing in spec - requirements: - - host: mongo_dbms - interfaces: - Standard: - create: create_database.sh - - mongo_dbms: - type: tosca.nodes.DBMS - requirements: - - host: mongo_server - properties: - port: 27017 - interfaces: - Standard: # ARIA NOTE: mistaken in spec - create: mongodb/create.sh - configure: - implementation: mongodb/config.sh - inputs: - mongodb_ip: { get_attribute: [ mongo_server, private_address ] } - start: mongodb/start.sh - - mongo_server: - type: tosca.nodes.Compute - capabilities: - os: - properties: *os_capabilities - host: - properties: *ubuntu_node - - app_server: - type: tosca.nodes.Compute - capabilities: - os: - properties: *os_capabilities - host: - properties: *ubuntu_node - - outputs: - - nodejs_url: - description: URL for the nodejs server, http://<IP>:3000 - value: { get_attribute: [ app_server, private_address ] } - mongodb_url: - description: URL for the mongodb server. - value: { get_attribute: [ mongo_server, private_address ] } diff --git a/azure/aria/aria-extension-cloudify/src/aria/requirements.in b/azure/aria/aria-extension-cloudify/src/aria/requirements.in index a451c38..c97ae3a 100644 --- a/azure/aria/aria-extension-cloudify/src/aria/requirements.in +++ b/azure/aria/aria-extension-cloudify/src/aria/requirements.in @@ -13,7 +13,7 @@ # In order to create the requirements.txt file, execute # pip-compile --output-file requirements.txt requirements.in (pip-tools package is needed). -requests>=2.3.0, <=2.16.0 +requests>=2.3.0, <=2.14.0 networkx>=1.9, <1.10 # version 1.10 dropped support of python 2.6 retrying>=1.3.0, <1.4.0 blinker>1.3, <1.5 diff --git a/azure/docker/Dockerfile b/azure/docker/Dockerfile index e7bb479..cc2647e 100644 --- a/azure/docker/Dockerfile +++ b/azure/docker/Dockerfile @@ -32,9 +32,16 @@ RUN pip install . RUN pip install --force-reinstall pip==9.0.1 WORKDIR /tmp -ADD docker/cloudify_azure_plugin-1.4.2-py27-none-linux_x86_64.wgn /tmp/ + +RUN git clone -b 1.4.2 https://github.com/cloudify-incubator/cloudify-azure-plugin + +RUN sed -i "s/utils.get_resource_config(_ctx=ipc)/{'properties': utils.get_resource_config(_ctx=ipc)}/g" cloudify-azure-plugin/cloudify_azure/resources/network/ipconfiguration.py + +RUN wagon create ./cloudify-azure-plugin + RUN aria plugins install cloudify_azure_plugin-1.4.2-py27-none-linux_x86_64.wgn RUN rm cloudify_azure_plugin-1.4.2-py27-none-linux_x86_64.wgn +#RUN rm -rf cloudify-azure-plugin RUN cd /opt/ && \ diff --git a/azure/docker/cloudify_azure_plugin-1.4.2-py27-none-linux_x86_64.wgn b/azure/docker/cloudify_azure_plugin-1.4.2-py27-none-linux_x86_64.wgn Binary files differdeleted file mode 100644 index aef4269..0000000 --- a/azure/docker/cloudify_azure_plugin-1.4.2-py27-none-linux_x86_64.wgn +++ /dev/null diff --git a/azure/requirements.txt b/azure/requirements.txt index 3f3fa5d..131fdce 100644 --- a/azure/requirements.txt +++ b/azure/requirements.txt @@ -39,8 +39,10 @@ eventlet>=0.20.0 PyYAML>=3.1.0 #azure -requests==2.16.0 +requests==2.14.0 +msrestazure==0.4.27 +msrest==0.4.28 azure-mgmt-resource==2.0.0 -azure-mgmt-compute==4.0.1 +azure-mgmt-compute==4.0.0rc1 azure-mgmt-authorization==0.50.0 azure-common==1.1.14 diff --git a/azure/setup.py b/azure/setup.py index 92167ca..e1167a5 100644 --- a/azure/setup.py +++ b/azure/setup.py @@ -19,5 +19,8 @@ setuptools.setup( version="1.0", packages=setuptools.find_packages(), include_package_data=True, + install_requires=[ + 'msrest~=0.4.28' + ], zip_safe=True ) |