Sha256: 9e8b41ccf0a921bea6032fb5c4bbf02db68603c79224305426de5da7623af462

Contents?: true

Size: 1.67 KB

Versions: 1

Compression:

Stored size: 1.67 KB

Contents

require "spec_helper"
require "cloudstack-cli"

describe VirtualMachine do

  it "should support all CRUD actions" do
    vmname = "testvm1"

    # CREATE
    out, err = capture_io{ CloudstackCli::Cli.start [
      "vm",
      "create",
      vmname,
      "--zone=#{ZONE}",
      "--template=#{TEMPLATE}",
      "--offering=#{OFFERING_S}",
      "--networks=test-network",
      "--port-rules=:80",
      "--assumeyes"
    ]}
    err.must_equal ""

    # READ - LIST
    out, err = capture_io{ CloudstackCli::Cli.start [
      "vm",
      "list"
    ]}
    err.must_equal ""
    out.must_match(
      /.*(#{vmname}).*/
    )

    # READ - SHOW
    out, err = capture_io{ CloudstackCli::Cli.start [
      "vm",
      "show",
      vmname
    ]}
    err.must_equal ""
    out.must_match(
      /.*(#{vmname}).*/
    )

    # UPDATE - STOP
    out, err = capture_io{ CloudstackCli::Cli.start [
      "vm",
      "stop",
      vmname,
      "--force"
    ]}
    err.must_equal ""

    # UPDATE - UPDATE ;-)
    new_vmname = "testvm11"
    out, err = capture_io{ CloudstackCli::Cli.start [
      "vm",
      "update",
      vmname,
      "--name=#{new_vmname}",
      "--force"
    ]}
    err.must_equal ""

    # UPDATE - START
    out, err = capture_io{ CloudstackCli::Cli.start [
      "vm",
      "start",
      new_vmname
    ]}
    err.must_equal ""

    # UPDATE - REBOOT
    out, err = capture_io{ CloudstackCli::Cli.start [
      "vm",
      "reboot",
      new_vmname,
      "--force"
    ]}
    err.must_equal ""

    # DELETE
    out, err = capture_io{ CloudstackCli::Cli.start [
      "vm",
      "destroy",
      new_vmname,
      "--expunge",
      "--force"
    ]}
    err.must_equal ""
    
  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
cloudstack-cli-1.6.4 spec/cloudstack-cli/commands/virtual_machine_spec.rb