Updating m3db & m3db operator charts 97/110897/5
authorRajamohan Raj <rajamohan.raj@intel.com>
Tue, 4 Aug 2020 00:18:16 +0000 (00:18 +0000)
committerRitu Sood <Ritu.Sood@intel.com>
Fri, 21 Aug 2020 00:12:44 +0000 (00:12 +0000)
In this patch, updated all the charts related to m3db.
Developed scripts for deployment m3db stack through
orchestrator.

Issue-ID: MULTICLOUD-1112
Signed-off-by: Rajamohan Raj <rajamohan.raj@intel.com>
Change-Id: I42677809709fc4d12f16a156e563d6618a8f8437

58 files changed:
kud/tests/_common.sh
kud/tests/cluster1-m3db-installer.sh [new file with mode: 0755]
kud/tests/cluster1-m3db-operator-test.sh [moved from kud/tests/m3db-operator-test.sh with 95% similarity]
kud/tests/cluster2-m3db-installer.sh [new file with mode: 0755]
kud/tests/cluster2-m3db-operator-test.sh [new file with mode: 0755]
kud/tests/prometheus-test.sh
kud/tests/sanity-check-for-v2.sh
kud/tests/vnfs/comp-app/collection/app2/helm/prometheus-operator/add_m3db_remote.yaml
kud/tests/vnfs/comp-app/collection/app2/helm/prometheus-operator/charts/grafana/values.yaml
kud/tests/vnfs/comp-app/collection/app2/helm/prometheus-operator/diff.txt [deleted file]
kud/tests/vnfs/comp-app/collection/app2/helm/prometheus-operator/values.yaml
kud/tests/vnfs/comp-app/collection/app3/helm/m3db/.helmignore [deleted file]
kud/tests/vnfs/comp-app/collection/app3/helm/m3db/templates/NOTES.txt [deleted file]
kud/tests/vnfs/comp-app/collection/app3/helm/m3db/templates/_helpers.tpl [deleted file]
kud/tests/vnfs/comp-app/collection/app3/helm/m3db/templates/configmap.yaml [deleted file]
kud/tests/vnfs/comp-app/collection/app3/helm/m3db/templates/etcd-cluster.yaml [deleted file]
kud/tests/vnfs/comp-app/collection/app3/helm/m3db/values.yaml [deleted file]
kud/tests/vnfs/comp-app/collection/m3db/helm/m3db/Chart.yaml [moved from kud/tests/vnfs/comp-app/collection/app3/helm/m3db/Chart.yaml with 100% similarity]
kud/tests/vnfs/comp-app/collection/m3db/helm/m3db/del.yaml [new file with mode: 0644]
kud/tests/vnfs/comp-app/collection/m3db/helm/m3db/templates/m3dbcluster.yaml [moved from kud/tests/vnfs/comp-app/collection/app3/helm/m3db/templates/m3dbcluster.yaml with 58% similarity]
kud/tests/vnfs/comp-app/collection/m3db/helm/m3db/values.yaml [new file with mode: 0644]
kud/tests/vnfs/comp-app/collection/m3db/profile/manifest.yaml [moved from kud/tests/vnfs/comp-app/collection/app3/profile/manifest.yaml with 100% similarity]
kud/tests/vnfs/comp-app/collection/m3db/profile/override_values.yaml [moved from kud/tests/vnfs/comp-app/collection/app3/profile/override_values.yaml with 100% similarity]
kud/tests/vnfs/comp-app/collection/operators-latest/helm/operator/Chart.yaml [new file with mode: 0644]
kud/tests/vnfs/comp-app/collection/operators-latest/helm/operator/LICENSE [moved from kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/m3db-operator/LICENSE with 100% similarity]
kud/tests/vnfs/comp-app/collection/operators-latest/helm/operator/NOTES.txt [moved from kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/m3db-operator/NOTES.txt with 100% similarity]
kud/tests/vnfs/comp-app/collection/operators-latest/helm/operator/README.md [moved from kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/m3db-operator/README.md with 100% similarity]
kud/tests/vnfs/comp-app/collection/operators-latest/helm/operator/templates/cluster_role.yaml [moved from kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/m3db-operator/templates/cluster_role.yaml with 95% similarity]
kud/tests/vnfs/comp-app/collection/operators-latest/helm/operator/templates/cluster_role_binding.yaml [moved from kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/m3db-operator/templates/cluster_role_binding.yaml with 100% similarity]
kud/tests/vnfs/comp-app/collection/operators-latest/helm/operator/templates/etcd-cluster/etcd-basic.yaml [new file with mode: 0644]
kud/tests/vnfs/comp-app/collection/operators-latest/helm/operator/templates/service_account.yaml [moved from kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/m3db-operator/templates/service_account.yaml with 100% similarity]
kud/tests/vnfs/comp-app/collection/operators-latest/helm/operator/templates/stateful_set.yaml [moved from kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/m3db-operator/templates/stateful_set.yaml with 87% similarity]
kud/tests/vnfs/comp-app/collection/operators-latest/helm/operator/values.yaml [moved from kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/m3db-operator/values.yaml with 88% similarity]
kud/tests/vnfs/comp-app/collection/operators-latest/profile/manifest.yaml [moved from kud/tests/vnfs/comp-app/collection/operators/profile/manifest.yaml with 100% similarity]
kud/tests/vnfs/comp-app/collection/operators-latest/profile/override_values.yaml [moved from kud/tests/vnfs/comp-app/collection/operators/profile/override_values.yaml with 100% similarity]
kud/tests/vnfs/comp-app/collection/operators/helm/operator/.helmignore [deleted file]
kud/tests/vnfs/comp-app/collection/operators/helm/operator/Chart.yaml [deleted file]
kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/.helmignore [deleted file]
kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/Chart.yaml [deleted file]
kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/OWNERS [deleted file]
kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/README.md [deleted file]
kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/NOTES.txt [deleted file]
kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/_helpers.tpl [deleted file]
kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/backup-etcd-crd.yaml [deleted file]
kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/backup-operator-deployment.yaml [deleted file]
kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/etcd-cluster-crd.yaml [deleted file]
kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/operator-cluster-role.yaml [deleted file]
kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/operator-clusterrole-binding.yaml [deleted file]
kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/operator-deployment.yaml [deleted file]
kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/operator-service-account.yaml [deleted file]
kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/restore-etcd-crd.yaml [deleted file]
kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/restore-operator-deployment.yaml [deleted file]
kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/restore-operator-service.yaml [deleted file]
kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/values.yaml [deleted file]
kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/m3db-operator/Chart.yaml [deleted file]
kud/tests/vnfs/comp-app/collection/operators/helm/operator/requirements.yaml [deleted file]
kud/tests/vnfs/comp-app/collection/operators/helm/operator/resources/m3db.labels [deleted file]
kud/tests/vnfs/comp-app/collection/operators/helm/operator/values.yaml [deleted file]

index 3502370..b56972c 100644 (file)
@@ -1186,17 +1186,14 @@ function populate_CSAR_eaa_sample_app_rbdefinition {
 function populate_CSAR_composite_app_helm {
     _checks_args "$1"
     pushd "${CSAR_DIR}/$1"
-    print_msg "Create Helm Chart Archives for compositeApp"
+    print_msg "Create Helm Chart Archives for compositeAppi with collectd and prometheus-grafana helm charts"
     rm -f *.tar.gz
     tar -czf collectd.tar.gz -C $test_folder/vnfs/comp-app/collection/app1/helm .
     tar -czf prometheus-operator.tar.gz -C $test_folder/vnfs/comp-app/collection/app2/helm .
-    tar -czf m3db.tar.gz -C $test_folder/vnfs/comp-app/collection/app3/helm .
     tar -czf collectd_profile.tar.gz -C $test_folder/vnfs/comp-app/collection/app1/profile .
     tar -czf prometheus-operator_profile.tar.gz -C $test_folder/vnfs/comp-app/collection/app2/profile .
-    tar -czf m3db_profile.tar.gz -C $test_folder/vnfs/comp-app/collection/app3/profile .
     export prometheus_helm_path="${CSAR_DIR}/$1/prometheus-operator.tar.gz"
     export collectd_helm_path="${CSAR_DIR}/$1/collectd.tar.gz"
-    export m3db_helm_path="${CSAR_DIR}/$1/m3db.tar.gz"
     popd
 }
 
@@ -1206,9 +1203,24 @@ function populate_CSAR_operator_helm {
     pushd "${CSAR_DIR}/$1"
     print_msg "Create Helm Chart Archives for operators"
     rm -f *.tar.gz
+    #tar -czf operator.tar.gz -C $test_folder/vnfs/comp-app/collection/operators-latest/helm .
+    #tar -czf operator_profile.tar.gz -C $test_folder/vnfs/comp-app/collection/operators-latest/profile .
     tar -czf operator.tar.gz -C $test_folder/vnfs/comp-app/collection/operators/helm .
     tar -czf operator_profile.tar.gz -C $test_folder/vnfs/comp-app/collection/operators/profile .
     export operator_helm_path="${CSAR_DIR}/$1/operator.tar.gz"
     popd
 }
 
+
+function populate_CSAR_m3db_helm {
+    _checks_args "$1"
+    pushd "${CSAR_DIR}/$1"
+    print_msg "Create Helm Chart Archives for m3db"
+    rm -f *.tar.gz
+   #tar -czf m3db.tar.gz -C $test_folder/vnfs/comp-app/collection/app3-latest/helm .
+   #tar -czf m3db_profile.tar.gz -C $test_folder/vnfs/comp-app/collection/app3-latest/profile .
+    tar -czf m3db.tar.gz -C $test_folder/vnfs/comp-app/collection/m3db/helm .
+    tar -czf m3db_profile.tar.gz -C $test_folder/vnfs/comp-app/collection/m3db/profile .
+    export m3db_helm_path="${CSAR_DIR}/$1/m3db.tar.gz"
+    popd
+}
diff --git a/kud/tests/cluster1-m3db-installer.sh b/kud/tests/cluster1-m3db-installer.sh
new file mode 100755 (executable)
index 0000000..848313f
--- /dev/null
@@ -0,0 +1,382 @@
+# /*
+#  * Copyright 2020 Intel Corporation, Inc
+#  *
+#  * Licensed under the Apache License, Version 2.0 (the "License");
+#  * you may not use this file except in compliance with the License.
+#  * You may obtain a copy of the License at
+#  *
+#  *     http://www.apache.org/licenses/LICENSE-2.0
+#  *
+#  * Unless required by applicable law or agreed to in writing, software
+#  * distributed under the License is distributed on an "AS IS" BASIS,
+#  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#  * See the License for the specific language governing permissions and
+#  * limitations under the License.
+#  */
+
+
+set -o errexit
+set -o nounset
+set -o pipefail
+
+
+source _common_test.sh
+source _functions.sh
+source _common.sh
+
+
+base_url_clm=${base_url_clm:-"http://192.168.121.29:30073/v2"}
+base_url_ncm=${base_url_ncm:-"http://192.168.121.29:31955/v2"}
+base_url_orchestrator=${base_url_orchestrator:-"http://192.168.121.29:32447/v2"}
+base_url_rysnc=${base_url_orchestrator:-"http://192.168.121.29:32002/v2"}
+
+CSAR_DIR="/opt/csar"
+csar_id="m3db-cb009bfe-bbee-11e8-9766-525400435678"
+
+app1_helm_path="$CSAR_DIR/$csar_id/m3db.tar.gz"
+app1_profile_path="$CSAR_DIR/$csar_id/m3db_profile.tar.gz"
+
+# ---------BEGIN: SET CLM DATA---------------
+
+clusterprovidername="collection-m3db-installer-cluster1-provider"
+clusterproviderdata="$(cat<<EOF
+{
+  "metadata": {
+    "name": "$clusterprovidername",
+    "description": "description of $clusterprovidername",
+    "userData1": "$clusterprovidername user data 1",
+    "userData2": "$clusterprovidername user data 2"
+  }
+}
+EOF
+)"
+
+clustername="cluster1"
+clusterdata="$(cat<<EOF
+{
+  "metadata": {
+    "name": "$clustername",
+    "description": "description of $clustername",
+    "userData1": "$clustername user data 1",
+    "userData2": "$clustername user data 2"
+  }
+}
+EOF
+)"
+
+kubeconfigcluster1="/opt/kud/multi-cluster/cluster1/artifacts/admin.conf"
+
+labelname="LabelCluster2"
+labeldata="$(cat<<EOF
+{"label-name": "$labelname"}
+EOF
+)"
+
+#--TODO--Creating provider network and network intents----
+
+# add the rsync controller entry
+rsynccontrollername="rsync"
+rsynccontrollerdata="$(cat<<EOF
+{
+  "metadata": {
+    "name": "rsync",
+    "description": "description of $rsynccontrollername controller",
+    "userData1": "user data 1 for $rsynccontrollername",
+    "userData2": "user data 2 for $rsynccontrollername"
+  },
+  "spec": {
+    "host": "${rsynccontrollername}",
+    "port": 9041
+  }
+}
+EOF
+)"
+
+# ------------END: SET CLM DATA--------------
+
+#-------------BEGIN:SET ORCH DATA------------------
+
+# define a project
+projectname="M3dbInstaller-cluster1Old-Project"
+projectdata="$(cat<<EOF
+{
+  "metadata": {
+    "name": "$projectname",
+    "description": "description of $projectname controller",
+    "userData1": "$projectname user data 1",
+    "userData2": "$projectname user data 2"
+  }
+}
+EOF
+)"
+
+# define a composite application
+m3db_compositeapp_name="OperatorsCompositeApp"
+compositeapp_version="v1"
+compositeapp_data="$(cat <<EOF
+{
+  "metadata": {
+    "name": "${m3db_compositeapp_name}",
+    "description": "description of ${m3db_compositeapp_name}",
+    "userData1": "user data 1 for ${m3db_compositeapp_name}",
+    "userData2": "user data 2 for ${m3db_compositeapp_name}"
+   },
+   "spec":{
+      "version":"${compositeapp_version}"
+   }
+}
+EOF
+)"
+
+
+# add m3db app into compositeApp
+
+m3db_app_name="m3db"
+m3db_helm_chart=${app1_helm_path}
+
+m3db_app_data="$(cat <<EOF
+{
+  "metadata": {
+    "name": "${m3db_app_name}",
+    "description": "description for app ${m3db_app_name}",
+    "userData1": "user data 2 for ${m3db_app_name}",
+    "userData2": "user data 2 for ${m3db_app_name}"
+   }
+}
+EOF
+)"
+
+# Add the composite profile
+m3db_composite_profile_name="m3db_composite-profile"
+m3db_composite_profile_data="$(cat <<EOF
+{
+   "metadata":{
+      "name":"${m3db_composite_profile_name}",
+      "description":"description of ${m3db_composite_profile_name}",
+      "userData1":"user data 1 for ${m3db_composite_profile_name}",
+      "userData2":"user data 2 for ${m3db_composite_profile_name}"
+   }
+}
+EOF
+)"
+
+
+# Add the m3db profile data into composite profile data
+m3db_profile_name="m3db-profile"
+m3db_profile_file=$app1_profile_path
+m3db_profile_data="$(cat <<EOF
+{
+   "metadata":{
+      "name":"${m3db_profile_name}",
+      "description":"description of ${m3db_profile_name}",
+      "userData1":"user data 1 for ${m3db_profile_name}",
+      "userData2":"user data 2 for ${m3db_profile_name}"
+   },
+   "spec":{
+      "app-name":  "${m3db_app_name}"
+   }
+}
+EOF
+)"
+
+
+# define the generic placement intent
+generic_placement_intent_name="M3db-generic-placement-intent"
+generic_placement_intent_data="$(cat <<EOF
+{
+   "metadata":{
+      "name":"${generic_placement_intent_name}",
+      "description":"${generic_placement_intent_name}",
+      "userData1":"${generic_placement_intent_name}",
+      "userData2":"${generic_placement_intent_name}"
+   },
+   "spec":{
+      "logical-cloud":"unused_logical_cloud"
+   }
+}
+EOF
+)"
+
+
+# define placement intent for m3db as sub-app
+m3db_placement_intent_name="m3db-placement-intent"
+m3db_placement_intent_data="$(cat <<EOF
+{
+   "metadata":{
+      "name":"${m3db_placement_intent_name}",
+      "description":"description of ${m3db_placement_intent_name}",
+      "userData1":"user data 1 for ${m3db_placement_intent_name}",
+      "userData2":"user data 2 for ${m3db_placement_intent_name}"
+   },
+   "spec":{
+      "app-name":"${m3db_app_name}",
+      "intent":{
+         "allOf":[
+            {  "provider-name":"${clusterprovidername}",
+               "cluster-label-name":"${labelname}"
+            }
+         ]
+      }
+   }
+}
+EOF
+)"
+
+
+# define a deployment intent group
+release="m3db"
+deployment_intent_group_name="m3db_deployment_intent_group"
+deployment_intent_group_data="$(cat <<EOF
+{
+   "metadata":{
+      "name":"${deployment_intent_group_name}",
+      "description":"descriptiont of ${deployment_intent_group_name}",
+      "userData1":"user data 1 for ${deployment_intent_group_name}",
+      "userData2":"user data 2 for ${deployment_intent_group_name}"
+   },
+   "spec":{
+      "profile":"${m3db_composite_profile_name}",
+      "version":"${release}",
+      "override-values":[]
+   }
+}
+EOF
+)"
+
+# define the intents to be used by the group
+deployment_intents_in_group_name="m3db_deploy_intents"
+deployment_intents_in_group_data="$(cat <<EOF
+{
+   "metadata":{
+      "name":"${deployment_intents_in_group_name}",
+      "description":"descriptionf of ${deployment_intents_in_group_name}",
+      "userData1":"user data 1 for ${deployment_intents_in_group_name}",
+      "userData2":"user data 2 for ${deployment_intents_in_group_name}"
+   },
+   "spec":{
+      "intent":{
+         "genericPlacementIntent":"${generic_placement_intent_name}"
+      }
+   }
+}
+EOF
+)"
+
+#---------END: SET ORCH DATA--------------------
+
+function createOrchestratorData {
+    print_msg "creating controller entries"
+    call_api -d "${rsynccontrollerdata}" "${base_url_orchestrator}/controllers"
+
+
+    print_msg "creating project entry"
+    call_api -d "${projectdata}" "${base_url_orchestrator}/projects"
+
+
+    print_msg "creating m3db composite app entry"
+    call_api -d "${compositeapp_data}" "${base_url_orchestrator}/projects/${projectname}/composite-apps"
+
+    print_msg "adding m3db sub-app to the composite app"
+    call_api -F "metadata=${m3db_app_data}" \
+             -F "file=@${m3db_helm_chart}" \
+             "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/apps"
+
+
+    print_msg "creating m3db composite profile entry"
+    call_api -d "${m3db_composite_profile_data}" "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/composite-profiles"
+
+    print_msg "adding m3db sub-app profile to the composite profile"
+    call_api -F "metadata=${m3db_profile_data}" \
+             -F "file=@${m3db_profile_file}" \
+             "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/composite-profiles/${m3db_composite_profile_name}/profiles"
+
+
+
+    print_msg "create the generic placement intent"
+    call_api -d "${generic_placement_intent_data}" \
+             "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/generic-placement-intents"
+    print_msg "add the m3db app placement intent to the generic placement intent"
+    call_api -d "${m3db_placement_intent_data}" \
+             "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/generic-placement-intents/${generic_placement_intent_name}/app-intents"
+
+    print_msg "create the deployment intent group"
+    call_api -d "${deployment_intent_group_data}" \
+             "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/deployment-intent-groups"
+    call_api -d "${deployment_intents_in_group_data}" \
+             "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/deployment-intent-groups/${deployment_intent_group_name}/intents"
+    print_msg "finished orch data creation"
+}
+
+function deleteOrchestratorData {
+
+    # TODO- delete rsync controller and any other controller
+    delete_resource "${base_url_orchestrator}/controllers/${rsynccontrollername}"
+
+    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/deployment-intent-groups/${deployment_intent_group_name}/intents/${deployment_intents_in_group_name}"
+    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/deployment-intent-groups/${deployment_intent_group_name}"
+    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/generic-placement-intents/${generic_placement_intent_name}/app-intents/${m3db_placement_intent_name}"
+
+    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/generic-placement-intents/${generic_placement_intent_name}"
+
+
+    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/composite-profiles/${m3db_composite_profile_name}/profiles/${m3db_profile_name}"
+
+
+    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/composite-profiles/${m3db_composite_profile_name}"
+
+
+    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/apps/${m3db_app_name}"
+
+
+    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}"
+
+    delete_resource "${base_url_orchestrator}/projects/${projectname}"
+    print_msg "finished orch data deletion"
+
+}
+
+function createClmData {
+    print_msg "Creating cluster provider and cluster"
+    call_api -d "${clusterproviderdata}" "${base_url_clm}/cluster-providers"
+    call_api -H "Content-Type: multipart/form-data" -F "metadata=$clusterdata" -F "file=@$kubeconfigcluster1" "${base_url_clm}/cluster-providers/${clusterprovidername}/clusters"
+    call_api -d "${labeldata}" "${base_url_clm}/cluster-providers/${clusterprovidername}/clusters/${clustername}/labels"
+
+}
+
+
+function deleteClmData {
+    delete_resource "${base_url_clm}/cluster-providers/${clusterprovidername}/clusters/${clustername}/labels/${labelname}"
+    delete_resource "${base_url_clm}/cluster-providers/${clusterprovidername}/clusters/${clustername}"
+    delete_resource "${base_url_clm}/cluster-providers/${clusterprovidername}"
+}
+
+
+function createData {
+    createClmData
+    createOrchestratorData
+}
+
+function deleteData {
+    deleteClmData
+    deleteOrchestratorData
+}
+
+function instantiate {
+    call_api -d "{ }" "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/deployment-intent-groups/${deployment_intent_group_name}/instantiate"
+}
+
+function terminateOrchData {
+    call_api -d "{ }" "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/deployment-intent-groups/${deployment_intent_group_name}/terminate"
+}
+
+
+# Setup
+install_deps
+populate_CSAR_m3db_helm "$csar_id"
+
+#terminateOrchData
+deleteData
+createData
+instantiate
+
+
similarity index 95%
rename from kud/tests/m3db-operator-test.sh
rename to kud/tests/cluster1-m3db-operator-test.sh
index d5ea90d..5dd95c6 100755 (executable)
@@ -29,10 +29,11 @@ source _common.sh
 # base_url_clm=${base_url_clm:-"http://localhost:9019/v2"}
 # base_url_ncm=${base_url_ncm:-"http://localhost:9016/v2"}
 
