Metadata files templates for plugin V3

Add skeleton for plugin V3 which includes such new things like:

* deployment tasks
* node roles
* volumes

Implements: blueprint role-as-a-plugin
Change-Id: I791b8fc85bfe2b48ebdb0f472137f82376c48475
This commit is contained in:
Andriy Popovych 2015-07-10 11:46:09 +03:00 committed by Igor Kalnitsky
parent 88a791e8ea
commit 9536fa4213
6 changed files with 60 additions and 26 deletions

View File

@ -0,0 +1,38 @@
# These tasks will be merged into deployment graph. Here you
# can specify new tasks for any roles, even built-in ones.
- id: ${plugin_name}
type: group
role: [${plugin_name}]
- id: ${plugin_name}-deployment-puppet
type: puppet
groups: [${plugin_name}]
required_for: [deploy_end]
requires: [deploy_start]
parameters:
puppet_manifest: "deploy.pp"
puppet_modules: ""
timeout: 3600
#- id: ${plugin_name}-post-deployment-sh
# type: shell
# role: [${plugin_name}]
# required_for: [post_deployment_end]
# requires: [post_deployment_start]
# parameters:
# cmd: echo post_deployment_task_executed > /tmp/post_deployment
# retries: 3
# interval: 20
# timeout: 180
#- id: ${plugin_name}-pre-deployment-sh
# type: shell
# role: [${plugin_name}]
# required_for: [pre_deployment_end]
# requires: [pre_deployment_start]
# parameters:
# cmd: echo pre_deployment_task_executed > /tmp/pre_deployment
# retries: 3
# interval: 20
# timeout: 180

View File

@ -22,12 +22,12 @@ groups: []
releases:
- os: ubuntu
version: 2014.2-7.0
mode: ['ha', 'multinode']
mode: ['ha']
deployment_scripts_path: deployment_scripts/
repository_path: repositories/ubuntu
- os: centos
version: 2014.2-7.0
mode: ['ha', 'multinode']
mode: ['ha']
deployment_scripts_path: deployment_scripts/
repository_path: repositories/centos

View File

@ -0,0 +1,13 @@
${plugin_name}:
# Role name
name: "Set here the name for the role. This name will be displayed in the Fuel web UI"
# Role description
description: "Write description for your role"
# If primaty then during orchestration this role will be
# splitted into primary-role and role
has_primary: false
# Assign public IP to node if true
public_ip_required: false
# Weight that will be used to sort out the
# roles on the Fuel web UI
weight: 1000

View File

@ -1,23 +0,0 @@
# This tasks will be applied on controller nodes,
# here you can also specify several roles, for example
# ['cinder', 'compute'] will be applied only on
# cinder and compute nodes
- role: ['controller']
stage: post_deployment
type: shell
parameters:
cmd: ./deploy.sh
timeout: 42
# Task is applied for all roles
- role: '*'
stage: pre_deployment
type: shell
parameters:
cmd: echo all > /tmp/plugin.all
timeout: 42
# "reboot" task reboots the nodes and waits until they get back online
# - role: '*'
# stage: pre_deployment
# type: reboot
# parameters:
# timeout: 600

View File

@ -0,0 +1,6 @@
volumes_roles_mapping:
${plugin_name}:
# Default role mapping
- {allocate_size: "min", id: "os"}
volumes:
# Set here new volumes for your role

View File

@ -20,7 +20,7 @@ from fuel_plugin_builder import errors
from fuel_plugin_builder import utils
latest_version = '2.0.0'
latest_version = '3.0.0'
def get_mapping():