Sha256: 74be776ecb2e75216ac75d519426f543e7d5a37f7c789281f18a5f16ea951fef

Contents?: true

Size: 1.07 KB

Versions: 14

Compression:

Stored size: 1.07 KB

Contents

require 'log4r'
require 'json'

require 'vagrant-skytap/setup_helper'
require 'vagrant-skytap/util/timer'
require 'vagrant-skytap/api/environment'

require 'net/https'
require 'uri'
require 'base64'
require 'json'
require 'timeout'

module VagrantPlugins
  module Skytap
    module Action
      # Creates an environment from the template URL present in the config
      # file. Stores the new environment URL in the environment properties.
      class CreateEnvironment
        attr_reader :env

        def initialize(app, env)
          @app = app
          @env = env
          @logger = Log4r::Logger.new("vagrant_skytap::action::create_environment")
        end

        def call(env)
          environment = API::Environment.create!(env, vm_url)
          env[:environment] = environment
          environment.properties.write('url' => environment.url)
          env[:machine].id = environment.vms.first.id
          environment.wait_until_ready

          @app.call(env)
        end

        def vm_url
          env[:machine].provider_config.vm_url
        end
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
vagrant-skytap-0.2.2 lib/vagrant-skytap/action/create_environment.rb
vagrant-skytap-0.2.1 lib/vagrant-skytap/action/create_environment.rb
vagrant-skytap-0.2.0 lib/vagrant-skytap/action/create_environment.rb
vagrant-skytap-0.1.11 lib/vagrant-skytap/action/create_environment.rb
vagrant-skytap-0.1.10 lib/vagrant-skytap/action/create_environment.rb
vagrant-skytap-0.1.9 lib/vagrant-skytap/action/create_environment.rb
vagrant-skytap-0.1.8 lib/vagrant-skytap/action/create_environment.rb
vagrant-skytap-0.1.7 lib/vagrant-skytap/action/create_environment.rb
vagrant-skytap-0.1.6 lib/vagrant-skytap/action/create_environment.rb
vagrant-skytap-0.1.5 lib/vagrant-skytap/action/create_environment.rb
vagrant-skytap-0.1.4 lib/vagrant-skytap/action/create_environment.rb
vagrant-skytap-0.1.3 lib/vagrant-skytap/action/create_environment.rb
vagrant-skytap-0.1.2 lib/vagrant-skytap/action/create_environment.rb
vagrant-skytap-0.1.1a lib/vagrant-skytap/action/create_environment.rb