-base_url_orchestrator=${base_url_orchestrator:-"http://192.168.121.29:30356/v2"}
-base_url_clm=${base_url_clm:-"http://192.168.121.29:32551/v2"}
-base_url_ncm=${base_url_ncm:-"http://192.168.121.29:31406/v2"}
-base_url_rysnc=${base_url_rysnc:-"http://192.168.121.29:31751/v2"}
+base_url_clm=${base_url_clm:-"http://192.168.121.29:30073/v2"}
+base_url_ncm=${base_url_ncm:-"http://192.168.121.29:31955/v2"}
+base_url_orchestrator=${base_url_orchestrator:-"http://192.168.121.29:32447/v2"}
+base_url_rysnc=${base_url_orchestrator:-"http://192.168.121.29:32002/v2"}
+
 
 CSAR_DIR="/opt/csar"
 csar_id="operators-cb009bfe-bbee-11e8-9766-525400435678"
@@ -43,11 +44,9 @@ app1_profile_path="$CSAR_DIR/$csar_id/operator_profile.tar.gz"
 
 
 
-
-
 # ---------BEGIN: SET CLM DATA---------------
 
-clusterprovidername="collection-operator-cluster-provider"
+clusterprovidername="collection-cluster1-provider"
 clusterproviderdata="$(cat<<EOF
 {
   "metadata": {
@@ -107,7 +106,7 @@ EOF
 #-------------BEGIN:SET ORCH DATA------------------
 
 # define a project
-projectname="OperatorsProject"
+projectname="OperatorsProjectCluster1"
 projectdata="$(cat<<EOF
 {
   "metadata": {
@@ -370,10 +369,17 @@ function instantiate {
     call_api -d "{ }" "${base_url_orchestrator}/projects/${projectname}/composite-apps/${operators_compositeapp_name}/${compositeapp_version}/deployment-intent-groups/${deployment_intent_group_name}/instantiate"
 }
 
+
+function terminateOrchData {
+    call_api -d "{ }" "${base_url_orchestrator}/projects/${projectname}/composite-apps/${operators_compositeapp_name}/${compositeapp_version}/deployment-intent-groups/${deployment_intent_group_name}/terminate"
+    }
+
 # Setup
 install_deps
 populate_CSAR_operator_helm "$csar_id"
 
+
+#terminateOrchData
 deleteData
 createData
 instantiate
diff --git a/kud/tests/cluster2-m3db-installer.sh b/kud/tests/cluster2-m3db-installer.sh
new file mode 100755 (executable)
index 0000000..b9b9b3e
--- /dev/null
@@ -0,0 +1,387 @@
+# /*
+#  * Copyright 2020 Intel Corporation, Inc
+#  *
+#  * Licensed under the Apache License, Version 2.0 (the "License");
+#  * you may not use this file except in compliance with the License.
+#  * You may obtain a copy of the License at
+#  *
+#  *     http://www.apache.org/licenses/LICENSE-2.0
+#  *
+#  * Unless required by applicable law or agreed to in writing, software
+#  * distributed under the License is distributed on an "AS IS" BASIS,
+#  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#  * See the License for the specific language governing permissions and
+#  * limitations under the License.
+#  */
+
+
+set -o errexit
+set -o nounset
+set -o pipefail
+
+
+source _common_test.sh
+source _functions.sh
+source _common.sh
+
+
+base_url_clm=${base_url_clm:-"http://192.168.121.29:30073/v2"}
+base_url_ncm=${base_url_ncm:-"http://192.168.121.29:31955/v2"}
+base_url_orchestrator=${base_url_orchestrator:-"http://192.168.121.29:32447/v2"}
+base_url_rysnc=${base_url_orchestrator:-"http://192.168.121.29:32002/v2"}
+
+CSAR_DIR="/opt/csar"
+csar_id="m3db-cb009bfe-bbee-11e8-9766-525400435678"
+
+app1_helm_path="$CSAR_DIR/$csar_id/m3db.tar.gz"
+app1_profile_path="$CSAR_DIR/$csar_id/m3db_profile.tar.gz"
+
+# ---------BEGIN: SET CLM DATA---------------
+
+clusterprovidername="collection-m3db-installer-cluster2-provider"
+clusterproviderdata="$(cat<<EOF
+{
+  "metadata": {
+    "name": "$clusterprovidername",
+    "description": "description of $clusterprovidername",
+    "userData1": "$clusterprovidername user data 1",
+    "userData2": "$clusterprovidername user data 2"
+  }
+}
+EOF
+)"
+
+clustername="cluster2"
+clusterdata="$(cat<<EOF
+{
+  "metadata": {
+    "name": "$clustername",
+    "description": "description of $clustername",
+    "userData1": "$clustername user data 1",
+    "userData2": "$clustername user data 2"
+  }
+}
+EOF
+)"
+
+kubeconfigcluster2="/opt/kud/multi-cluster/cluster2/artifacts/admin.conf"
+
+labelname="LabelCluster2"
+labeldata="$(cat<<EOF
+{"label-name": "$labelname"}
+EOF
+)"
+
+#--TODO--Creating provider network and network intents----
+
+# add the rsync controller entry
+rsynccontrollername="rsync"
+rsynccontrollerdata="$(cat<<EOF
+{
+  "metadata": {
+    "name": "rsync",
+    "description": "description of $rsynccontrollername controller",
+    "userData1": "user data 1 for $rsynccontrollername",
+    "userData2": "user data 2 for $rsynccontrollername"
+  },
+  "spec": {
+    "host": "${rsynccontrollername}",
+    "port": 9041
+  }
+}
+EOF
+)"
+
+# ------------END: SET CLM DATA--------------
+
+#-------------BEGIN:SET ORCH DATA------------------
+
+# define a project
+projectname="M3dbInstaller-cluster1-Project"
+projectdata="$(cat<<EOF
+{
+  "metadata": {
+    "name": "$projectname",
+    "description": "description of $projectname controller",
+    "userData1": "$projectname user data 1",
+    "userData2": "$projectname user data 2"
+  }
+}
+EOF
+)"
+
+# define a composite application
+m3db_compositeapp_name="OperatorsCompositeApp"
+compositeapp_version="v1"
+compositeapp_data="$(cat <<EOF
+{
+  "metadata": {
+    "name": "${m3db_compositeapp_name}",
+    "description": "description of ${m3db_compositeapp_name}",
+    "userData1": "user data 1 for ${m3db_compositeapp_name}",
+    "userData2": "user data 2 for ${m3db_compositeapp_name}"
+   },
+   "spec":{
+      "version":"${compositeapp_version}"
+   }
+}
+EOF
+)"
+
+
+# add m3db app into compositeApp
+
+m3db_app_name="m3db"
+m3db_helm_chart=${app1_helm_path}
+
+m3db_app_data="$(cat <<EOF
+{
+  "metadata": {
+    "name": "${m3db_app_name}",
+    "description": "description for app ${m3db_app_name}",
+    "userData1": "user data 2 for ${m3db_app_name}",
+    "userData2": "user data 2 for ${m3db_app_name}"
+   }
+}
+EOF
+)"
+
+# Add the composite profile
+m3db_composite_profile_name="m3db_composite-profile"
+m3db_composite_profile_data="$(cat <<EOF
+{
+   "metadata":{
+      "name":"${m3db_composite_profile_name}",
+      "description":"description of ${m3db_composite_profile_name}",
+      "userData1":"user data 1 for ${m3db_composite_profile_name}",
+      "userData2":"user data 2 for ${m3db_composite_profile_name}"
+   }
+}
+EOF
+)"
+
+
+# Add the m3db profile data into composite profile data
+m3db_profile_name="m3db-profile"
+m3db_profile_file=$app1_profile_path
+m3db_profile_data="$(cat <<EOF
+{
+   "metadata":{
+      "name":"${m3db_profile_name}",
+      "description":"description of ${m3db_profile_name}",
+      "userData1":"user data 1 for ${m3db_profile_name}",
+      "userData2":"user data 2 for ${m3db_profile_name}"
+   },
+   "spec":{
+      "app-name":  "${m3db_app_name}"
+   }
+}
+EOF
+)"
+
+
+# define the generic placement intent
+generic_placement_intent_name="M3db-generic-placement-intent"
+generic_placement_intent_data="$(cat <<EOF
+{
+   "metadata":{
+      "name":"${generic_placement_intent_name}",
+      "description":"${generic_placement_intent_name}",
+      "userData1":"${generic_placement_intent_name}",
+      "userData2":"${generic_placement_intent_name}"
+   },
+   "spec":{
+      "logical-cloud":"unused_logical_cloud"
+   }
+}
+EOF
+)"
+
+
+# define placement intent for m3db as sub-app
+m3db_placement_intent_name="m3db-placement-intent"
+m3db_placement_intent_data="$(cat <<EOF
+{
+   "metadata":{
+      "name":"${m3db_placement_intent_name}",
+      "description":"description of ${m3db_placement_intent_name}",
+      "userData1":"user data 1 for ${m3db_placement_intent_name}",
+      "userData2":"user data 2 for ${m3db_placement_intent_name}"
+   },
+   "spec":{
+      "app-name":"${m3db_app_name}",
+      "intent":{
+         "allOf":[
+            {  "provider-name":"${clusterprovidername}",
+               "cluster-label-name":"${labelname}"
+            }
+         ]
+      }
+   }
+}
+EOF
+)"
+
+
+# define a deployment intent group
+release="m3db"
+deployment_intent_group_name="m3db_deployment_intent_group"
+deployment_intent_group_data="$(cat <<EOF
+{
+   "metadata":{
+      "name":"${deployment_intent_group_name}",
+      "description":"descriptiont of ${deployment_intent_group_name}",
+      "userData1":"user data 1 for ${deployment_intent_group_name}",
+      "userData2":"user data 2 for ${deployment_intent_group_name}"
+   },
+   "spec":{
+      "profile":"${m3db_composite_profile_name}",
+      "version":"${release}",
+      "override-values":[]
+   }
+}
+EOF
+)"
+
+# define the intents to be used by the group
+deployment_intents_in_group_name="m3db_deploy_intents"
+deployment_intents_in_group_data="$(cat <<EOF
+{
+   "metadata":{
+      "name":"${deployment_intents_in_group_name}",
+      "description":"descriptionf of ${deployment_intents_in_group_name}",
+      "userData1":"user data 1 for ${deployment_intents_in_group_name}",
+      "userData2":"user data 2 for ${deployment_intents_in_group_name}"
+   },
+   "spec":{
+      "intent":{
+         "genericPlacementIntent":"${generic_placement_intent_name}"
+      }
+   }
+}
+EOF
+)"
+
+#---------END: SET ORCH DATA--------------------
+
+function createOrchestratorData {
+    print_msg "creating controller entries"
+    call_api -d "${rsynccontrollerdata}" "${base_url_orchestrator}/controllers"
+
+
+    print_msg "creating project entry"
+    call_api -d "${projectdata}" "${base_url_orchestrator}/projects"
+
+
+    print_msg "creating m3db composite app entry"
+    call_api -d "${compositeapp_data}" "${base_url_orchestrator}/projects/${projectname}/composite-apps"
+
+    print_msg "adding m3db sub-app to the composite app"
+    call_api -F "metadata=${m3db_app_data}" \
+             -F "file=@${m3db_helm_chart}" \
+             "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/apps"
+
+
+    print_msg "creating m3db composite profile entry"
+    call_api -d "${m3db_composite_profile_data}" "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/composite-profiles"
+
+    print_msg "adding m3db sub-app profile to the composite profile"
+    call_api -F "metadata=${m3db_profile_data}" \
+             -F "file=@${m3db_profile_file}" \
+             "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/composite-profiles/${m3db_composite_profile_name}/profiles"
+
+
+
+    print_msg "create the generic placement intent"
+    call_api -d "${generic_placement_intent_data}" \
+             "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/generic-placement-intents"
+    print_msg "add the m3db app placement intent to the generic placement intent"
+    call_api -d "${m3db_placement_intent_data}" \
+             "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/generic-placement-intents/${generic_placement_intent_name}/app-intents"
+
+    print_msg "create the deployment intent group"
+    call_api -d "${deployment_intent_group_data}" \
+             "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/deployment-intent-groups"
+    call_api -d "${deployment_intents_in_group_data}" \
+             "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/deployment-intent-groups/${deployment_intent_group_name}/intents"
+    print_msg "finished orch data creation"
+}
+
+function deleteOrchestratorData {
+
+    # TODO- delete rsync controller and any other controller
+    delete_resource "${base_url_orchestrator}/controllers/${rsynccontrollername}"
+
+    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/deployment-intent-groups/${deployment_intent_group_name}/intents/${deployment_intents_in_group_name}"
+    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/deployment-intent-groups/${deployment_intent_group_name}"
+    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/generic-placement-intents/${generic_placement_intent_name}/app-intents/${m3db_placement_intent_name}"
+
+    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/generic-placement-intents/${generic_placement_intent_name}"
+
+
+    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/composite-profiles/${m3db_composite_profile_name}/profiles/${m3db_profile_name}"
+
+
+    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/composite-profiles/${m3db_composite_profile_name}"
+
+
+    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/apps/${m3db_app_name}"
+
+
+    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}"
+
+    delete_resource "${base_url_orchestrator}/projects/${projectname}"
+    print_msg "finished orch data deletion"
+
+}
+
+function createClmData {
+    print_msg "Creating cluster provider and cluster"
+    call_api -d "${clusterproviderdata}" "${base_url_clm}/cluster-providers"
+    call_api -H "Content-Type: multipart/form-data" -F "metadata=$clusterdata" -F "file=@$kubeconfigcluster2" "${base_url_clm}/cluster-providers/${clusterprovidername}/clusters"
+    call_api -d "${labeldata}" "${base_url_clm}/cluster-providers/${clusterprovidername}/clusters/${clustername}/labels"
+
+}
+
+
+function deleteClmData {
+    delete_resource "${base_url_clm}/cluster-providers/${clusterprovidername}/clusters/${clustername}/labels/${labelname}"
+    delete_resource "${base_url_clm}/cluster-providers/${clusterprovidername}/clusters/${clustername}"
+    delete_resource "${base_url_clm}/cluster-providers/${clusterprovidername}"
+}
+
+
+function createData {
+    createClmData
+    createOrchestratorData
+}
+
+function deleteData {
+    deleteClmData
+    deleteOrchestratorData
+}
+
+function instantiate {
+    call_api -d "{ }" "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/deployment-intent-groups/${deployment_intent_group_name}/instantiate"
+}
+
+function terminateOrchData {
+    call_api -d "{ }" "${base_url_orchestrator}/projects/${projectname}/composite-apps/${m3db_compositeapp_name}/${compositeapp_version}/deployment-intent-groups/${deployment_intent_group_name}/terminate"
+}
+
+
+# Setup
+install_deps
+populate_CSAR_m3db_helm "$csar_id"
+
+#terminateOrchData
+deleteData
+createData
+instantiate
+
+
+
+
+
+
+
diff --git a/kud/tests/cluster2-m3db-operator-test.sh b/kud/tests/cluster2-m3db-operator-test.sh
new file mode 100755 (executable)
index 0000000..54ca434
--- /dev/null
@@ -0,0 +1,386 @@
+# /*
+#  * Copyright 2020 Intel Corporation, Inc
+#  *
+#  * Licensed under the Apache License, Version 2.0 (the "License");
+#  * you may not use this file except in compliance with the License.
+#  * You may obtain a copy of the License at
+#  *
+#  *     http://www.apache.org/licenses/LICENSE-2.0
+#  *
+#  * Unless required by applicable law or agreed to in writing, software
+#  * distributed under the License is distributed on an "AS IS" BASIS,
+#  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#  * See the License for the specific language governing permissions and
+#  * limitations under the License.
+#  */
+
+
+
+set -o errexit
+set -o nounset
+set -o pipefail
+
+
+source _common_test.sh
+source _functions.sh
+source _common.sh
+
+# base_url_orchestrator=${base_url_orchestrator:-"http://localhost:9015/v2"}
+# base_url_clm=${base_url_clm:-"http://localhost:9019/v2"}
+# base_url_ncm=${base_url_ncm:-"http://localhost:9016/v2"}
+
+base_url_clm=${base_url_clm:-"http://192.168.121.29:30073/v2"}
+base_url_ncm=${base_url_ncm:-"http://192.168.121.29:31955/v2"}
+base_url_orchestrator=${base_url_orchestrator:-"http://192.168.121.29:32447/v2"}
+base_url_rysnc=${base_url_orchestrator:-"http://192.168.121.29:32002/v2"}
+
+
+CSAR_DIR="/opt/csar"
+csar_id="operators-cb009bfe-bbee-11e8-9766-525400435678"
+
+
+app1_helm_path="$CSAR_DIR/$csar_id/operator.tar.gz"
+app1_profile_path="$CSAR_DIR/$csar_id/operator_profile.tar.gz"
+
+
+
+# ---------BEGIN: SET CLM DATA---------------
+
+clusterprovidername="collection-cluster2-provider"
+clusterproviderdata="$(cat<<EOF
+{
+  "metadata": {
+    "name": "$clusterprovidername",
+    "description": "description of $clusterprovidername",
+    "userData1": "$clusterprovidername user data 1",
+    "userData2": "$clusterprovidername user data 2"
+  }
+}
+EOF
+)"
+
+clustername="cluster2"
+clusterdata="$(cat<<EOF
+{
+  "metadata": {
+    "name": "$clustername",
+    "description": "description of $clustername",
+    "userData1": "$clustername user data 1",
+    "userData2": "$clustername user data 2"
+  }
+}
+EOF
+)"
+
+kubeconfigcluster2="/opt/kud/multi-cluster/cluster2/artifacts/admin.conf"
+
+labelname="LabelCluster2"
+labeldata="$(cat<<EOF
+{"label-name": "$labelname"}
+EOF
+)"
+
+#--TODO--Creating provider network and network intents----
+
+# add the rsync controller entry
+rsynccontrollername="rsync"
+rsynccontrollerdata="$(cat<<EOF
+{
+  "metadata": {
+    "name": "rsync",
+    "description": "description of $rsynccontrollername controller",
+    "userData1": "user data 1 for $rsynccontrollername",
+    "userData2": "user data 2 for $rsynccontrollername"
+  },
+  "spec": {
+    "host": "${rsynccontrollername}",
+    "port": 9041 
+  }
+}
+EOF
+)"
+
+# ------------END: SET CLM DATA--------------
+
+
+#-------------BEGIN:SET ORCH DATA------------------
+
+# define a project
+projectname="OperatorsProjectCluster2"
+projectdata="$(cat<<EOF
+{
+  "metadata": {
+    "name": "$projectname",
+    "description": "description of $projectname controller",
+    "userData1": "$projectname user data 1",
+    "userData2": "$projectname user data 2"
+  }
+}
+EOF
+)"
+
+# define a composite application
+operators_compositeapp_name="OperatorsCompositeApp"
+compositeapp_version="v1"
+compositeapp_data="$(cat <<EOF
+{
+  "metadata": {
+    "name": "${operators_compositeapp_name}",
+    "description": "description of ${operators_compositeapp_name}",
+    "userData1": "user data 1 for ${operators_compositeapp_name}",
+    "userData2": "user data 2 for ${operators_compositeapp_name}"
+   },
+   "spec":{
+      "version":"${compositeapp_version}"
+   }
+}
+EOF
+)"
+
+# add operator into operators compositeApp
+
+
+operator_app_name="operator"
+operator_helm_chart=${app1_helm_path}
+
+operator_app_data="$(cat <<EOF
+{
+  "metadata": {
+    "name": "${operator_app_name}",
+    "description": "description for app ${operator_app_name}",
+    "userData1": "user data 2 for ${operator_app_name}",
+    "userData2": "user data 2 for ${operator_app_name}"
+   }
+}
+EOF
+)"
+
+
+# Add the composite profile
+operators_composite_profile_name="operators_composite-profile"
+operators_composite_profile_data="$(cat <<EOF
+{
+   "metadata":{
+      "name":"${operators_composite_profile_name}",
+      "description":"description of ${operators_composite_profile_name}",
+      "userData1":"user data 1 for ${operators_composite_profile_name}",
+      "userData2":"user data 2 for ${operators_composite_profile_name}"
+   }
+}
+EOF
+)"
+
+# Add the operator profile data into operators composite profile data
+operator_profile_name="operator-profile"
+operator_profile_file=$app1_profile_path
+operator_profile_data="$(cat <<EOF
+{
+   "metadata":{
+      "name":"${operator_profile_name}",
+      "description":"description of ${operator_profile_name}",
+      "userData1":"user data 1 for ${operator_profile_name}",
+      "userData2":"user data 2 for ${operator_profile_name}"
+   },
+   "spec":{
+      "app-name":  "${operator_app_name}"
+   }
+}
+EOF
+)"
+
+
+
+# define the generic placement intent
+generic_placement_intent_name="Operators-generic-placement-intent"
+generic_placement_intent_data="$(cat <<EOF
+{
+   "metadata":{
+      "name":"${generic_placement_intent_name}",
+      "description":"${generic_placement_intent_name}",
+      "userData1":"${generic_placement_intent_name}",
+      "userData2":"${generic_placement_intent_name}"
+   },
+   "spec":{
+      "logical-cloud":"unused_logical_cloud"
+   }
+}
+EOF
+)"
+
+# define placement intent for operator sub-app
+operator_placement_intent_name="operator-placement-intent"
+operator_placement_intent_data="$(cat <<EOF
+{
+   "metadata":{
+      "name":"${operator_placement_intent_name}",
+      "description":"description of ${operator_placement_intent_name}",
+      "userData1":"user data 1 for ${operator_placement_intent_name}",
+      "userData2":"user data 2 for ${operator_placement_intent_name}"
+   },
+   "spec":{
+      "app-name":"${operator_app_name}",
+      "intent":{
+         "allOf":[
+            {  "provider-name":"${clusterprovidername}",
+               "cluster-label-name":"${labelname}"
+            }
+         ]
+      }
+   }
+}
+EOF
+)"
+
+
+# define a deployment intent group
+release="operators"
+deployment_intent_group_name="operators_deployment_intent_group"
+deployment_intent_group_data="$(cat <<EOF
+{
+   "metadata":{
+      "name":"${deployment_intent_group_name}",
+      "description":"descriptiont of ${deployment_intent_group_name}",
+      "userData1":"user data 1 for ${deployment_intent_group_name}",
+      "userData2":"user data 2 for ${deployment_intent_group_name}"
+   },
+   "spec":{
+      "profile":"${operators_composite_profile_name}",
+      "version":"${release}",
+      "override-values":[]
+   }
+}
+EOF
+)"
+
+# define the intents to be used by the group
+deployment_intents_in_group_name="operators_deploy_intents"
+deployment_intents_in_group_data="$(cat <<EOF
+{
+   "metadata":{
+      "name":"${deployment_intents_in_group_name}",
+      "description":"descriptionf of ${deployment_intents_in_group_name}",
+      "userData1":"user data 1 for ${deployment_intents_in_group_name}",
+      "userData2":"user data 2 for ${deployment_intents_in_group_name}"
+   },
+   "spec":{
+      "intent":{
+         "genericPlacementIntent":"${generic_placement_intent_name}"
+      }
+   }
+}
+EOF
+)"
+
+
+#---------END: SET ORCH DATA--------------------
+
+
+function createOrchestratorData {
+
+    print_msg "creating controller entries"
+    call_api -d "${rsynccontrollerdata}" "${base_url_orchestrator}/controllers"
+
+    print_msg "creating project entry"
+    call_api -d "${projectdata}" "${base_url_orchestrator}/projects"
+
+    print_msg "creating operators composite app entry"
+    call_api -d "${compositeapp_data}" "${base_url_orchestrator}/projects/${projectname}/composite-apps"
+
+    print_msg "adding operator sub-app to the composite app"
+    call_api -F "metadata=${operator_app_data}" \
+             -F "file=@${operator_helm_chart}" \
+             "${base_url_orchestrator}/projects/${projectname}/composite-apps/${operators_compositeapp_name}/${compositeapp_version}/apps"
+
+
+    print_msg "creating operators composite profile entry"
+    call_api -d "${operators_composite_profile_data}" "${base_url_orchestrator}/projects/${projectname}/composite-apps/${operators_compositeapp_name}/${compositeapp_version}/composite-profiles"
+
+    print_msg "adding operator sub-app profile to the composite profile"
+    call_api -F "metadata=${operator_profile_data}" \
+             -F "file=@${operator_profile_file}" \
+             "${base_url_orchestrator}/projects/${projectname}/composite-apps/${operators_compositeapp_name}/${compositeapp_version}/composite-profiles/${operators_composite_profile_name}/profiles"
+
+
+    print_msg "create the generic placement intent"
+    call_api -d "${generic_placement_intent_data}" \
+             "${base_url_orchestrator}/projects/${projectname}/composite-apps/${operators_compositeapp_name}/${compositeapp_version}/generic-placement-intents"
+    print_msg "add the operator app placement intent to the generic placement intent"
+    call_api -d "${operator_placement_intent_data}" \
+             "${base_url_orchestrator}/projects/${projectname}/composite-apps/${operators_compositeapp_name}/${compositeapp_version}/generic-placement-intents/${generic_placement_intent_name}/app-intents"
+
+
+    print_msg "create the deployment intent group"
+    call_api -d "${deployment_intent_group_data}" \
+             "${base_url_orchestrator}/projects/${projectname}/composite-apps/${operators_compositeapp_name}/${compositeapp_version}/deployment-intent-groups"
+    call_api -d "${deployment_intents_in_group_data}" \
+             "${base_url_orchestrator}/projects/${projectname}/composite-apps/${operators_compositeapp_name}/${compositeapp_version}/deployment-intent-groups/${deployment_intent_group_name}/intents"
+
+}
+
+function deleteOrchestratorData {
+   # TODO- delete rsync controller and any other controller
+    delete_resource "${base_url_orchestrator}/controllers/${rsynccontrollername}"
+
+    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${operators_compositeapp_name}/${compositeapp_version}/deployment-intent-groups/${deployment_intent_group_name}/intents/${deployment_intents_in_group_name}"
+    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${operators_compositeapp_name}/${compositeapp_version}/deployment-intent-groups/${deployment_intent_group_name}"
+    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${operators_compositeapp_name}/${compositeapp_version}/generic-placement-intents/${generic_placement_intent_name}/app-intents/${operator_placement_intent_name}"
+
+    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${operators_compositeapp_name}/${compositeapp_version}/generic-placement-intents/${generic_placement_intent_name}"
+
+
+    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${operators_compositeapp_name}/${compositeapp_version}/composite-profiles/${operators_composite_profile_name}/profiles/${operator_profile_name}"
+
+
+    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${operators_compositeapp_name}/${compositeapp_version}/composite-profiles/${operators_composite_profile_name}"
+
+
+    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${operators_compositeapp_name}/${compositeapp_version}/apps/${operator_app_name}"
+
+
+    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${operators_compositeapp_name}/${compositeapp_version}"
+
+    delete_resource "${base_url_orchestrator}/projects/${projectname}"
+}
+
+function createClmData {
+    print_msg "Creating cluster provider and cluster"
+    call_api -d "${clusterproviderdata}" "${base_url_clm}/cluster-providers"
+    call_api -H "Content-Type: multipart/form-data" -F "metadata=$clusterdata" -F "file=@$kubeconfigcluster2" "${base_url_clm}/cluster-providers/${clusterprovidername}/clusters"
+    call_api -d "${labeldata}" "${base_url_clm}/cluster-providers/${clusterprovidername}/clusters/${clustername}/labels"
+
+
+}
+
+function deleteClmData {
+    delete_resource "${base_url_clm}/cluster-providers/${clusterprovidername}/clusters/${clustername}/labels/${labelname}"
+    delete_resource "${base_url_clm}/cluster-providers/${clusterprovidername}/clusters/${clustername}"
+    delete_resource "${base_url_clm}/cluster-providers/${clusterprovidername}"
+}
+function createData {
+    createClmData
+    createOrchestratorData
+}
+function deleteData {
+    deleteClmData
+    deleteOrchestratorData
+}
+function instantiate {
+    # call_api -d "{ }" "${base_url_orchestrator}/projects/${projectname}/composite-apps/${vfw_compositeapp_name}/${vfw_compositeapp_version}/deployment-intent-groups/${deployment_intent_group_name}/approve"
+    call_api -d "{ }" "${base_url_orchestrator}/projects/${projectname}/composite-apps/${operators_compositeapp_name}/${compositeapp_version}/deployment-intent-groups/${deployment_intent_group_name}/instantiate"
+}
+
+
+function terminateOrchData {
+    call_api -d "{ }" "${base_url_orchestrator}/projects/${projectname}/composite-apps/${operators_compositeapp_name}/${compositeapp_version}/deployment-intent-groups/${deployment_intent_group_name}/terminate"
+    }
+
+# Setup
+install_deps
+populate_CSAR_operator_helm "$csar_id"
+
+
+#terminateOrchData
+deleteData
+createData
+instantiate
+
index ca995ba..b746b88 100755 (executable)
@@ -25,10 +25,12 @@ source _functions.sh
 source _common.sh
 
 
