summaryrefslogtreecommitdiffstats
path: root/k8s/k8splugin-type.yaml
diff options
context:
space:
mode:
authorHansen, Tony (th1395) <th1395@att.com>2020-06-09 18:27:12 +0000
committerHansen, Tony (th1395) <th1395@att.com>2020-06-09 18:27:47 +0000
commitc5abb9b34468400bdcdd3ce23595af41ac03cd80 (patch)
tree98a6442fa910166638d644dd07358629883a59fd /k8s/k8splugin-type.yaml
parent2c78a2e1161c0f2ccfc0ab7cc7a588e4e918f9de (diff)
rename typefiles to be consistent with nexus
Change-Id: Iebfda41db8225db233d0ff0f41e197d2e4cc0688 Signed-off-by: Hansen, Tony (th1395) <th1395@att.com> Issue-ID: DCAEGEN2-2207
Diffstat (limited to 'k8s/k8splugin-type.yaml')
-rw-r--r--k8s/k8splugin-type.yaml282
1 files changed, 0 insertions, 282 deletions
diff --git a/k8s/k8splugin-type.yaml b/k8s/k8splugin-type.yaml
deleted file mode 100644
index af50e70..0000000
--- a/k8s/k8splugin-type.yaml
+++ /dev/null
@@ -1,282 +0,0 @@
-# ================================================================================
-# Copyright (c) 2017-2020 AT&T Intellectual Property. All rights reserved.
-# Copyright (c) 2020 Pantheon.tech. All rights reserved.
-# ================================================================================
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-# ============LICENSE_END=========================================================
-#
-
-tosca_definitions_version: cloudify_dsl_1_3
-
-plugins:
- k8s:
- executor: 'central_deployment_agent'
- package_name: k8splugin
- package_version: 3.0.0
-
-data_types:
-
- dcae.types.LoggingInfo:
- description: >
- Information for setting up centralized logging via ELK using a "sidecar" container.
- If 'log_directory' is not provided, the plugin will not set up ELK logging.
- (The properties all have to be declared as not required, otherwise the
- 'log_info' property on the node would also be required.)
- properties:
- log_directory:
- description: >
- The path in the container where the component writes its logs.
- If the component is following the EELF requirements, this would be
- the directory where the four EELF files are being written.
- (Other logs can be placed in the directory--if their names in '.log',
- they'll also be sent into ELK.)
- type: string
- required: false
- alternate_fb_path:
- description: >
- Hope not to use this. By default, the plugin will mount the log volume
- at /var/log/onap/<component_type> in the sidecar container's file system.
- 'alternate_fb_path' allows overriding the default. Will affect how the log
- data can be found in the ELK system.
- type: string
- required: false
-
- dcae.types.TLSInfo:
- description: >
- Information for using TLS (HTTPS). (The properties all have to be declared as not
- required, otherwise the tls_info property on the node would also be required.)
- properties:
- cert_directory:
- description: >
- The path in the container where the component expects to find TLS-related data.
- type: string
- required: false
- use_tls:
- description: >
- Flag indicating whether TLS (HTTPS) is to be used
- type: boolean
- required: false
-
-node_types:
- dcae.nodes.ContainerizedComponent:
- # Base type for all containerized components
- # Captures common properties and interfaces
- derived_from: cloudify.nodes.Root
- properties:
- image:
- type: string
- description: Full uri of the Docker image
-
- application_config:
- default: {}
- description: >
- Application configuration for this component. The data structure is
- expected to be a complex map (native YAML) and to be constructed and filled
- by the creator of the blueprint.
-
- docker_config:
- default: {}
- description: >
- Copied from the auxiliary portion of the component spec that contains things
- like healthcheck definitions for the component. Health checks are
- optional.
-
- resource_config:
- default: {}
- description: >
- This is used to specify the cpu and memory request and limit for container.
- Please specify "requests" property and/or a "limits" property, with subproproperties
- for cpu and memory. (https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/)
-
- log_info:
- type: dcae.types.LoggingInfo
- description: >
- Information for setting up centralized logging via ELK.
- required: false
-
- tls_info:
- type: dcae.types.TLSInfo
- description: >
- Information for setting up TLS (HTTPS).
- required: false
-
- replicas:
- type: integer
- description: >
- The number of instances of the component that should be launched initially
- default: 1
-
- always_pull_image:
- type: boolean
- description: >
- Set to true if the orchestrator should always pull a new copy of the image
- before deploying. By default the orchestrator pulls only if the image is
- not already present on the host where the container is being launched.
- default: false
-
- location_id:
- type: string
- description: >
- The identifier for the location where the component is to be deployed.
- If absent, the plugin uses its configured default location, typically the location
- where the plugin is running (the central site). Also used to supply a location to
- the DMaaP bus controller if the component is being provisioned as a publisher or
- subscriber to a DMaaP feed or topic.
- required: false
-
- interfaces:
- dcae.interfaces.update:
- scale:
- implementation: k8s.k8splugin.scale
- update_image:
- implementation: k8s.k8splugin.update_image
-
- # The ContainerizedServiceComponent node type is to be used for DCAE service components.
- #
- # The plugin deploys the component into a Kubernetes cluster with a very specific choice
- # of Kubernetes elements that are deliberately not under the control of the blueprint author.
- # The idea is to deploy all service components in a consistent way, with the details abstracted
- # away from the blueprint author. The plugin is responsible for:
- # * Generation of the service component name
- # * Managing of service component configuration information
- dcae.nodes.ContainerizedServiceComponent:
- derived_from: dcae.nodes.ContainerizedComponent
- properties:
- service_component_type:
- type: string
- description: Service component type of the application being run in the container
-
- service_id:
- type: string
- description: >
- Unique id for this DCAE service instance this component belongs to. This value
- will be applied as a tag in the registration of this component with Consul.
- default: Null
-
- location_id:
- type: string
- description: >
- Location id of where to run the container. Not used by the plugin. Here for backward compatibility.
- default: Null
- required: False
-
- service_component_name_override:
- type: string
- description: >
- Manually override and set the name for this component. If this
- is set, then the name will not be auto-generated. Using this feature provides
- a service component with a fixed name that's known in advance, but care must be taken
- to avoid attempting to deploy two components with the same name. If the component
- exposes any ports, the k8s Service created by the plugin will use service_component_name_override
- as the DNS host name.
- default: Null
-
- interfaces:
- cloudify.interfaces.lifecycle:
- create:
- # Generate service component name and populate config into Consul
- implementation: k8s.k8splugin.create_for_components
- start:
- # Create k8s entities for the component and start
- implementation: k8s.k8splugin.create_and_start_container_for_components
- stop:
- # Stop and remove k8s entities associated with the component
- implementation: k8s.k8splugin.stop_and_remove_container
- delete:
- # Delete configuration from Consul
- implementation: k8s.k8splugin.cleanup_discovery
- dcae.interfaces.policy:
- # This is to be invoked by the policy handler upon policy updates
- policy_update:
- implementation: k8s.k8splugin.policy_update
-
- # This node type is intended for DCAE service components that use DMaaP and must use the
- # DMaaP plugin.
- dcae.nodes.ContainerizedServiceComponentUsingDmaap:
- derived_from: dcae.nodes.ContainerizedServiceComponent
- properties:
- streams_publishes:
- description: >
- List of DMaaP streams used for publishing.
-
- Message router items look like:
-
- name: topic00
- location: mtc5
- client_role: XXXX
- type: message_router
-
- Data router items look like:
-
- name: feed00
- location: mtc5
- type: data_router
-
- This information is forwarded to the dmaap plugin to provision
- default: []
- streams_subscribes:
- description: >
- List of DMaaP streams used for subscribing.
-
- Message router items look like:
-
- name: topic00
- location: mtc5
- client_role: XXXX
- type: message_router
-
- Data router items look like:
-
- name: feed00
- location: mtc5
- type: data_router
- username: king
- password: 123456
- route: some-path
- scheme: https
-
- Note that username and password is optional. If not provided or null then the
- plugin will generate them.
-
- default: []
- interfaces:
- cloudify.interfaces.lifecycle:
- create:
- # Generate service component name, populate config into Consul, set up runtime properties for DMaaP plugin
- implementation: k8s.k8splugin.create_for_components_with_streams
-
- # ContainerizedApplication is intended to be more of an all-purpose Docker container node
- # for non-componentized applications.
- dcae.nodes.ContainerizedApplication:
- derived_from: cloudify.nodes.Root
- properties:
- name:
- type: string
- description: Name of the Docker container to be given
- image:
- type: string
- description: Full uri of the Docker image
- interfaces:
- cloudify.interfaces.lifecycle:
- start:
- # Create Docker container and start
- implementation: k8s.k8splugin.create_and_start_container
- stop:
- # Stop and remove Docker container
- implementation: k8s.k8splugin.stop_and_remove_container
- dcae.interfaces.scale:
- scale:
- implementation: k8s.k8splugin.scale
- dcae.interfaces.update:
- update_image:
- implementation: k8s.k8splugin.update_image