443 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			443 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 
								 | 
							
								@image @project
							 | 
						||
| 
								 | 
							
								Feature: Update images
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @openstack
							 | 
						||
| 
								 | 
							
								  Scenario: Update openstack image with ec2 provider
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["openstack"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": "ec2",
							 | 
						||
| 
								 | 
							
								      "name": "freebsd-10.0",
							 | 
						||
| 
								 | 
							
								      "remote_user": "root",
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": "chef_freebsd",
							 | 
						||
| 
								 | 
							
								      "id": "<%= @config["openstack"]["image"] %>"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '400'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @openstack
							 | 
						||
| 
								 | 
							
								  Scenario: Update openstack image with invalid provider
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["openstack"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": "foo",
							 | 
						||
| 
								 | 
							
								      "name": "freebsd-10.0",
							 | 
						||
| 
								 | 
							
								      "remote_user": "root",
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": "chef_freebsd",
							 | 
						||
| 
								 | 
							
								      "id": "<%= @config["openstack"]["image"] %>"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '400'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @openstack
							 | 
						||
| 
								 | 
							
								  Scenario: Update openstack image with invalid provider - array
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["openstack"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": ["foo"],
							 | 
						||
| 
								 | 
							
								      "name": "freebsd-10.0",
							 | 
						||
| 
								 | 
							
								      "remote_user": "root",
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": "chef_freebsd",
							 | 
						||
| 
								 | 
							
								      "id": "<%= @config["openstack"]["image"] %>"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '400'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @openstack
							 | 
						||
| 
								 | 
							
								  Scenario: Update openstack image with invalid provider - hash
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["openstack"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": {},
							 | 
						||
| 
								 | 
							
								      "name": "freebsd-10.0",
							 | 
						||
| 
								 | 
							
								      "remote_user": "root",
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": "chef_freebsd",
							 | 
						||
| 
								 | 
							
								      "id": "<%= @config["openstack"]["image"] %>"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '400'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @openstack
							 | 
						||
| 
								 | 
							
								  Scenario: Update openstack image with invalid name - hash
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["openstack"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": "openstack",
							 | 
						||
| 
								 | 
							
								      "name": {},
							 | 
						||
| 
								 | 
							
								      "remote_user": "root",
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": "chef_freebsd",
							 | 
						||
| 
								 | 
							
								      "id": "<%= @config["openstack"]["image"] %>"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '400'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @openstack
							 | 
						||
| 
								 | 
							
								  Scenario: Update openstack image with invalid name - array
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["openstack"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": "openstack",
							 | 
						||
| 
								 | 
							
								      "name": [],
							 | 
						||
| 
								 | 
							
								      "remote_user": "root",
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": "chef_freebsd",
							 | 
						||
| 
								 | 
							
								      "id": "<%= @config["openstack"]["image"] %>"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '400'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @openstack
							 | 
						||
| 
								 | 
							
								  Scenario: Update openstack image with invalid remote_user - hash
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["openstack"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": "openstack",
							 | 
						||
| 
								 | 
							
								      "name": "freebsd-10.0",
							 | 
						||
| 
								 | 
							
								      "remote_user": {},
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": "chef_freebsd",
							 | 
						||
| 
								 | 
							
								      "id": "<%= @config["openstack"]["image"] %>"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '400'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @openstack
							 | 
						||
| 
								 | 
							
								  Scenario: Update openstack image with invalid remote_user - array
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["openstack"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": "openstack",
							 | 
						||
| 
								 | 
							
								      "name": "freebsd-10.0",
							 | 
						||
| 
								 | 
							
								      "remote_user": [],
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": "chef_freebsd",
							 | 
						||
| 
								 | 
							
								      "id": "<%= @config["openstack"]["image"] %>"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '400'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @openstack
							 | 
						||
| 
								 | 
							
								  Scenario: Update openstack image with invalid bootstrap_template - array
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["openstack"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": "openstack",
							 | 
						||
| 
								 | 
							
								      "name": "freebsd-10.0",
							 | 
						||
| 
								 | 
							
								      "remote_user": "root",
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": [],
							 | 
						||
| 
								 | 
							
								      "id": "<%= @config["openstack"]["image"] %>"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '400'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @openstack
							 | 
						||
| 
								 | 
							
								  Scenario: Update openstack image with invalid bootstrap_template - hash
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["openstack"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": "openstack",
							 | 
						||
| 
								 | 
							
								      "name": "freebsd-10.0",
							 | 
						||
| 
								 | 
							
								      "remote_user": "root",
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": {},
							 | 
						||
| 
								 | 
							
								      "id": "<%= @config["openstack"]["image"] %>"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '400'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @openstack
							 | 
						||
| 
								 | 
							
								  Scenario: Update openstack image with invalid bootstrap_template - unknown
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["openstack"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": "openstack",
							 | 
						||
| 
								 | 
							
								      "name": "freebsd-10.0",
							 | 
						||
| 
								 | 
							
								      "remote_user": "root",
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": "unknown",
							 | 
						||
| 
								 | 
							
								      "id": "<%= @config["openstack"]["image"] %>"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '400'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @openstack
							 | 
						||
| 
								 | 
							
								  Scenario: Update openstack image with invalid id - array
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["openstack"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": "openstack",
							 | 
						||
| 
								 | 
							
								      "name": "freebsd-10.0",
							 | 
						||
| 
								 | 
							
								      "remote_user": "root",
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": "chef_freebsd",
							 | 
						||
| 
								 | 
							
								      "id": []
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '200'
							 | 
						||
| 
								 | 
							
								    And the Content-Type header should include 'application/json'
							 | 
						||
| 
								 | 
							
								    And the JSON response should be an object
							 | 
						||
| 
								 | 
							
								    And response should be JSON object like:
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "message" : "Image '<%= @config["openstack"]["image"] %>' has been updated"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @openstack
							 | 
						||
| 
								 | 
							
								  Scenario: Update openstack image with invalid id - hash
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["openstack"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": "openstack",
							 | 
						||
| 
								 | 
							
								      "name": "freebsd-10.0",
							 | 
						||
| 
								 | 
							
								      "remote_user": "root",
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": "chef_freebsd",
							 | 
						||
| 
								 | 
							
								      "id": {}
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '200'
							 | 
						||
| 
								 | 
							
								    And the Content-Type header should include 'application/json'
							 | 
						||
| 
								 | 
							
								    And the JSON response should be an object
							 | 
						||
| 
								 | 
							
								    And response should be JSON object like:
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "message" : "Image '<%= @config["openstack"]["image"] %>' has been updated"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @openstack
							 | 
						||
| 
								 | 
							
								  Scenario: Update openstack image
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["openstack"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": "openstack",
							 | 
						||
| 
								 | 
							
								      "name": "freebsd-10.0",
							 | 
						||
| 
								 | 
							
								      "remote_user": "root",
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": "chef_freebsd",
							 | 
						||
| 
								 | 
							
								      "id": "<%= @config["openstack"]["image"] %>"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '200'
							 | 
						||
| 
								 | 
							
								    And the Content-Type header should include 'application/json'
							 | 
						||
| 
								 | 
							
								    And the JSON response should be an object
							 | 
						||
| 
								 | 
							
								    And response should be JSON object like:
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "message" : "Image '<%= @config["openstack"]["image"] %>' has been updated"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @ec2
							 | 
						||
| 
								 | 
							
								  Scenario: Update ec2 image with openstack provider
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["ec2"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": "openstack",
							 | 
						||
| 
								 | 
							
								      "name": "test-ec2",
							 | 
						||
| 
								 | 
							
								      "remote_user": "ec2-user",
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": null,
							 | 
						||
| 
								 | 
							
								      "id": "<%= @config["ec2"]["image"] %>"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '400'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @ec2
							 | 
						||
| 
								 | 
							
								  Scenario: Update ec2 image with invalid provider
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["ec2"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": "foo",
							 | 
						||
| 
								 | 
							
								      "name": "test-ec2",
							 | 
						||
| 
								 | 
							
								      "remote_user": "ec2-user",
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": null,
							 | 
						||
| 
								 | 
							
								      "id": "<%= @config["ec2"]["image"] %>"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '400'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @ec2
							 | 
						||
| 
								 | 
							
								  Scenario: Update ec2 image with invalid provider - array
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["ec2"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": ["foo"],
							 | 
						||
| 
								 | 
							
								      "name": "test-ec2",
							 | 
						||
| 
								 | 
							
								      "remote_user": "ec2-user",
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": null,
							 | 
						||
| 
								 | 
							
								      "id": "<%= @config["ec2"]["image"] %>"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '400'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @ec2
							 | 
						||
| 
								 | 
							
								  Scenario: Update ec2 image with invalid provider - hash
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["ec2"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": {},
							 | 
						||
| 
								 | 
							
								      "name": "test-ec2",
							 | 
						||
| 
								 | 
							
								      "remote_user": "ec2-user",
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": null,
							 | 
						||
| 
								 | 
							
								      "id": "<%= @config["ec2"]["image"] %>"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '400'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @ec2
							 | 
						||
| 
								 | 
							
								  Scenario: Update ec2 image with invalid name - hash
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["ec2"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": "ec2",
							 | 
						||
| 
								 | 
							
								      "name": {},
							 | 
						||
| 
								 | 
							
								      "remote_user": "ec2-user",
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": null,
							 | 
						||
| 
								 | 
							
								      "id": "<%= @config["ec2"]["image"] %>"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '400'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @ec2
							 | 
						||
| 
								 | 
							
								  Scenario: Update ec2 image with invalid name - array
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["ec2"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": "ec2",
							 | 
						||
| 
								 | 
							
								      "name": [],
							 | 
						||
| 
								 | 
							
								      "remote_user": "ec2-user",
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": null,
							 | 
						||
| 
								 | 
							
								      "id": "<%= @config["ec2"]["image"] %>"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '400'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @ec2
							 | 
						||
| 
								 | 
							
								  Scenario: Update ec2 image with invalid remote_user - hash
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["ec2"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": "ec2",
							 | 
						||
| 
								 | 
							
								      "name": "test-ec2",
							 | 
						||
| 
								 | 
							
								      "remote_user": {},
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": null,
							 | 
						||
| 
								 | 
							
								      "id": "<%= @config["ec2"]["image"] %>"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '400'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @ec2
							 | 
						||
| 
								 | 
							
								  Scenario: Update ec2 image with invalid remote_user - array
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["ec2"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": "ec2",
							 | 
						||
| 
								 | 
							
								      "name": "test-ec2",
							 | 
						||
| 
								 | 
							
								      "remote_user": [],
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": null,
							 | 
						||
| 
								 | 
							
								      "id": "<%= @config["ec2"]["image"] %>"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '400'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @ec2
							 | 
						||
| 
								 | 
							
								  Scenario: Update ec2 image with invalid bootstrap_template - array
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["ec2"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": "ec2",
							 | 
						||
| 
								 | 
							
								      "name": "test-ec2",
							 | 
						||
| 
								 | 
							
								      "remote_user": "ec2-user",
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": [],
							 | 
						||
| 
								 | 
							
								      "id": "<%= @config["ec2"]["image"] %>"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '400'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @ec2
							 | 
						||
| 
								 | 
							
								  Scenario: Update ec2 image with invalid bootstrap_template - hash
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["ec2"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": "ec2",
							 | 
						||
| 
								 | 
							
								      "name": "test-ec2",
							 | 
						||
| 
								 | 
							
								      "remote_user": "ec2-user",
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": {},
							 | 
						||
| 
								 | 
							
								      "id": "<%= @config["ec2"]["image"] %>"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '400'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @ec2
							 | 
						||
| 
								 | 
							
								  Scenario: Update ec2 image with invalid bootstrap_template - unknown
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["ec2"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": "ec2",
							 | 
						||
| 
								 | 
							
								      "name": "test-ec2",
							 | 
						||
| 
								 | 
							
								      "remote_user": "ec2-user",
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": "unknown",
							 | 
						||
| 
								 | 
							
								      "id": "<%= @config["ec2"]["image"] %>"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '400'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @ec2
							 | 
						||
| 
								 | 
							
								  Scenario: Update ec2 image with invalid id - array
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["ec2"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": "ec2",
							 | 
						||
| 
								 | 
							
								      "name": "test-ec2",
							 | 
						||
| 
								 | 
							
								      "remote_user": "ec2-user",
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": null,
							 | 
						||
| 
								 | 
							
								      "id": []
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '200'
							 | 
						||
| 
								 | 
							
								    And the Content-Type header should include 'application/json'
							 | 
						||
| 
								 | 
							
								    And the JSON response should be an object
							 | 
						||
| 
								 | 
							
								    And response should be JSON object like:
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "message" : "Image '<%= @config["openstack"]["image"] %>' has been updated"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @ec2
							 | 
						||
| 
								 | 
							
								  Scenario: Update ec2 image with invalid id - hash
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["ec2"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": "ec2",
							 | 
						||
| 
								 | 
							
								      "name": "test-ec2",
							 | 
						||
| 
								 | 
							
								      "remote_user": "ec2-user",
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": null,
							 | 
						||
| 
								 | 
							
								      "id": {}
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '200'
							 | 
						||
| 
								 | 
							
								    And the Content-Type header should include 'application/json'
							 | 
						||
| 
								 | 
							
								    And the JSON response should be an object
							 | 
						||
| 
								 | 
							
								    And response should be JSON object like:
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "message" : "Image '<%= @config["openstack"]["image"] %>' has been updated"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  @ec2
							 | 
						||
| 
								 | 
							
								  Scenario: Update ec2 image
							 | 
						||
| 
								 | 
							
								    When I send PUT '/v2.0/image/<%= @config["ec2"]["image"] %>' query with JSON body
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "provider": "ec2",
							 | 
						||
| 
								 | 
							
								      "name": "test-ec2",
							 | 
						||
| 
								 | 
							
								      "remote_user": "ec2-user",
							 | 
						||
| 
								 | 
							
								      "bootstrap_template": null,
							 | 
						||
| 
								 | 
							
								      "id": "<%= @config["ec2"]["image"] %>"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    Then response should be '200'
							 | 
						||
| 
								 | 
							
								    And the Content-Type header should include 'application/json'
							 | 
						||
| 
								 | 
							
								    And the JSON response should be an object
							 | 
						||
| 
								 | 
							
								    And response should be JSON object like:
							 | 
						||
| 
								 | 
							
								    """
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								      "message" : "Image '<%= @config["openstack"]["image"] %>' has been updated"
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    """
							 |