-base_url_clm=${base_url_clm:-"http://192.168.121.29:32551/v2"}
-base_url_ncm=${base_url_ncm:-"http://192.168.121.29:31406/v2"}
-base_url_orchestrator=${base_url_orchestrator:-"http://192.168.121.29:30356/v2"}
-base_url_rysnc=${base_url_orchestrator:-"http://192.168.121.29:31751/v2"}
+base_url_clm=${base_url_clm:-"http://192.168.121.29:30073/v2"}
+base_url_ncm=${base_url_ncm:-"http://192.168.121.29:31955/v2"}
+base_url_orchestrator=${base_url_orchestrator:-"http://192.168.121.29:32447/v2"}
+base_url_rysnc=${base_url_orchestrator:-"http://192.168.121.29:32002/v2"}
+
+
 CSAR_DIR="/opt/csar"
 csar_id="cb009bfe-bbee-11e8-9766-525400435678"
 
@@ -37,8 +39,6 @@ app1_helm_path="$CSAR_DIR/$csar_id/prometheus-operator.tar.gz"
 app1_profile_path="$CSAR_DIR/$csar_id/prometheus-operator_profile.tar.gz"
 app2_helm_path="$CSAR_DIR/$csar_id/collectd.tar.gz"
 app2_profile_path="$CSAR_DIR/$csar_id/collectd_profile.tar.gz"
