Create a OS::Nova::Server resource

Registered by Steve Baker on 2013-03-14

Create a OS::Nova::Server resource

This resource should share the same code as AWS::EC2::Instance but its properties schema should be derived from the Nova REST instance creation API call.

According to the python-novaclient create call, the following properties are elible for being in the resource properties schema (with equivalent AWS properties in parethesis)
name
imageRef (ImageId)
flavorRef (InstanceType)
user_data (UserData)
metadata (Tags)
reservation_id
key_name (KeyName)
os:scheduler_hints (NovaSchedulerHints could then be removed from AWS::EC2::Instance)
config_drive
adminPass
security_groups (SecurityGroups)
personality
availability_zone (AvailabilityZone)
block_device_mapping
networks (NetworkInterfaces)

FnGetAtt should expose any information that a look-up on the instance provides.

Blueprint information

Status:
Complete
Approver:
Steven Hardy
Priority:
High
Drafter:
Steve Baker
Direction:
Approved
Assignee:
Steve Baker
Definition:
Approved
Series goal:
Accepted for havana
Implementation:
Implemented
Milestone target:
milestone icon 2013.2
Started by
Steven Dake on 2013-05-13
Completed by
Steven Hardy on 2013-09-03

Related branches

Sprints

Whiteboard

Gerrit topic: https://review.openstack.org/#q,topic:bp/native-nova-instance,n,z

Addressed by: https://review.openstack.org/31144
    Clarify a comment which says we require KeyName - which is incorrect

Addressed by: https://review.openstack.org/42543
    Move _delete_server to nova_utils

Addressed by: https://review.openstack.org/42544
    Move _deferred_server_statuses to nova_utils

Addressed by: https://review.openstack.org/42545
    Move _check_resize to nova_utils

Addressed by: https://review.openstack.org/42546
    Use nova_utils for keypair validation

Addressed by: https://review.openstack.org/42547
    Allow Description in properties schema

Addressed by: https://review.openstack.org/42548
    Implement native nova server resource

(?)

Work Items

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.