-app3_helm_path="$CSAR_DIR/$csar_id/m3db.tar.gz"
-app3_profile_path="$CSAR_DIR/$csar_id/m3db_profile.tar.gz"
 
 
 # ---------BEGIN: SET CLM DATA---------------
@@ -212,23 +212,6 @@ collectd_app_data="$(cat <<EOF
 EOF
 )"
 
-# add app entries for the m3db app into
-# compositeApp
-
-m3db_app_name="m3db"
-m3db_helm_chart=${app3_helm_path}
-
-m3db_app_data="$(cat <<EOF
-{
-  "metadata": {
-    "name": "${m3db_app_name}",
-    "description": "description for app ${m3db_app_name}",
-    "userData1": "user data 2 for ${m3db_app_name}",
-    "userData2": "user data 2 for ${m3db_app_name}"
-   }
-}
-EOF
-)"
 
 # Add the composite profile
 collection_composite_profile_name="collection_composite-profile"
@@ -280,23 +263,6 @@ collectd_profile_data="$(cat <<EOF
 EOF
 )"
 
-# Add the m3db profile data into collection profile data
-m3db_profile_name="m3db-profile"
-m3db_profile_file=$app3_profile_path
-m3db_profile_data="$(cat <<EOF
-{
-   "metadata":{
-      "name":"${m3db_profile_name}",
-      "description":"description of ${m3db_profile_name}",
-      "userData1":"user data 1 for ${m3db_profile_name}",
-      "userData2":"user data 2 for ${m3db_profile_name}"
-   },
-   "spec":{
-      "app-name":  "${m3db_app_name}"
-   }
-}
-EOF
-)"
 
 # define the generic placement intent
 generic_placement_intent_name="generic-placement-intent"
@@ -363,29 +329,6 @@ collectd_placement_intent_data="$(cat <<EOF
 EOF
 )"
 
-# define app placement intent for m3db
-m3db_placement_intent_name="m3db-placement-intent"
-m3db_placement_intent_data="$(cat <<EOF
-{
-   "metadata":{
-      "name":"${m3db_placement_intent_name}",
-      "description":"description of ${m3db_placement_intent_name}",
-      "userData1":"user data 1 for ${m3db_placement_intent_name}",
-      "userData2":"user data 2 for ${m3db_placement_intent_name}"
-   },
-   "spec":{
-      "app-name":"${m3db_app_name}",
-      "intent":{
-         "allOf":[
-            {  "provider-name":"${clusterprovidername}",
-               "cluster-label-name":"${labelname3}"
-            }
-         ]
-      }
-   }
-}
-EOF
-)"
 
 # define a deployment intent group
 release="collection"
@@ -450,12 +393,6 @@ function createOrchestratorData {
              -F "file=@${collectd_helm_chart}" \
              "${base_url_orchestrator}/projects/${projectname}/composite-apps/${collection_compositeapp_name}/${compositeapp_version}/apps"
 
-
-    print_msg "adding m3db app to the composite app"
-    call_api -F "metadata=${m3db_app_data}" \
-             -F "file=@${m3db_helm_chart}" \
-             "${base_url_orchestrator}/projects/${projectname}/composite-apps/${collection_compositeapp_name}/${compositeapp_version}/apps"
-
     print_msg "creating collection composite profile entry"
     call_api -d "${collection_composite_profile_data}" "${base_url_orchestrator}/projects/${projectname}/composite-apps/${collection_compositeapp_name}/${compositeapp_version}/composite-profiles"
 
@@ -469,11 +406,6 @@ function createOrchestratorData {
              -F "file=@${collectd_profile_file}" \
              "${base_url_orchestrator}/projects/${projectname}/composite-apps/${collection_compositeapp_name}/${compositeapp_version}/composite-profiles/${collection_composite_profile_name}/profiles"
 
-    print_msg "adding m3db app profiles to the composite profile"
-    call_api -F "metadata=${m3db_profile_data}" \
-             -F "file=@${m3db_profile_file}" \
-             "${base_url_orchestrator}/projects/${projectname}/composite-apps/${collection_compositeapp_name}/${compositeapp_version}/composite-profiles/${collection_composite_profile_name}/profiles"
-
     print_msg "create the generic placement intent"
     call_api -d "${generic_placement_intent_data}" \
              "${base_url_orchestrator}/projects/${projectname}/composite-apps/${collection_compositeapp_name}/${compositeapp_version}/generic-placement-intents"
@@ -486,10 +418,6 @@ function createOrchestratorData {
     call_api -d "${collectd_placement_intent_data}" \
              "${base_url_orchestrator}/projects/${projectname}/composite-apps/${collection_compositeapp_name}/${compositeapp_version}/generic-placement-intents/${generic_placement_intent_name}/app-intents"
 
-    print_msg "add the collectd app placement intent to the generic placement intent"
-    call_api -d "${m3db_placement_intent_data}" \
-             "${base_url_orchestrator}/projects/${projectname}/composite-apps/${collection_compositeapp_name}/${compositeapp_version}/generic-placement-intents/${generic_placement_intent_name}/app-intents"
-
 
     print_msg "create the deployment intent group"
     call_api -d "${deployment_intent_group_data}" \
@@ -508,14 +436,12 @@ function deleteOrchestratorData {
     delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${collection_compositeapp_name}/${compositeapp_version}/generic-placement-intents/${generic_placement_intent_name}/app-intents/${prometheus_placement_intent_name}"
     delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${collection_compositeapp_name}/${compositeapp_version}/generic-placement-intents/${generic_placement_intent_name}/app-intents/${collectd_placement_intent_name}"
 
-    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${collection_compositeapp_name}/${compositeapp_version}/generic-placement-intents/${generic_placement_intent_name}/app-intents/${m3db_placement_intent_name}"
 
     delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${collection_compositeapp_name}/${compositeapp_version}/generic-placement-intents/${generic_placement_intent_name}"
 
     delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${collection_compositeapp_name}/${compositeapp_version}/composite-profiles/${collection_composite_profile_name}/profiles/${prometheus_profile_name}"
     delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${collection_compositeapp_name}/${compositeapp_version}/composite-profiles/${collection_composite_profile_name}/profiles/${collectd_profile_name}"
 
-    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${collection_compositeapp_name}/${compositeapp_version}/composite-profiles/${collection_composite_profile_name}/profiles/${m3db_profile_name}"
 
     delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${collection_compositeapp_name}/${compositeapp_version}/composite-profiles/${collection_composite_profile_name}"
 
@@ -523,7 +449,6 @@ function deleteOrchestratorData {
 
     delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${collection_compositeapp_name}/${compositeapp_version}/apps/${collectd_app_name}"
 
-    delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${collection_compositeapp_name}/${compositeapp_version}/apps/${m3db_app_name}"
 
     delete_resource "${base_url_orchestrator}/projects/${projectname}/composite-apps/${collection_compositeapp_name}/${compositeapp_version}"
     delete_resource "${base_url_orchestrator}/projects/${projectname}"
@@ -584,10 +509,16 @@ function instantiate {
     call_api -d "{ }" "${base_url_orchestrator}/projects/${projectname}/composite-apps/${collection_compositeapp_name}/${compositeapp_version}/deployment-intent-groups/${deployment_intent_group_name}/instantiate"
 }
 
+
+function terminateOrchData {
+    call_api -d "{ }" "${base_url_orchestrator}/projects/${projectname}/composite-apps/${collection_compositeapp_name}/${compositeapp_version}/deployment-intent-groups/${deployment_intent_group_name}/terminate"
+}
+
 # Setup
 install_deps
 populate_CSAR_composite_app_helm "$csar_id"
 
+#terminateOrchData
 deleteData
 createData
 instantiate
index d350f71..994b86b 100755 (executable)
@@ -494,8 +494,9 @@ fi
 
 case "$1" in
     "start" )
+        setup
         deleteData
-        print_msg "deleting the data success"
+        print_msg "Before creating, deleting the data success"
         createData
         print_msg "creating the data success"
         instantiate
@@ -504,6 +505,8 @@ case "$1" in
     "stop" )
         terminateOrchData
         print_msg "terminated the resources"
+        deleteData
+        print_msg "deleting the data success"
         ;;
     *) usage ;;
 esac
index c66cb13..f997309 100644 (file)
@@ -1,6 +1,6 @@
 spec:
   remoteWrite:
-  - url: "http://m3coordinator-m3db-cluster.training.svc.cluster.local:7201/api/v1/prom/remote/write"
+  - url: "http://192.168.121.15:32701/api/v1/prom/remote/write"
     writeRelabelConfigs:
       - targetLabel: metrics_storage
-        replacement: m3db_remote
\ No newline at end of file
+        replacement: m3db_remote
diff --git a/kud/tests/vnfs/comp-app/collection/app2/helm/prometheus-operator/diff.txt b/kud/tests/vnfs/comp-app/collection/app2/helm/prometheus-operator/diff.txt
deleted file mode 100644 (file)
index a0d0d3e..0000000
+++ /dev/null
@@ -1,145 +0,0 @@
-8a9,12
-> ## Override the deployment namespace
-> ##
-> namespaceOverride: ""
-> 
-33a38
->     kubeApiserverSlos: true
-96c101
-<   enabled: false
----
->   enabled: true
-107a113
->     annotations: {}
-168c174
-<   #           {{ range .Labels.SortedPairs }} â€¢ *{{ .Name }}:* `{{ .Value }}`
----
->   #           {{ range .Labels.SortedPairs }} • *{{ .Name }}:* `{{ .Value }}`
-169a176,177
->   #       {{ end }}
->   #       {{ end }}
-317c325
-<     ## Standard object’s metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#metadata
----
->     ## Standard object’s metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#metadata
-443a452
->       runAsGroup: 2000
-473c482,483
-<   enabled: false
----
->   enabled: true
->   namespaceOverride: ""
-539c549
-<   ## Configure additional grafana datasources
----
->   ## Configure additional grafana datasources (passed through tpl)
-552c562
-<   #   url: https://prometheus.svc:9090
----
->   #   url: https://{{ printf "%s-prometheus.svc" .Release.Name }}:9090
-641a652,660
->     ## Enable scraping /metrics/probes from kubelet's service
->     ##
->     probes: true
-> 
->     ## Enable scraping /metrics/resource from kubelet's service
->     ##
->     resource: true
->     # From kubernetes 1.18, /metrics/resource/v1alpha1 renamed to /metrics/resource
->     resourcePath: "/metrics/resource/v1alpha1"
-655a675,688
->     ## Metric relabellings to apply to samples before ingestion
->     ##
->     probesMetricRelabelings: []
->     # - sourceLabels: [__name__, image]
->     #   separator: ;
->     #   regex: container_([a-z_]+);
->     #   replacement: $1
->     #   action: drop
->     # - sourceLabels: [__name__]
->     #   separator: ;
->     #   regex: container_(network_tcp_usage_total|network_udp_usage_total|tasks_state|cpu_load_average_10s)
->     #   replacement: $1
->     #   action: drop
-> 
-668a702,721
->     probesRelabelings:
->       - sourceLabels: [__metrics_path__]
->         targetLabel: metrics_path
->     # - sourceLabels: [__meta_kubernetes_pod_node_name]
->     #   separator: ;
->     #   regex: ^(.*)$
->     #   targetLabel: nodename
->     #   replacement: $1
->     #   action: replace
-> 
->     resourceRelabelings:
->       - sourceLabels: [__metrics_path__]
->         targetLabel: metrics_path
->     # - sourceLabels: [__meta_kubernetes_pod_node_name]
->     #   separator: ;
->     #   regex: ^(.*)$
->     #   targetLabel: nodename
->     #   replacement: $1
->     #   action: replace
-> 
-986c1039
-<   enabled: false
----
->   enabled: true
-1011a1065
->   namespaceOverride: ""
-1020c1074
-<   enabled: false
----
->   enabled: true
-1056a1111
->   namespaceOverride: ""
-1070a1126
->   # Only for prometheusOperator.image.tag < v0.39.0
-1094c1150
-<         tag: v1.2.0
----
->         tag: v1.2.1
-1165c1221
-<   cleanupCustomResource: true
----
->   cleanupCustomResource: false
-1255a1312,1313
->     fsGroup: 65534
->     runAsGroup: 65534
-1340c1398
-<     type: NodePort
----
->     type: ClusterIP
-1510c1568
-<       tag: v2.16.0
----
->       tag: v2.18.1
-1686c1744
-<     ## Standard object’s metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#metadata
----
->     ## Standard object’s metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#metadata
-1750a1809,1813
->     # Additional volumes on the output StatefulSet definition.
->     volumes: []
->     # Additional VolumeMounts on the output StatefulSet definition.
->     volumeMounts: []
-> 
-1828a1892
->       runAsGroup: 2000
-1868,1879c1932
-<   additionalServiceMonitors: 
-<     - name: service-monitor-cadvisor
-<       additionalLabels:
-<         collector: cadvisor
-<       jobLabel: cadvisor
-<       selector:
-<         matchLabels:
-<           app: cadvisor
-<       endpoints:
-<         - port: cadvisor-prometheus
-<           interval: 10s
-<           path: /metrics
----
->   additionalServiceMonitors: []
index f296ca5..40de016 100755 (executable)
@@ -474,7 +474,7 @@ alertmanager:
 ## Using default values from https://github.com/helm/charts/blob/master/stable/grafana/values.yaml
 ##
 grafana:
-  enabled: fals
+  enabled: tru
 
   ## Deploy default dashboards.
   ##
@@ -589,7 +589,7 @@ grafana:
 ## Component scraping the kube api server
 ##
 kubeApiServer:
-  enabled: false
+  enabled: true
   tlsConfig:
     serverName: kubernetes
     insecureSkipVerify: false
@@ -626,7 +626,7 @@ kubeApiServer:
 ## Component scraping the kubelet and kubelet-hosted cAdvisor
 ##
 kubelet:
-  enabled: false
+  enabled: true
   namespace: kube-system
 
   serviceMonitor:
@@ -698,7 +698,7 @@ kubelet:
 ## Component scraping the kube controller manager
 ##
 kubeControllerManager:
-  enabled: false
+  enabled: true
 
   ## If your kube controller manager is not deployed as a pod, specify IPs it can be found on
   ##
@@ -751,7 +751,7 @@ kubeControllerManager:
 ## Component scraping coreDns. Use either this or kubeDns
 ##
 coreDns:
-  enabled: false
+  enabled: true
   service:
     port: 9153
     targetPort: 9153
@@ -831,7 +831,7 @@ kubeDns:
 ## Component scraping etcd
 ##
 kubeEtcd:
-  enabled: false
+  enabled: true
 
   ## If your etcd is not deployed as a pod, specify IPs it can be found on
   ##
@@ -891,7 +891,7 @@ kubeEtcd:
 ## Component scraping kube scheduler
 ##
 kubeScheduler:
-  enabled: false
+  enabled: true
 
   ## If your kube scheduler is not deployed as a pod, specify IPs it can be found on
   ##
@@ -944,7 +944,7 @@ kubeScheduler:
 ## Component scraping kube proxy
 ##
 kubeProxy:
-  enabled: false
+  enabled: true
 
   ## If your kube proxy is not deployed as a pod, specify IPs it can be found on
   ##
@@ -1731,7 +1731,7 @@ prometheus:
     ## ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#remotewritespec
     remoteWrite: 
     # - url: http://remote1/push
-      - url: "http://m3coordinator-m3db-cluster.training.svc.cluster.local:7201/api/v1/prom/remote/write"
+      - url: "http://192.168.121.15:32701/api/v1/prom/remote/write"
         writeRelabelConfigs:
           - targetLabel: metrics_storage
             replacement: m3db_remote
@@ -1769,13 +1769,16 @@ prometheus:
     ## The scrape configuraiton example below will find master nodes, provided they have the name .*mst.*, relabel the
     ## port to 2379 and allow etcd scraping provided it is running on all Kubernetes master nodes
     ##
-    additionalScrapeConfigs: 
-      - job_name: 'm3db'
-        static_configs:
-          - targets: ['m3db-cluster-rep0-0.m3dbnode-m3db-cluster.training.svc.cluster.local:9004','m3db-cluster-rep1-0.m3dbnode-m3db-cluster.training.svc.cluster.local:9004', 'm3db-cluster-rep2-0.m3dbnode-m3db-cluster.training.svc.cluster.local:9004']
-      - job_name: 'm3coordinator'
+    additionalScrapeConfigs:
+      - job_name: 'm3'
         static_configs:
-          - targets: ['m3db-cluster-rep0-0.m3dbnode-m3db-cluster.training.svc.cluster.local:7203']
+          - targets: ['192.168.121.15:32701'] 
+            #- job_name: 'm3db'
+            #static_configs:
+            #- targets: ['m3db-cluster-rep0-0.m3dbnode-m3db-cluster.training.svc.cluster.local:9004','m3db-cluster-rep1-0.m3dbnode-m3db-cluster.training.svc.cluster.local:9004', 'm3db-cluster-rep2-0.m3dbnode-m3db-cluster.training.svc.cluster.local:9004']
+            #- job_name: 'm3coordinator'
+            #static_configs:
+            #- targets: ['m3db-cluster-rep0-0.m3dbnode-m3db-cluster.training.svc.cluster.local:7203']
     # - job_name: kube-etcd
     #   kubernetes_sd_configs:
     #     - role: node
diff --git a/kud/tests/vnfs/comp-app/collection/app3/helm/m3db/.helmignore b/kud/tests/vnfs/comp-app/collection/app3/helm/m3db/.helmignore
deleted file mode 100644 (file)
index 50af031..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
-.vscode/
diff --git a/kud/tests/vnfs/comp-app/collection/app3/helm/m3db/templates/NOTES.txt b/kud/tests/vnfs/comp-app/collection/app3/helm/m3db/templates/NOTES.txt
deleted file mode 100644 (file)
index ee7ee3d..0000000
+++ /dev/null
@@ -1 +0,0 @@
-M3DB Cluster  {{ .Values.m3dbCluster.name }} has been created
\ No newline at end of file
diff --git a/kud/tests/vnfs/comp-app/collection/app3/helm/m3db/templates/_helpers.tpl b/kud/tests/vnfs/comp-app/collection/app3/helm/m3db/templates/_helpers.tpl
deleted file mode 100644 (file)
index 36544b1..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-{{/* vim: set filetype=mustache: */}}
-{{/*
-Expand the name of the chart.
-*/}}
-{{- define "m3db.name" -}}
-{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
-
-{{/*
-Create a default fully qualified app name.
-We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
-If release name contains chart name it will be used as a full name.
-*/}}
-{{- define "m3db.fullname" -}}
-{{- if .Values.fullnameOverride -}}
-{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}}
-{{- else -}}
-{{- $name := default .Chart.Name .Values.nameOverride -}}
-{{- if contains $name .Release.Name -}}
-{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
-{{- else -}}
-{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
-{{- end -}}
-{{- end -}}
-
-{{/*
-Create chart name and version as used by the chart label.
-*/}}
-{{- define "m3db.chart" -}}
-{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
diff --git a/kud/tests/vnfs/comp-app/collection/app3/helm/m3db/templates/configmap.yaml b/kud/tests/vnfs/comp-app/collection/app3/helm/m3db/templates/configmap.yaml
deleted file mode 100644 (file)
index 358e201..0000000
+++ /dev/null
@@ -1,218 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
-  name: {{ .Values.m3dbCluster.configMapName }}
-data:
-  m3.yml: |+
-    coordinator:
-      listenAddress:
-        type: "config"
-        value: "0.0.0.0:7201"
-      metrics:
-        scope:
-          prefix: "coordinator"
-        prometheus:
-          handlerPath: /metrics
-          listenAddress: 0.0.0.0:7203
-        sanitization: prometheus
-        samplingRate: 1.0
-        extended: none
-      tagOptions:
-        idScheme: quoted
-      local:
-        namespaces:
-        - namespace: "default"
-          type: unaggregated
-          retention: 48h
-    db:
-      logging:
-        level: info
-
-      metrics:
-        prometheus:
-          handlerPath: /metrics
-        sanitization: prometheus
-        samplingRate: 1.0
-        extended: detailed
-
-      listenAddress: 0.0.0.0:9000
-      clusterListenAddress: 0.0.0.0:9001
-      httpNodeListenAddress: 0.0.0.0:9002
-      httpClusterListenAddress: 0.0.0.0:9003
-      debugListenAddress: 0.0.0.0:9004
-
-      hostID:
-        resolver: file
-        file:
-          path: /etc/m3db/pod-identity/identity
-          timeout: 5m
-
-      client:
-        writeConsistencyLevel: majority
-        readConsistencyLevel: unstrict_majority
-        writeTimeout: 10s
-        fetchTimeout: 15s
-        connectTimeout: 20s
-        writeRetry:
-            initialBackoff: 500ms
-            backoffFactor: 3
-            maxRetries: 2
-            jitter: true
-        fetchRetry:
-            initialBackoff: 500ms
-            backoffFactor: 2
-            maxRetries: 3
-            jitter: true
-        backgroundHealthCheckFailLimit: 4
-        backgroundHealthCheckFailThrottleFactor: 0.5
-
-      gcPercentage: 100
-
-      writeNewSeriesAsync: true
-      writeNewSeriesLimitPerSecond: 1048576
-      writeNewSeriesBackoffDuration: 2ms
-
-      bootstrap:
-        bootstrappers:
-            - filesystem
-            - commitlog
-            - peers
-            - uninitialized_topology
-        fs:
-            numProcessorsPerCPU: 0.125
-
-      commitlog:
-        flushMaxBytes: 524288
-        flushEvery: 1s
-        queue:
-            calculationType: fixed
-            size: 2097152
-        blockSize: 10m
-
-      fs:
-        filePathPrefix: /var/lib/m3db
-        writeBufferSize: 65536
-        dataReadBufferSize: 65536
-        infoReadBufferSize: 128
-        seekReadBufferSize: 4096
-        throughputLimitMbps: 100.0
-        throughputCheckEvery: 128
-
-      repair:
-        enabled: false
-        interval: 2h
-        offset: 30m
-        jitter: 1h
-        throttle: 2m
-        checkInterval: 1m
-
-      pooling:
-        blockAllocSize: 16
-        type: simple
-        seriesPool:
-            size: 262144
-            lowWatermark: 0.7
-            highWatermark: 1.0
-        blockPool:
-            size: 262144
-            lowWatermark: 0.7
-            highWatermark: 1.0
-        encoderPool:
-            size: 262144
-            lowWatermark: 0.7
-            highWatermark: 1.0
-        closersPool:
-            size: 104857
-            lowWatermark: 0.7
-            highWatermark: 1.0
-        contextPool:
-            size: 262144
-            lowWatermark: 0.7
-            highWatermark: 1.0
-        segmentReaderPool:
-            size: 16384
-            lowWatermark: 0.7
-            highWatermark: 1.0
-        iteratorPool:
-            size: 2048
-            lowWatermark: 0.7
-            highWatermark: 1.0
-        fetchBlockMetadataResultsPool:
-            size: 65536
-            capacity: 32
-            lowWatermark: 0.7
-            highWatermark: 1.0
-        fetchBlocksMetadataResultsPool:
-            size: 32
-            capacity: 4096
-            lowWatermark: 0.7
-            highWatermark: 1.0
-        hostBlockMetadataSlicePool:
-            size: 131072
-            capacity: 3
-            lowWatermark: 0.7
-            highWatermark: 1.0
-        blockMetadataPool:
-            size: 65536
-            lowWatermark: 0.7
-            highWatermark: 1.0
-        blockMetadataSlicePool:
-            size: 65536
-            capacity: 32
-            lowWatermark: 0.7
-            highWatermark: 1.0
-        blocksMetadataPool:
-            size: 65536
-            lowWatermark: 0.7
-            highWatermark: 1.0
-        blocksMetadataSlicePool:
-            size: 32
-            capacity: 4096
-            lowWatermark: 0.7
-            highWatermark: 1.0
-        identifierPool:
-            size: 262144
-            lowWatermark: 0.7
-            highWatermark: 1.0
-        bytesPool:
-            buckets:
-                - capacity: 16
-                  size: 524288
-                  lowWatermark: 0.7
-                  highWatermark: 1.0
-                - capacity: 32
-                  size: 262144
-                  lowWatermark: 0.7
-                  highWatermark: 1.0
-                - capacity: 64
-                  size: 131072
-                  lowWatermark: 0.7
-                  highWatermark: 1.0
-                - capacity: 128
-                  size: 65536
-                  lowWatermark: 0.7
-                  highWatermark: 1.0
-                - capacity: 256
-                  size: 65536
-                  lowWatermark: 0.7
-                  highWatermark: 1.0
-                - capacity: 1440
-                  size: 16384
-                  lowWatermark: 0.7
-                  highWatermark: 1.0
-                - capacity: 4096
-                  size: 8192
-                  lowWatermark: 0.7
-                  highWatermark: 1.0
-      config:
-        service:
-            env: default_env
-            zone: embedded
-            service: m3db
-            cacheDir: /var/lib/m3kv
-            etcdClusters:
-            - zone: embedded
-              endpoints:
-              - http://etcd-0.etcd:2380
-              - http://etcd-1.etcd:2380
-              - http://etcd-2.etcd:2380
\ No newline at end of file
diff --git a/kud/tests/vnfs/comp-app/collection/app3/helm/m3db/templates/etcd-cluster.yaml b/kud/tests/vnfs/comp-app/collection/app3/helm/m3db/templates/etcd-cluster.yaml
deleted file mode 100644 (file)
index 802354b..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-apiVersion: "etcd.database.coreos.com/v1beta2"
-kind: EtcdCluster
-metadata:
-  name: {{ .Release.Name }}-{{ .Values.etcdCluster.name }}
-  labels:
-    chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
-    app: {{ template "m3db.name" . }}
-    heritage: {{ .Release.Service }}
-    release: {{ .Release.Name }}
-  annotations:
-     etcd.database.coreos.com/scope: clusterwide
-spec:
-  size: {{ .Values.etcdCluster.size }}
-  version: "{{ .Values.etcdCluster.version }}"
-  pod:
-{{ toYaml .Values.etcdCluster.pod | indent 4 }}
-  {{- if .Values.etcdCluster.enableTLS }}
-  TLS:
-{{ toYaml .Values.etcdCluster.tls | indent 4 }}
-  {{- end }}
diff --git a/kud/tests/vnfs/comp-app/collection/app3/helm/m3db/values.yaml b/kud/tests/vnfs/comp-app/collection/app3/helm/m3db/values.yaml
deleted file mode 100644 (file)
index 515fd2a..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-m3dbCluster:
-  name: m3db-cluster
-  image:
-    repository: quay.io/m3db/m3dbnode
-    tag: v0.10.2
-  replicationFactor: 3
-  numberOfShards: 256
-  isolationGroups:
-    - name: us-west1-a
-      numInstances: 1
-    - name: us-west1-b
-      numInstances: 1
-    - name: us-west1-c
-      numInstances: 1
-  namespaces:
-    - name: collectd
-      preset: 10s:2d
-  configMapName: m3-configuration
-  tolerations: {}
-
-etcdCluster:
-  name: etcd
-  size: 3
-  version: 3.4.3
-  image:
-    repository: quay.io/coreos/etcd
-    tag: v3.4.3
-    pullPolicy: Always
-  enableTLS: false
-  # TLS configs
-  tls:
-    static:
-      member:
-        peerSecret: etcd-peer-tls
-        serverSecret: etcd-server-tls
-      operatorSecret: etcd-client-tls
-  ## etcd cluster pod specific values
-  ## Ref: https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#three-members-cluster-with-resource-requirement
-  pod:
-    ## Antiaffinity for etcd pod assignment
-    ## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
-    antiAffinity: false
-    resources:
-      limits:
-        cpu: 100m
-        memory: 128Mi
-      requests:
-        cpu: 100m
-        memory: 128Mi
-    ## Node labels for etcd pod assignment
-    ## Ref: https://kubernetes.io/docs/user-guide/node-selection/
-    nodeSelector: {}
diff --git a/kud/tests/vnfs/comp-app/collection/m3db/helm/m3db/del.yaml b/kud/tests/vnfs/comp-app/collection/m3db/helm/m3db/del.yaml
new file mode 100644 (file)
index 0000000..8631750
--- /dev/null
@@ -0,0 +1,49 @@
+---
+# Source: m3db/templates/m3dbcluster.yaml
+apiVersion: operator.m3db.io/v1alpha1
+kind: M3DBCluster
+metadata:
+  name: m3db-cluster
+spec:
+  image: quay.io/m3db/m3dbnode:latest
+  replicationFactor: 3
+  numberOfShards: 256
+  isolationGroups:
+    - name: us-west1-a
+      nodeAffinityTerms:
+      - key: failure-domain.beta.kubernetes.io/region
+        values:
+        - us-west1-a
+      numInstances: 1
+    - name: us-west1-b
+      nodeAffinityTerms:
+      - key: failure-domain.beta.kubernetes.io/region
+        values:
+        - us-west1-b
+      numInstances: 1
+    - name: us-west1-c
+      nodeAffinityTerms:
+      - key: failure-domain.beta.kubernetes.io/region
+        values:
+        - us-west1-c
+      numInstances: 1
+    
+  tolerations:
+    {}
+    
+  namespaces:
+    - name: collectd
+      preset: 10s:2d
+      
+  etcdEndpoints:
+  - http://etcd-0.etcd:2379
+  - http://etcd-1.etcd:2379
+  - http://etcd-2.etcd:2379
+  containerResources:
+    requests:
+      memory: 4Gi
+      cpu: '1'
+    limits:
+      memory: 32Gi
+      cpu: '4'
+
@@ -1,26 +1,23 @@
 apiVersion: operator.m3db.io/v1alpha1
 kind: M3DBCluster
 metadata:
-  name: {{ .Values.m3dbCluster.name }}
+  name: m3db-cluster
 spec:
   image: {{ .Values.m3dbCluster.image.repository }}:{{ .Values.m3dbCluster.image.tag }}
   replicationFactor: {{ .Values.m3dbCluster.replicationFactor }}
   numberOfShards: {{ .Values.m3dbCluster.numberOfShards }}
-  etcdEndpoints:
-    - http://{{ .Release.Name }}-{{ .Values.etcdCluster.name }}:2379
   isolationGroups:
 {{ toYaml .Values.m3dbCluster.isolationGroups | indent 4 }}
-  tolerations:
-{{ toYaml .Values.m3dbCluster.tolerations | indent 4 }}
   namespaces:
-{{ toYaml .Values.m3dbCluster.namespaces | indent 4 }}
-  configMapName: {{ .Values.m3dbCluster.configMapName }}
-  resources:
+{{ toYaml .Values.m3dbCluster.namespaces | indent 4 }}  
+  etcdEndpoints:
+  - http://etcd-0.etcd:2379
+  - http://etcd-1.etcd:2379
+  - http://etcd-2.etcd:2379
+  containerResources:
     requests:
       memory: 4Gi
       cpu: '1'
     limits:
-      memory: 12Gi
+      memory: 32Gi
       cpu: '4'
-
-  
diff --git a/kud/tests/vnfs/comp-app/collection/m3db/helm/m3db/values.yaml b/kud/tests/vnfs/comp-app/collection/m3db/helm/m3db/values.yaml
new file mode 100644 (file)
index 0000000..faa2a8b
--- /dev/null
@@ -0,0 +1,29 @@
+m3dbCluster:
+  name: m3db-cluster
+  image:
+    repository: quay.io/m3db/m3dbnode
+    tag: latest 
+  replicationFactor: 3
+  numberOfShards: 256
+  isolationGroups:
+    - name: us-west1-a
+      numInstances: 1
+      nodeAffinityTerms:
+      - key: failure-domain.beta.kubernetes.io/region
+        values:
+        - us-west1-a
+    - name: us-west1-b
+      numInstances: 1
+      nodeAffinityTerms:
+      - key: failure-domain.beta.kubernetes.io/region
+        values:
+        - us-west1-b
+    - name: us-west1-c
+      numInstances: 1
+      nodeAffinityTerms:
+      - key: failure-domain.beta.kubernetes.io/region
+        values:
+        - us-west1-c
+  namespaces:
+    - name: collectd
+      preset: 10s:2d
diff --git a/kud/tests/vnfs/comp-app/collection/operators-latest/helm/operator/Chart.yaml b/kud/tests/vnfs/comp-app/collection/operators-latest/helm/operator/Chart.yaml
new file mode 100644 (file)
index 0000000..67ea549
--- /dev/null
@@ -0,0 +1,16 @@
+apiVersion: v1
+appVersion: '>0.4.7'
+description: Kubernetes operator for M3DB timeseries database
+home: https://github.com/m3db/m3db-operator
+icon: https://raw.githubusercontent.com/m3db/m3/master/docs/theme/assets/images/M3-logo.png
+keywords:
+- operator
+- m3
+maintainers:
+- email: m3db@googlegroups.com
+  name: m3 Authors
+  url: https://operator.m3db.io/
+name: m3db-operator
+sources:
+- https://github.com/m3db/m3db-operator
+version: 0.8.0
@@ -20,7 +20,7 @@ rules:
   verbs: ["create", "get", "deletecollection", "delete"]
 - apiGroups: [""]
   resources: ["pods"]
-  verbs: ["list", "get", "watch", "update"]
+  verbs: ["list", "get", "watch", "update", "patch"]
 - apiGroups: ["apps"]
   resources: ["statefulsets", "deployments"]
   verbs: ["*"]
diff --git a/kud/tests/vnfs/comp-app/collection/operators-latest/helm/operator/templates/etcd-cluster/etcd-basic.yaml b/kud/tests/vnfs/comp-app/collection/operators-latest/helm/operator/templates/etcd-cluster/etcd-basic.yaml
new file mode 100644 (file)
index 0000000..485dd1d
--- /dev/null
@@ -0,0 +1,86 @@
+apiVersion: v1
+kind: Service
+metadata:
+  name: etcd
+  labels:
+    app: etcd
+spec:
+  ports:
+  - port: 2379
+    name: client
+  - port: 2380
+    name: peer
+  clusterIP: None
+  selector:
+    app: etcd
+---
+apiVersion: v1
+kind: Service
+metadata:
+  name: etcd-cluster
+  labels:
+    app: etcd
+spec:
+  selector:
+    app: etcd
+  ports:
+  - port: 2379
+    protocol: TCP
+  type: ClusterIP
+---
+apiVersion: apps/v1
+kind: StatefulSet
+metadata:
+  name: etcd
+  labels:
+    app: etcd
+spec:
+  serviceName: "etcd"
+  replicas: 3
+  selector:
+    matchLabels:
+      app: etcd
+  template:
+    metadata:
+      labels:
+        app: etcd
+    spec:
+      containers:
+      - name: etcd
+        image: quay.io/coreos/etcd:v3.3.10
+        command:
+        - "etcd"
+        - "--name"
+        - "$(MY_POD_NAME)"
+        - "--listen-peer-urls"
+        - "http://$(MY_IP):2380"
+        - "--listen-client-urls"
+        - "http://$(MY_IP):2379,http://127.0.0.1:2379"
+        - "--advertise-client-urls"
+        - "http://$(MY_POD_NAME).etcd:2379"
+        - "--initial-cluster-token"
+        - "etcd-cluster-1"
+        - "--initial-advertise-peer-urls"
+        - "http://$(MY_POD_NAME).etcd:2380"
+        - "--initial-cluster"
+        - "etcd-0=http://etcd-0.etcd:2380,etcd-1=http://etcd-1.etcd:2380,etcd-2=http://etcd-2.etcd:2380"
+        - "--initial-cluster-state"
+        - "new"
+        - "--data-dir"
+        - "/var/lib/etcd"
+        ports:
+        - containerPort: 2379
+          name: client
+        - containerPort: 2380
+          name: peer
+        env:
+        - name: MY_IP
+          valueFrom:
+            fieldRef:
+              fieldPath: status.podIP
+        - name: MY_POD_NAME
+          valueFrom:
+            fieldRef:
+              fieldPath: metadata.name
+        - name: ETCDCTL_API
+          value: "3"
@@ -14,6 +14,10 @@ spec:
       labels:
         name: {{ .Values.operator.name }}
     spec:
+      securityContext:
+        runAsNonRoot: true
+        runAsUser: 65534
+        runAsGroup: 65534
       containers:
         - name: {{ .Values.operator.name }}
           image: {{ .Values.image.repository}}:{{ .Values.image.tag }}
diff --git a/kud/tests/vnfs/comp-app/collection/operators/helm/operator/.helmignore b/kud/tests/vnfs/comp-app/collection/operators/helm/operator/.helmignore
deleted file mode 100644 (file)
index 50af031..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
-.vscode/
diff --git a/kud/tests/vnfs/comp-app/collection/operators/helm/operator/Chart.yaml b/kud/tests/vnfs/comp-app/collection/operators/helm/operator/Chart.yaml
deleted file mode 100644 (file)
index 01c1eb0..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: v1
-appVersion: "1.0"
-description: A collection of operator Helm charts.
-name: operator
-version: 0.1.0
diff --git a/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/.helmignore b/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/.helmignore
deleted file mode 100644 (file)
index f0c1319..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
diff --git a/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/Chart.yaml b/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/Chart.yaml
deleted file mode 100755 (executable)
index d0ea891..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-apiVersion: v1
-description: CoreOS etcd-operator Helm chart for Kubernetes
-name: etcd-operator
-version: 0.10.0
-appVersion: 0.9.4
-home: https://github.com/coreos/etcd-operator
-icon: https://raw.githubusercontent.com/coreos/etcd/master/logos/etcd-horizontal-color.png
-sources:
-- https://github.com/coreos/etcd-operator
-maintainers:
-- name: lachie83
-  email: lachlan@deis.com
-- name: alejandroEsc
-  email: jaescobar.cell@gmail.com
diff --git a/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/OWNERS b/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/OWNERS
deleted file mode 100644 (file)
index 1385151..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-approvers:
-- lachie83
-- alejandroEsc
-reviewers:
-- lachie83
-- alejandroEsc
diff --git a/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/README.md b/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/README.md
deleted file mode 100644 (file)
index 417b19b..0000000
+++ /dev/null
@@ -1,169 +0,0 @@
-# CoreOS etcd-operator
-
-[etcd-operator](https://coreos.com/blog/introducing-the-etcd-operator.html) Simplify etcd cluster
-configuration and management.
-
-__DISCLAIMER:__ While this chart has been well-tested, the etcd-operator is still currently in beta.
-Current project status is available [here](https://github.com/coreos/etcd-operator).
-
-## Introduction
-
-This chart bootstraps an etcd-operator and allows the deployment of etcd-cluster(s).
-
-## Official Documentation
-
-Official project documentation found [here](https://github.com/coreos/etcd-operator)
-
-## Prerequisites
-
-- Kubernetes 1.4+ with Beta APIs enabled
-- __Suggested:__ PV provisioner support in the underlying infrastructure to support backups
-
-## Installing the Chart
-
-To install the chart with the release name `my-release`:
-
-```bash
-$ helm install stable/etcd-operator --name my-release
-```
-
-Note that by default chart installs etcd operator only. If you want to also deploy `etcd` cluster, enable `customResources.createEtcdClusterCRD` flag:
-```bash
-$ helm install --name my-release --set customResources.createEtcdClusterCRD=true stable/etcd-operator
-```
-
-## Uninstalling the Chart
-
-To uninstall/delete the `my-release` deployment:
-
-```bash
-$ helm delete my-release
-```
-
-The command removes all the Kubernetes components EXCEPT the persistent volume.
-
-## Updating
-Once you have a new chart version, you can update your deployment with:
-```
-$ helm upgrade my-release stable/etcd-operator
-```
-
-Example resizing etcd cluster from `3` to `5` nodes during helm upgrade:
-```bash
-$ helm upgrade my-release --set etcdCluster.size=5 --set customResources.createEtcdClusterCRD=true stable/etcd-operator
-```
-
-## Configuration
-
-The following table lists the configurable parameters of the etcd-operator chart and their default values.
-
-| Parameter                                         | Description                                                          | Default                                        |
-| ------------------------------------------------- | -------------------------------------------------------------------- | ---------------------------------------------- |
-| `rbac.create`                                     | Install required RBAC service account, roles and rolebindings        | `true`                                         |
-| `rbac.apiVersion`                                 | RBAC api version `v1alpha1\|v1beta1`                                 | `v1beta1`                                      |
-| `serviceAccount.create`                           | Flag to create the service account                                   | `true`                                         |
-| `serviceAccount.name`                             | Name of the service account resource when RBAC is enabled            | `etcd-operator-sa`                             |
-| `deployments.etcdOperator`                        | Deploy the etcd cluster operator                                     | `true`                                         |
-| `deployments.backupOperator`                      | Deploy the etcd backup operator                                      | `true`                                         |
-| `deployments.restoreOperator`                     | Deploy the etcd restore operator                                     | `true`                                         |
-| `customResources.createEtcdClusterCRD`            | Create a custom resource: EtcdCluster                                | `false`                                        |
-| `customResources.createBackupCRD`                 | Create an a custom resource: EtcdBackup                              | `false`                                        |
-| `customResources.createRestoreCRD`                | Create an a custom resource: EtcdRestore                             | `false`                                        |
-| `etcdOperator.name`                               | Etcd Operator name                                                   | `etcd-operator`                                |
-| `etcdOperator.replicaCount`                       | Number of operator replicas to create (only 1 is supported)          | `1`                                            |
-| `etcdOperator.image.repository`                   | etcd-operator container image                                        | `quay.io/coreos/etcd-operator`                 |
-| `etcdOperator.image.tag`                          | etcd-operator container image tag                                    | `v0.9.3`                                       |
-| `etcdOperator.image.pullpolicy`                   | etcd-operator container image pull policy                            | `Always`                                       |
-| `etcdOperator.resources.cpu`                      | CPU limit per etcd-operator pod                                      | `100m`                                         |
-| `etcdOperator.resources.memory`                   | Memory limit per etcd-operator pod                                   | `128Mi`                                        |
-| `etcdOperator.securityContext`                    | SecurityContext for etcd operator                                    | `{}`                                           |
-| `etcdOperator.nodeSelector`                       | Node labels for etcd operator pod assignment                         | `{}`                                           |
-| `etcdOperator.podAnnotations`                     | Annotations for the etcd operator pod                                | `{}`                                           |
-| `etcdOperator.commandArgs`                        | Additional command arguments                                         | `{}`                                           |
-| `backupOperator.name`                             | Backup operator name                                                 | `etcd-backup-operator`                         |
-| `backupOperator.replicaCount`                     | Number of operator replicas to create (only 1 is supported)          | `1`                                            |
-| `backupOperator.image.repository`                 | Operator container image                                             | `quay.io/coreos/etcd-operator`                 |
-| `backupOperator.image.tag`                        | Operator container image tag                                         | `v0.9.3`                                       |
-| `backupOperator.image.pullpolicy`                 | Operator container image pull policy                                 | `Always`                                       |
-| `backupOperator.resources.cpu`                    | CPU limit per etcd-operator pod                                      | `100m`                                         |
-| `backupOperator.resources.memory`                 | Memory limit per etcd-operator pod                                   | `128Mi`                                        |
-| `backupOperator.securityContext`                  | SecurityContext for etcd backup operator                             | `{}`                                           |
-| `backupOperator.spec.storageType`                 | Storage to use for backup file, currently only S3 supported          | `S3`                                           |
-| `backupOperator.spec.s3.s3Bucket`                 | Bucket in S3 to store backup file                                    |                                                |
-| `backupOperator.spec.s3.awsSecret`                | Name of kubernetes secret containing aws credentials                 |                                                |
-| `backupOperator.nodeSelector`                     | Node labels for etcd operator pod assignment                         | `{}`                                           |
-| `backupOperator.commandArgs`                      | Additional command arguments                                         | `{}`                                           |
-| `restoreOperator.name`                            | Restore operator name                                                | `etcd-backup-operator`                         |
-| `restoreOperator.replicaCount`                    | Number of operator replicas to create (only 1 is supported)          | `1`                                            |
-| `restoreOperator.image.repository`                | Operator container image                                             | `quay.io/coreos/etcd-operator`                 |
-| `restoreOperator.image.tag`                       | Operator container image tag                                         | `v0.9.3`                                       |
-| `restoreOperator.image.pullpolicy`                | Operator container image pull policy                                 | `Always`                                       |
-| `restoreOperator.resources.cpu`                   | CPU limit per etcd-operator pod                                      | `100m`                                         |
-| `restoreOperator.resources.memory`                | Memory limit per etcd-operator pod                                   | `128Mi`                                        |
-| `restoreOperator.securityContext`                 | SecurityContext for etcd restore operator                            | `{}`                                           |
-| `restoreOperator.spec.s3.path`                    | Path in S3 bucket containing the backup file                         |                                                |
-| `restoreOperator.spec.s3.awsSecret`               | Name of kubernetes secret containing aws credentials                 |                                                |
-| `restoreOperator.nodeSelector`                    | Node labels for etcd operator pod assignment                         | `{}`                                           |
-| `restoreOperator.commandArgs`                     | Additional command arguments                                         | `{}`                                           |
-| `etcdCluster.name`                                | etcd cluster name                                                    | `etcd-cluster`                                 |
-| `etcdCluster.size`                                | etcd cluster size                                                    | `3`                                            |
-| `etcdCluster.version`                             | etcd cluster version                                                 | `3.2.25`                                       |
-| `etcdCluster.image.repository`                    | etcd container image                                                 | `quay.io/coreos/etcd-operator`                 |
-| `etcdCluster.image.tag`                           | etcd container image tag                                             | `v3.2.25`                                      |
-| `etcdCluster.image.pullPolicy`                    | etcd container image pull policy                                     | `Always`                                       |
-| `etcdCluster.enableTLS`                           | Enable use of TLS                                                    | `false`                                        |
-| `etcdCluster.tls.static.member.peerSecret`        | Kubernetes secret containing TLS peer certs                          | `etcd-peer-tls`                                |
-| `etcdCluster.tls.static.member.serverSecret`      | Kubernetes secret containing TLS server certs                        | `etcd-server-tls`                              |
-| `etcdCluster.tls.static.operatorSecret`           | Kubernetes secret containing TLS client certs                        | `etcd-client-tls`                              |
-| `etcdCluster.pod.antiAffinity`                    | Whether etcd cluster pods should have an antiAffinity                | `false`                                        |
-| `etcdCluster.pod.resources.limits.cpu`            | CPU limit per etcd cluster pod                                       | `100m`                                         |
-| `etcdCluster.pod.resources.limits.memory`         | Memory limit per etcd cluster pod                                    | `128Mi`                                        |
-| `etcdCluster.pod.resources.requests.cpu`          | CPU request per etcd cluster pod                                     | `100m`                                         |
-| `etcdCluster.pod.resources.requests.memory`       | Memory request per etcd cluster pod                                  | `128Mi`                                        |
-| `etcdCluster.pod.nodeSelector`                    | Node labels for etcd cluster pod assignment                          | `{}`                                           |
-
-Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example:
-
-```bash
-$ helm install --name my-release --set image.tag=v0.2.1 stable/etcd-operator
-```
-
-Alternatively, a YAML file that specifies the values for the parameters can be provided while
-installing the chart. For example:
-
-```bash
-$ helm install --name my-release --values values.yaml stable/etcd-operator
-```
-
-## RBAC
-By default the chart will install the recommended RBAC roles and rolebindings.
-
-To determine if your cluster supports this running the following:
-
-```console
-$ kubectl api-versions | grep rbac
-```
-
-You also need to have the following parameter on the api server. See the following document for how to enable [RBAC](https://kubernetes.io/docs/admin/authorization/rbac/)
-
-```
---authorization-mode=RBAC
-```
-
-If the output contains "beta" or both "alpha" and "beta" you can may install rbac by default, if not, you may turn RBAC off as described below.
-
-### RBAC role/rolebinding creation
-
-RBAC resources are enabled by default. To disable RBAC do the following:
-
-```console
-$ helm install --name my-release stable/etcd-operator --set rbac.create=false
-```
-
-### Changing RBAC manifest apiVersion
-
-By default the RBAC resources are generated with the "v1beta1" apiVersion. To use "v1alpha1" do the following:
-
-```console
-$ helm install --name my-release stable/etcd-operator --set rbac.install=true,rbac.apiVersion=v1alpha1
-```
diff --git a/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/NOTES.txt b/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/NOTES.txt
deleted file mode 100644 (file)
index 30d7ec0..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-{{- if .Values.customResources.createEtcdClusterCRD -}}
-1. Watch etcd cluster start
-  kubectl get pods -l etcd_cluster={{ .Values.etcdCluster.name }} --namespace {{ .Release.Namespace }} -w
-
-2. Confirm etcd cluster is healthy
-  $ kubectl run --rm -i --tty --env="ETCDCTL_API=3" --env="ETCDCTL_ENDPOINTS=http://{{ .Values.etcdCluster.name }}-client:2379" --namespace {{ .Release.Namespace }} etcd-test --image quay.io/coreos/etcd --restart=Never -- /bin/sh -c 'watch -n1 "etcdctl  member list"'
-
-3. Interact with the cluster!
-  $ kubectl run --rm -i --tty --env ETCDCTL_API=3 --namespace {{ .Release.Namespace }} etcd-test --image quay.io/coreos/etcd --restart=Never -- /bin/sh
-  / # etcdctl --endpoints http://{{ .Values.etcdCluster.name }}-client:2379 put foo bar
-  / # etcdctl --endpoints http://{{ .Values.etcdCluster.name }}-client:2379 get foo
-  OK
-  (ctrl-D to exit)
-  
-4. Optional
-  Check the etcd-operator logs
-  export POD=$(kubectl get pods -l app={{ template "etcd-operator.fullname" . }} --namespace {{ .Release.Namespace }} --output name)
-  kubectl logs $POD --namespace={{ .Release.Namespace }}
-
-{{- else -}}
-1. etcd-operator deployed.
-  If you would like to deploy an etcd-cluster set 'customResources.createEtcdClusterCRD' to true in values.yaml
-  Check the etcd-operator logs
-    export POD=$(kubectl get pods -l app={{ template "etcd-operator.fullname" . }} --namespace {{ .Release.Namespace }} --output name)
-    kubectl logs $POD --namespace={{ .Release.Namespace }}
-
-{{- end -}}
diff --git a/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/_helpers.tpl b/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/_helpers.tpl
deleted file mode 100644 (file)
index e407683..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-{{/* vim: set filetype=mustache: */}}
-{{/*
-Expand the name of the chart.
-*/}}
-{{- define "etcd-operator.name" -}}
-{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
-
-{{/*
-Create a default fully qualified app name.
-We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
-*/}}
-{{- define "etcd-operator.fullname" -}}
-{{- $name := default .Chart.Name .Values.nameOverride -}}
-{{- printf "%s-%s-%s" .Release.Name $name .Values.etcdOperator.name | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
-
-{{- define "etcd-backup-operator.name" -}}
-{{- default .Chart.Name .Values.backupOperator.name | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
-
-{{/*
-Create a default fully qualified app name.
-We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
-*/}}
-{{- define "etcd-backup-operator.fullname" -}}
-{{- $name := default .Chart.Name .Values.nameOverride -}}
-{{- printf "%s-%s-%s" .Release.Name $name .Values.backupOperator.name | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
-
-{{- define "etcd-restore-operator.name" -}}
-{{- default .Chart.Name .Values.restoreOperator.name | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
-
-{{/*
-Create a default fully qualified app name.
-We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
-*/}}
-{{- define "etcd-restore-operator.fullname" -}}
-{{- $name := default .Chart.Name .Values.nameOverride -}}
-{{- printf "%s-%s-%s" .Release.Name $name .Values.restoreOperator.name | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
-
-{{/*
-Create the name of the etcd-operator service account to use
-*/}}
-{{- define "etcd-operator.serviceAccountName" -}}
-{{- if .Values.serviceAccount.create -}}
-    {{ default (include "etcd-operator.fullname" .) .Values.serviceAccount.name }}
-{{- else -}}
-    {{ default "default" .Values.serviceAccount.name }}
-{{- end -}}
-{{- end -}}
diff --git a/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/backup-etcd-crd.yaml b/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/backup-etcd-crd.yaml
deleted file mode 100644 (file)
index 5528f76..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-{{- if .Values.customResources.createBackupCRD }}
----
-apiVersion: "etcd.database.coreos.com/v1beta2"
-kind: "EtcdBackup"
-metadata:
-  name: {{ template "etcd-backup-operator.fullname" . }}
-  labels:
-    chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
-    app: {{ template "etcd-backup-operator.name" . }}
-    heritage: {{ .Release.Service }}
-    release: {{ .Release.Name }}
-  annotations:
-    "helm.sh/hook": "post-install"
-    "helm.sh/hook-delete-policy": "before-hook-creation"
-spec:
-  clusterName: {{ .Values.etcdCluster.name }}
-{{ toYaml .Values.backupOperator.spec | indent 2 }}
-{{- end}}
\ No newline at end of file
diff --git a/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/backup-operator-deployment.yaml b/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/backup-operator-deployment.yaml
deleted file mode 100644 (file)
index 8b8d51b..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-{{- if .Values.deployments.backupOperator }}
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
-  name: {{ template "etcd-backup-operator.fullname" . }}
-  labels:
-    chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
-    app: {{ template "etcd-backup-operator.name" . }}
-    heritage: {{ .Release.Service }}
-    release: {{ .Release.Name }}
-spec:
-  selector:
-    matchLabels:
-      app: {{ template "etcd-backup-operator.fullname" . }}
-      release: {{ .Release.Name }}
-  replicas: {{ .Values.backupOperator.replicaCount }}
-  template:
-    metadata:
-      name: {{ template "etcd-backup-operator.fullname" . }}
-      labels:
-        app: {{ template "etcd-backup-operator.fullname" . }}
-        release: {{ .Release.Name }}
-    spec:
-      serviceAccountName: {{ template "etcd-operator.serviceAccountName" . }}
-      containers:
-      - name: {{ .Values.backupOperator.name }}
-        image: "{{ .Values.backupOperator.image.repository }}:{{ .Values.backupOperator.image.tag }}"
-        imagePullPolicy: {{ .Values.backupOperator.image.pullPolicy }}
-        command:
-        - etcd-backup-operator
-{{- range $key, $value := .Values.backupOperator.commandArgs }}
-        - "--{{ $key }}={{ $value }}"
-{{- end }}
-        env:
-        - name: MY_POD_NAMESPACE
-          valueFrom:
-            fieldRef:
-              fieldPath: metadata.namespace
-        - name: MY_POD_NAME
-          valueFrom:
-            fieldRef:
-              fieldPath: metadata.name
-        resources:
-          limits:
-            cpu: {{ .Values.backupOperator.resources.cpu }}
-            memory: {{ .Values.backupOperator.resources.memory }}
-          requests:
-            cpu: {{ .Values.backupOperator.resources.cpu }}
-            memory: {{ .Values.backupOperator.resources.memory }}
-    {{- if .Values.backupOperator.nodeSelector }}
-      nodeSelector: {{ toYaml .Values.backupOperator.nodeSelector | nindent 8 }}
-    {{- end }}
-    {{- if .Values.backupOperator.securityContext }}
-      securityContext: {{ toYaml .Values.backupOperator.securityContext | nindent 8 }}
-    {{- end }}
-    {{- if .Values.backupOperator.tolerations }}
-      tolerations: {{ toYaml .Values.backupOperator.tolerations | nindent 8 }}
-    {{- end }}
-{{- end }}
diff --git a/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/etcd-cluster-crd.yaml b/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/etcd-cluster-crd.yaml
deleted file mode 100644 (file)
index 2cccb2b..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-{{- if .Values.deployments.etcdOperator }}
-# Synced with https://github.com/coreos/etcd-operator/blob/master/pkg/util/k8sutil/crd.go
----
-apiVersion: apiextensions.k8s.io/v1beta1
-kind: CustomResourceDefinition
-metadata:
-  name: etcdclusters.etcd.database.coreos.com
-  labels:
-    chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
-    app: {{ template "etcd-operator.name" . }}
-    heritage: {{ .Release.Service }}
-    release: {{ .Release.Name }}
-  annotations:
-    helm.sh/hook: crd-install
-    helm.sh/hook-delete-policy: before-hook-creation
-spec:
-  group: etcd.database.coreos.com
-  scope: Namespaced
-  version: v1beta2
-  names:
-    kind: EtcdCluster
-    listKind: EtcdClusterList
-    singular: etcdcluster
-    plural: etcdclusters
-    shortNames:
-    - etcd
-{{- end }}
-{{- if .Values.customResources.createEtcdClusterCRD }}
----
-apiVersion: "etcd.database.coreos.com/v1beta2"
-kind: "EtcdCluster"
-metadata:
-  name: {{ .Values.etcdCluster.name }}
-  labels:
-    chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
-    app: {{ template "etcd-operator.name" . }}
-    heritage: {{ .Release.Service }}
-    release: {{ .Release.Name }}
-  annotations:
-    "helm.sh/hook": "post-install"
-    "helm.sh/hook-delete-policy": "before-hook-creation"
-spec:
-  size: {{ .Values.etcdCluster.size }}
-  version: "{{ .Values.etcdCluster.version }}"
-  pod:
-{{ toYaml .Values.etcdCluster.pod | indent 4 }}
-  {{- if .Values.etcdCluster.enableTLS }}
-  TLS:
-{{ toYaml .Values.etcdCluster.tls | indent 4 }}
-  {{- end }}
-{{- end }}
\ No newline at end of file
diff --git a/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/operator-cluster-role.yaml b/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/operator-cluster-role.yaml
deleted file mode 100644 (file)
index 6208597..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-{{- if .Values.rbac.create }}
----
-apiVersion: rbac.authorization.k8s.io/{{ .Values.rbac.apiVersion }}
-kind: ClusterRole
-metadata:
-  name: {{ template "etcd-operator.fullname" . }}
-  labels:
-    chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
-    app: {{ template "etcd-operator.name" . }}
-    heritage: {{ .Release.Service }}
-    release: {{ .Release.Name }}
-rules:
-- apiGroups:
-  - etcd.database.coreos.com
-  resources:
-  - etcdclusters
-  - etcdbackups
-  - etcdrestores
-  verbs:
-  - "*"
-- apiGroups:
-  - apiextensions.k8s.io
-  resources:
-  - customresourcedefinitions
-  verbs:
-  - "*"
-- apiGroups:
-  - ""
-  resources:
-  - pods
-  - services
-  - endpoints
-  - persistentvolumeclaims
-  - events
-  verbs:
-  - "*"
-- apiGroups:
-  - apps
-  resources:
-  - deployments
-  verbs:
-  - "*"
-- apiGroups:
-  - ""
-  resources:
-  - secrets
-  verbs:
-  - get
-{{- end }}
diff --git a/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/operator-clusterrole-binding.yaml b/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/operator-clusterrole-binding.yaml
deleted file mode 100644 (file)
index 09594cc..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-{{- if and .Values.rbac.create .Values.deployments.etcdOperator }}
----
-kind: ClusterRoleBinding
-apiVersion: rbac.authorization.k8s.io/{{ required "A valid .Values.rbac.apiVersion entry required!" .Values.rbac.apiVersion }}
-metadata:
-  name: {{ template "etcd-operator.fullname" . }}
-  labels:
-    chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
-    app: {{ template "etcd-operator.name" . }}
-    heritage: {{ .Release.Service }}
-    release: {{ .Release.Name }}
-subjects:
-- kind: ServiceAccount
-  name: {{ template "etcd-operator.serviceAccountName" . }}
-  namespace: {{ .Release.Namespace }}
-roleRef:
-  apiGroup: rbac.authorization.k8s.io
-  kind: ClusterRole
-  name: {{ template "etcd-operator.fullname" . }}
-{{- end }}
diff --git a/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/operator-deployment.yaml b/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/operator-deployment.yaml
deleted file mode 100644 (file)
index dc50d46..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-{{- if .Values.deployments.etcdOperator }}
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
-  name: {{ template "etcd-operator.fullname" . }}
-  labels:
-    chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
-    app: {{ template "etcd-operator.name" . }}
-    heritage: {{ .Release.Service }}
-    release: {{ .Release.Name }}
-spec:
-  selector:
-    matchLabels:
-      app: {{ template "etcd-operator.fullname" . }}
-      release: {{ .Release.Name }}
-  replicas: {{ .Values.etcdOperator.replicaCount }}
-  template:
-    metadata:
-      name: {{ template "etcd-operator.fullname" . }}
-      labels:
-        app: {{ template "etcd-operator.fullname" . }}
-        release: {{ .Release.Name }}
-      annotations: {{ toYaml .Values.etcdOperator.podAnnotations | nindent 8}}
-    spec:
-      serviceAccountName: {{ template "etcd-operator.serviceAccountName" . }}
-      containers:
-      - name: {{ template "etcd-operator.fullname" . }}
-        image: "{{ .Values.etcdOperator.image.repository }}:{{ .Values.etcdOperator.image.tag }}"
-        imagePullPolicy: {{ .Values.etcdOperator.image.pullPolicy }}
-        command:
-        - etcd-operator
-{{- range $key, $value := .Values.etcdOperator.commandArgs }}
-        - "--{{ $key }}={{ $value }}"
-{{- end }}
-        env:
-        - name: MY_POD_NAMESPACE
-          valueFrom:
-            fieldRef:
-              fieldPath: metadata.namespace
-        - name: MY_POD_NAME
-          valueFrom:
-            fieldRef:
-              fieldPath: metadata.name
-        resources:
-          limits:
-            cpu: {{ .Values.etcdOperator.resources.cpu }}
-            memory: {{ .Values.etcdOperator.resources.memory }}
-          requests:
-            cpu: {{ .Values.etcdOperator.resources.cpu }}
-            memory: {{ .Values.etcdOperator.resources.memory }}
-        {{- if .Values.etcdOperator.livenessProbe.enabled }}
-        livenessProbe:
-          httpGet:
-            path: /readyz
-            port: 8080
-          initialDelaySeconds: {{ .Values.etcdOperator.livenessProbe.initialDelaySeconds }}
-          periodSeconds: {{ .Values.etcdOperator.livenessProbe.periodSeconds }}
-          timeoutSeconds: {{ .Values.etcdOperator.livenessProbe.timeoutSeconds }}
-          successThreshold: {{ .Values.etcdOperator.livenessProbe.successThreshold }}
-          failureThreshold: {{ .Values.etcdOperator.livenessProbe.failureThreshold }}
-        {{- end}}
-        {{- if .Values.etcdOperator.readinessProbe.enabled }}
-        readinessProbe:
-          httpGet:
-            path: /readyz
-            port: 8080
-          initialDelaySeconds: {{ .Values.etcdOperator.readinessProbe.initialDelaySeconds }}
-          periodSeconds: {{ .Values.etcdOperator.readinessProbe.periodSeconds }}
-          timeoutSeconds: {{ .Values.etcdOperator.readinessProbe.timeoutSeconds }}
-          successThreshold: {{ .Values.etcdOperator.readinessProbe.successThreshold }}
-          failureThreshold: {{ .Values.etcdOperator.readinessProbe.failureThreshold }}
-        {{- end }}
-    {{- if .Values.etcdOperator.nodeSelector }}
-      nodeSelector: {{ toYaml .Values.etcdOperator.nodeSelector | nindent 8 }}
-    {{- end }}
-    {{- if .Values.etcdOperator.securityContext }}
-      securityContext: {{ toYaml .Values.etcdOperator.securityContext | nindent 8 }}
-    {{- end }}
-    {{- if .Values.etcdOperator.tolerations }}
-      tolerations: {{ toYaml .Values.etcdOperator.tolerations | nindent 8 }}
-    {{- end }}
-{{- end }}
diff --git a/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/operator-service-account.yaml b/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/operator-service-account.yaml
deleted file mode 100644 (file)
index 423be9c..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-{{- if and .Values.serviceAccount.create .Values.deployments.etcdOperator }}
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
-  name: {{ template "etcd-operator.serviceAccountName" . }}
-  labels:
-    chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
-    app: {{ template "etcd-operator.name" . }}
-    heritage: {{ .Release.Service }}
-    release: {{ .Release.Name }}
-imagePullSecrets: {{ toYaml .Values.global.imagePullSecrets | nindent 2 }}
-{{- end }}
diff --git a/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/restore-etcd-crd.yaml b/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/restore-etcd-crd.yaml
deleted file mode 100644 (file)
index 73faaab..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-{{- if .Values.customResources.createRestoreCRD }}
----
-apiVersion: "etcd.database.coreos.com/v1beta2"
-kind: "EtcdRestore"
-metadata:
-  # An EtcdCluster with the same name will be created
-  name: {{ .Values.etcdCluster.name }}
-  labels:
-    chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
-    app: {{ template "etcd-restore-operator.name" . }}
-    heritage: {{ .Release.Service }}
-    release: {{ .Release.Name }}
-  annotations:
-    "helm.sh/hook": "post-install"
-    "helm.sh/hook-delete-policy": "before-hook-creation"
-spec:
-  clusterSpec:
-    size: {{ .Values.etcdCluster.size }}
-    baseImage: "{{ .Values.etcdCluster.image.repository }}"
-    version: {{ .Values.etcdCluster.image.tag }}
-    pod:
-{{ toYaml .Values.etcdCluster.pod | indent 6 }}
-    {{- if .Values.etcdCluster.enableTLS }}
-    TLS:
-{{ toYaml .Values.etcdCluster.tls | indent 6 }}
-    {{- end }}
-{{ toYaml .Values.restoreOperator.spec | indent 2 }}
-{{- end}}
\ No newline at end of file
diff --git a/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/restore-operator-deployment.yaml b/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/restore-operator-deployment.yaml
deleted file mode 100644 (file)
index ce27f6f..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-{{- if .Values.deployments.restoreOperator }}
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
-  name: {{ template "etcd-restore-operator.fullname" . }}
-  labels:
-    chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
-    app: {{ template "etcd-restore-operator.name" . }}
-    heritage: {{ .Release.Service }}
-    release: {{ .Release.Name }}
-spec:
-  selector:
-    matchLabels:
-      app: {{ template "etcd-restore-operator.name" . }}
-      release: {{ .Release.Name }}
-  replicas: {{ .Values.restoreOperator.replicaCount }}
-  template:
-    metadata:
-      name: {{ template "etcd-restore-operator.fullname" . }}
-      labels:
-        app: {{ template "etcd-restore-operator.name" . }}
-        release: {{ .Release.Name }}
-    spec:
-      serviceAccountName: {{ template "etcd-operator.serviceAccountName" . }}
-      containers:
-      - name: {{ .Values.restoreOperator.name }}
-        image: "{{ .Values.restoreOperator.image.repository }}:{{ .Values.restoreOperator.image.tag }}"
-        imagePullPolicy: {{ .Values.restoreOperator.image.pullPolicy }}
-        ports:
-        - containerPort: {{ .Values.restoreOperator.port }}
-        command:
-        - etcd-restore-operator
-{{- range $key, $value := .Values.restoreOperator.commandArgs }}
-        - "--{{ $key }}={{ $value }}"
-{{- end }}
-        env:
-        - name: MY_POD_NAMESPACE
-          valueFrom:
-            fieldRef:
-              fieldPath: metadata.namespace
-        - name: MY_POD_NAME
-          valueFrom:
-            fieldRef:
-              fieldPath: metadata.name
-        - name: SERVICE_ADDR
-          value: "{{ .Values.restoreOperator.name }}:{{ .Values.restoreOperator.port }}"
-        resources:
-          limits:
-            cpu: {{ .Values.restoreOperator.resources.cpu }}
-            memory: {{ .Values.restoreOperator.resources.memory }}
-          requests:
-            cpu: {{ .Values.restoreOperator.resources.cpu }}
-            memory: {{ .Values.restoreOperator.resources.memory }}
-    {{- if .Values.restoreOperator.nodeSelector }}
-      nodeSelector: {{ toYaml .Values.restoreOperator.nodeSelector | nindent 8 }}
-    {{- end }}
-    {{- if .Values.restoreOperator.securityContext }}
-      securityContext: {{ toYaml .Values.restoreOperator.securityContext | nindent 8 }}
-    {{- end }}
-    {{- if .Values.restoreOperator.tolerations }}
-      tolerations: {{ toYaml .Values.restoreOperator.tolerations | nindent 8 }}
-    {{- end }}
-{{- end }}
diff --git a/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/restore-operator-service.yaml b/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/templates/restore-operator-service.yaml
deleted file mode 100644 (file)
index 052be36..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-{{- if .Values.deployments.restoreOperator }}
----
-apiVersion: v1
-kind: Service
-metadata:
-  name: {{ .Values.restoreOperator.name }}
-  labels:
-    chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
-    app: {{ template "etcd-restore-operator.name" . }}
-    heritage: {{ .Release.Service }}
-    release: {{ .Release.Name }}
-spec:
-  ports:
-  - protocol: TCP
-    name: http-etcd-restore-port
-    port: {{ .Values.restoreOperator.port }}
-  selector:
-    app: {{ template "etcd-restore-operator.name" . }}
-    release: {{ .Release.Name }}
-{{- end }}
diff --git a/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/values.yaml b/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/etcd-operator/values.yaml
deleted file mode 100644 (file)
index 9094780..0000000
+++ /dev/null
@@ -1,162 +0,0 @@
-# Default values for etcd-operator.
-# This is a YAML-formatted file.
-# Declare variables to be passed into your templates.
-
-# Enable etcd-operator
-# To be used from parent operator package requirements.yaml
-enabled: true
-
-global:
-  ## Reference to one or more secrets to be used when pulling images
-  ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
-  ##
-  imagePullSecrets: []
-  # - name: "image-pull-secret"
-
-## Install Default RBAC roles and bindings
-rbac:
-  create: true
-  apiVersion: v1
-
-## Service account name and whether to create it
-serviceAccount:
-  create: true
-  name:
-
-# Select what to deploy
-deployments:
-  etcdOperator: true
-  # one time deployment, delete once completed,
-  # Ref: https://github.com/coreos/etcd-operator/blob/master/doc/user/walkthrough/backup-operator.md
-  backupOperator: false
-  # one time deployment, delete once completed
-  # Ref: https://github.com/coreos/etcd-operator/blob/master/doc/user/walkthrough/restore-operator.md
-  restoreOperator: false
-
-# creates custom resources, not all required,
-# you could use `helm template --values <values.yaml> --name release_name ... `
-# and create the resources yourself to deploy on your cluster later
-customResources:
-  createEtcdClusterCRD: true
-  createBackupCRD: false
-  createRestoreCRD: false
-
-# etcdOperator
-etcdOperator:
-  name: etcd-operator
-  replicaCount: 1
-  image:
-    repository: quay.io/coreos/etcd-operator
-    tag: v0.9.4
-    pullPolicy: Always
-  resources:
-    cpu: 100m
-    memory: 128Mi
-  ## Node labels for etcd-operator pod assignment
-  ## Ref: https://kubernetes.io/docs/user-guide/node-selection/
-  nodeSelector: {}
-  ## additional command arguments go here; will be translated to `--key=value` form
-  ## e.g., analytics: true
-  commandArgs: {}
-  ## Configurable health checks against the /readyz endpoint that etcd-operator exposes
-  readinessProbe:
-    enabled: false
-    initialDelaySeconds: 0
-    periodSeconds: 10
-    timeoutSeconds: 1
-    successThreshold: 1
-    failureThreshold: 3
-  livenessProbe:
-    enabled: false
-    initialDelaySeconds: 0
-    periodSeconds: 10
-    timeoutSeconds: 1
-    successThreshold: 1
-    failureThreshold: 3
-# backup spec
-backupOperator:
-  name: etcd-backup-operator
-  replicaCount: 1
-  image:
-    repository: quay.io/coreos/etcd-operator
-    tag: v0.9.4
-    pullPolicy: Always
-  resources:
-    cpu: 100m
-    memory: 128Mi
-  spec:
-    storageType: S3
-    s3:
-      s3Bucket:
-      awsSecret:
-  ## Node labels for etcd pod assignment
-  ## Ref: https://kubernetes.io/docs/user-guide/node-selection/
-  nodeSelector: {}
-  ## additional command arguments go here; will be translated to `--key=value` form
-  ## e.g., analytics: true
-  commandArgs: {}
-  securityContext: {}
-  tolerations: []
-
-# restore spec
-restoreOperator:
-  name: etcd-restore-operator
-  replicaCount: 1
-  image:
-    repository: quay.io/coreos/etcd-operator
-    tag: v0.9.4
-    pullPolicy: Always
-  port: 19999
-  resources:
-    cpu: 100m
-    memory: 128Mi
-  spec:
-    s3:
-      # The format of "path" must be: "<s3-bucket-name>/<path-to-backup-file>"
-      # e.g: "etcd-snapshot-bucket/v1/default/example-etcd-cluster/3.2.10_0000000000000001_etcd.backup"
-      path:
-      awsSecret:
-  ## Node labels for etcd pod assignment
-  ## Ref: https://kubernetes.io/docs/user-guide/node-selection/
-  nodeSelector: {}
-  ## additional command arguments go here; will be translated to `--key=value` form
-  ## e.g., analytics: true
-  commandArgs: {}
-  securityContext: {}
-  tolerations: []
-
-## etcd-cluster specific values
-etcdCluster:
-  name: etcd-cluster
-  size: 3
-  version: 3.3.3
-  image:
-    repository: quay.io/coreos/etcd
-    tag: v3.3.3
-    pullPolicy: Always
-  enableTLS: false
-  # TLS configs
-  tls:
-    static:
-      member:
-        peerSecret: etcd-peer-tls
-        serverSecret: etcd-server-tls
-      operatorSecret: etcd-client-tls
-  ## etcd cluster pod specific values
-  ## Ref: https://github.com/coreos/etcd-operator/blob/master/doc/user/spec_examples.md#three-members-cluster-with-resource-requirement
-  pod:
-    ## Antiaffinity for etcd pod assignment
-    ## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
-    antiAffinity: false
-    resources:
-      limits:
-        cpu: 100m
-        memory: 128Mi
-      requests:
-        cpu: 100m
-        memory: 128Mi
-    ## Node labels for etcd pod assignment
-    ## Ref: https://kubernetes.io/docs/user-guide/node-selection/
-    nodeSelector: {}
-    securityContext: {}
-    tolerations: []
diff --git a/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/m3db-operator/Chart.yaml b/kud/tests/vnfs/comp-app/collection/operators/helm/operator/charts/m3db-operator/Chart.yaml
deleted file mode 100644 (file)
index ebdc0b4..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-apiVersion: v1
-name: m3db-operator
-version: 0.1.3
-# TODO(PS) - helm has issues with GKE's SemVer
-# Error: Chart requires kubernetesVersion: >=1.10.6 which is incompatible with Kubernetes v1.10.7-gke.2
-#
-#kubeVersion: ">=1.10.7"
-description: Kubernetes operator for M3DB timeseries database
-keywords:
-  - operator
-  - m3
-home: https://github.com/m3db/m3db-operator
-sources:
-  - https://github.com/m3db/m3db-operator
-maintainers:
-  - name: m3 Authors
-    email: m3db@googlegroups.com
-    url: https://operator.m3db.io/
-engine: gotpl
-icon: https://raw.githubusercontent.com/m3db/m3/master/docs/theme/assets/images/M3-logo.png
-appVersion: ">0.4.7"
-tillerVersion: ">=2.11.0"
diff --git a/kud/tests/vnfs/comp-app/collection/operators/helm/operator/requirements.yaml b/kud/tests/vnfs/comp-app/collection/operators/helm/operator/requirements.yaml
deleted file mode 100644 (file)
index 8635dc4..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-dependencies:
-  - name: etcd-operator
-    condition: etcd-operator.enabled
-  # - name: visualization-operator
-  #   condition: visualization-operator.enabled
diff --git a/kud/tests/vnfs/comp-app/collection/operators/helm/operator/resources/m3db.labels b/kud/tests/vnfs/comp-app/collection/operators/helm/operator/resources/m3db.labels
deleted file mode 100644 (file)
index 4f1ddd5..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-kubectl label node/otconap6 failure-domain.beta.kubernetes.io/region=us-west1
-kubectl label node/otconap11 failure-domain.beta.kubernetes.io/region=us-west1
-kubectl label node/otccloud02 failure-domain.beta.kubernetes.io/region=us-west1
-
-kubectl label node/otconap6 failure-domain.beta.kubernetes.io/zone=us-west1-a --overwrite=true
-kubectl label node/otconap11 failure-domain.beta.kubernetes.io/zone=us-west1-b --overwrite=true
-kubectl label node/otccloud02 failure-domain.beta.kubernetes.io/zone=us-west1-c --overwrite=true
\ No newline at end of file
diff --git a/kud/tests/vnfs/comp-app/collection/operators/helm/operator/values.yaml b/kud/tests/vnfs/comp-app/collection/operators/helm/operator/values.yaml
deleted file mode 100644 (file)
index 071fa9a..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright © 2019 Intel Corporation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#       http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#################################################################
-# Global configuration defaults.
-#################################################################
-global:
-  nodePortPrefix: 310
-  repository: nexus3.onap.org:10001
-  readinessRepository: oomk8s
-  readinessImage: readiness-check:2.0.0
-  loggingRepository: docker.elastic.co
-  loggingImage: beats/filebeat:5.5.0
-
-#################################################################
-# k8s Operator Day-0 configuration defaults.
-#################################################################
-
-
-#################################################################
-# Enable or disable components
-#################################################################
-
-etcd-operator:
-  enabled: true
-  #visualization-operator:
-  #enabled: true