vagrant-scaleway 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +11 -4
- data/lib/vagrant-scaleway/action.rb +28 -1
- data/lib/vagrant-scaleway/action/create_server.rb +18 -9
- data/lib/vagrant-scaleway/action/destroy_server.rb +1 -2
- data/lib/vagrant-scaleway/action/list_bootscripts.rb +22 -0
- data/lib/vagrant-scaleway/action/list_images.rb +24 -0
- data/lib/vagrant-scaleway/action/list_security_groups.rb +22 -0
- data/lib/vagrant-scaleway/action/stop_server.rb +1 -2
- data/lib/vagrant-scaleway/command/bootscripts.rb +21 -0
- data/lib/vagrant-scaleway/command/images.rb +21 -0
- data/lib/vagrant-scaleway/command/root.rb +69 -0
- data/lib/vagrant-scaleway/command/security_groups.rb +21 -0
- data/lib/vagrant-scaleway/config.rb +3 -3
- data/lib/vagrant-scaleway/plugin.rb +5 -0
- data/lib/vagrant-scaleway/version.rb +1 -1
- data/{dummy.box → scaleway.box} +0 -0
- metadata +10 -3
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 7193eabc56d0f452064f85e342b7b845557d25b7
         | 
| 4 | 
            +
              data.tar.gz: 5250b4df9ae07cc85c570480a715949edd45acab
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 7d38faaa297dbd510c2ece0380451b9613c2d3cec29b3d7ed258a3843661468c0aa9707d9cf1e34b10718ca923faa8374ea9108ff949af2c4e6b516815a8e7a5
         | 
| 7 | 
            +
              data.tar.gz: 4b6f758fbddbb7da3c3982d4a8637264b241e62ea36f321d2a0ccb1a7c143b5847ac20eb8f88dcab24dd10801abdb19fd52688a27d6f454eb89f69456ee18a77
         | 
    
        data/README.md
    CHANGED
    
    | @@ -1,10 +1,11 @@ | |
| 1 1 | 
             
            # Vagrant Scaleway Provider
         | 
| 2 2 |  | 
| 3 3 | 
             
            [](https://rubygems.org/gems/vagrant-scaleway)
         | 
| 4 | 
            +
            [](https://gemnasium.com/kaorimatz/vagrant-scaleway)
         | 
| 4 5 |  | 
| 5 | 
            -
            This is a [Vagrant](http://www.vagrantup.com/) plugin that adds a | 
| 6 | 
            -
            provider to Vagrant, allowing Vagrant to | 
| 7 | 
            -
            Scaleway.
         | 
| 6 | 
            +
            This is a [Vagrant](http://www.vagrantup.com/) plugin that adds a
         | 
| 7 | 
            +
            [Scaleway](https://www.scaleway.com/) provider to Vagrant, allowing Vagrant to
         | 
| 8 | 
            +
            control and provision machines in Scaleway.
         | 
| 8 9 |  | 
| 9 10 | 
             
            ## Features
         | 
| 10 11 |  | 
| @@ -16,7 +17,8 @@ Scaleway. | |
| 16 17 | 
             
            ## Prerequisites
         | 
| 17 18 |  | 
| 18 19 | 
             
            Prior to using this plugin, you will first need to create an API token and
         | 
| 19 | 
            -
            identify your organization ID. Please see the following help for | 
| 20 | 
            +
            identify your organization ID. Please see the following help pages for
         | 
| 21 | 
            +
            instructions.
         | 
| 20 22 |  | 
| 21 23 | 
             
            - [How to generate an API token](https://www.scaleway.com/docs/generate-an-api-token/)
         | 
| 22 24 | 
             
            - [How to retrieve my organization ID through the API](https://www.scaleway.com/docs/retrieve-my-organization-id-throught-the-api/)
         | 
| @@ -46,6 +48,11 @@ And then run `vagrant up` and specify the `scaleway` provider: | |
| 46 48 |  | 
| 47 49 | 
             
                $ vagrant up --provider=scaleway
         | 
| 48 50 |  | 
| 51 | 
            +
            ## Configurations
         | 
| 52 | 
            +
             | 
| 53 | 
            +
            Please see the [RubyDoc](http://www.rubydoc.info/gems/vagrant-scaleway/VagrantPlugins/Scaleway/Config)
         | 
| 54 | 
            +
            for the list of provider-specific configuration options.
         | 
| 55 | 
            +
             | 
| 49 56 | 
             
            ## Development
         | 
| 50 57 |  | 
| 51 58 | 
             
            To work on the `vagrant-scaleway` plugin, clone this repository out, and use
         | 
| @@ -159,12 +159,40 @@ module VagrantPlugins | |
| 159 159 | 
             
                    end
         | 
| 160 160 | 
             
                  end
         | 
| 161 161 |  | 
| 162 | 
            +
                  # This action is called to list available bootscripts.
         | 
| 163 | 
            +
                  def self.action_list_bootscripts
         | 
| 164 | 
            +
                    Vagrant::Action::Builder.new.tap do |b|
         | 
| 165 | 
            +
                      b.use ConnectScaleway
         | 
| 166 | 
            +
                      b.use ListBootscripts
         | 
| 167 | 
            +
                    end
         | 
| 168 | 
            +
                  end
         | 
| 169 | 
            +
             | 
| 170 | 
            +
                  # This action is called to list available images.
         | 
| 171 | 
            +
                  def self.action_list_images
         | 
| 172 | 
            +
                    Vagrant::Action::Builder.new.tap do |b|
         | 
| 173 | 
            +
                      b.use ConnectScaleway
         | 
| 174 | 
            +
                      b.use ListImages
         | 
| 175 | 
            +
                    end
         | 
| 176 | 
            +
                  end
         | 
| 177 | 
            +
             | 
| 178 | 
            +
                  # This action is called to list available security groups.
         | 
| 179 | 
            +
                  def self.action_list_security_groups
         | 
| 180 | 
            +
                    Vagrant::Action::Builder.new.tap do |b|
         | 
| 181 | 
            +
                      b.use ConnectScaleway
         | 
| 182 | 
            +
                      b.use ListSecurityGroups
         | 
| 183 | 
            +
                    end
         | 
| 184 | 
            +
                  end
         | 
| 185 | 
            +
             | 
| 162 186 | 
             
                  # The autoload farm
         | 
| 163 187 | 
             
                  action_root = Pathname.new(File.expand_path('../action', __FILE__))
         | 
| 164 188 | 
             
                  autoload :ConnectScaleway, action_root.join('connect_scaleway')
         | 
| 165 189 | 
             
                  autoload :CreateServer, action_root.join('create_server')
         | 
| 190 | 
            +
                  autoload :DestroyServer, action_root.join('destroy_server')
         | 
| 166 191 | 
             
                  autoload :IsCreated, action_root.join('is_created')
         | 
| 167 192 | 
             
                  autoload :IsStopped, action_root.join('is_stopped')
         | 
| 193 | 
            +
                  autoload :ListBootscripts, action_root.join('list_bootscripts')
         | 
| 194 | 
            +
                  autoload :ListImages, action_root.join('list_images')
         | 
| 195 | 
            +
                  autoload :ListSecurityGroups, action_root.join('list_security_groups')
         | 
| 168 196 | 
             
                  autoload :MessageAlreadyCreated, action_root.join('message_already_created')
         | 
| 169 197 | 
             
                  autoload :MessageNotCreated, action_root.join('message_not_created')
         | 
| 170 198 | 
             
                  autoload :MessageWillNotDestroy, action_root.join('message_will_not_destroy')
         | 
| @@ -173,7 +201,6 @@ module VagrantPlugins | |
| 173 201 | 
             
                  autoload :StartServer, action_root.join('start_server')
         | 
| 174 202 | 
             
                  autoload :StopServer, action_root.join('stop_server')
         | 
| 175 203 | 
             
                  autoload :WarnNetworks, action_root.join('warn_networks')
         | 
| 176 | 
            -
                  autoload :DestroyServer, action_root.join('destroy_server')
         | 
| 177 204 | 
             
                end
         | 
| 178 205 | 
             
              end
         | 
| 179 206 | 
             
            end
         | 
| @@ -54,20 +54,29 @@ module VagrantPlugins | |
| 54 54 | 
             
                              response: e.response.body
         | 
| 55 55 | 
             
                      end
         | 
| 56 56 |  | 
| 57 | 
            +
                      @logger.info("Machine '#{name}' created.")
         | 
| 58 | 
            +
             | 
| 57 59 | 
             
                      # Immediately save the ID since it is created at this point.
         | 
| 58 60 | 
             
                      env[:machine].id = server.id
         | 
| 59 61 |  | 
| 60 | 
            -
                       | 
| 61 | 
            -
             | 
| 62 | 
            -
                      rescue Exception => e
         | 
| 63 | 
            -
                        # Delete the server
         | 
| 64 | 
            -
                        terminate(env)
         | 
| 62 | 
            +
                      # destroy the server if we were interrupted
         | 
| 63 | 
            +
                      destroy(env) if env[:interrupted]
         | 
| 65 64 |  | 
| 66 | 
            -
             | 
| 67 | 
            -
             | 
| 65 | 
            +
                      @app.call(env)
         | 
| 66 | 
            +
                    end
         | 
| 67 | 
            +
             | 
| 68 | 
            +
                    def recover(env)
         | 
| 69 | 
            +
                      return if env['vagrant.error'].is_a?(Vagrant::Errors::VagrantError)
         | 
| 70 | 
            +
             | 
| 71 | 
            +
                      destroy(env) if env[:machine].provider.state.id != :not_created
         | 
| 72 | 
            +
                    end
         | 
| 68 73 |  | 
| 69 | 
            -
             | 
| 70 | 
            -
                       | 
| 74 | 
            +
                    def destroy(env)
         | 
| 75 | 
            +
                      destroy_env = env.dup
         | 
| 76 | 
            +
                      destroy_env.delete(:interrupted)
         | 
| 77 | 
            +
                      destroy_env[:config_validate] = false
         | 
| 78 | 
            +
                      destroy_env[:force_confirm_destroy] = true
         | 
| 79 | 
            +
                      env[:action_runner].run(Action.action_destroy, destroy_env)
         | 
| 71 80 | 
             
                    end
         | 
| 72 81 | 
             
                  end
         | 
| 73 82 | 
             
                end
         | 
| @@ -0,0 +1,22 @@ | |
| 1 | 
            +
            module VagrantPlugins
         | 
| 2 | 
            +
              module Scaleway
         | 
| 3 | 
            +
                module Action
         | 
| 4 | 
            +
                  class ListBootscripts
         | 
| 5 | 
            +
                    def initialize(app, _env)
         | 
| 6 | 
            +
                      @app = app
         | 
| 7 | 
            +
                    end
         | 
| 8 | 
            +
             | 
| 9 | 
            +
                    def call(env)
         | 
| 10 | 
            +
                      compute = env[:scaleway_compute]
         | 
| 11 | 
            +
             | 
| 12 | 
            +
                      env[:ui].info('%-37s %-7s %s' % ['Bootscript ID', 'Arch', 'Bootscript Title'], prefix: false)
         | 
| 13 | 
            +
                      compute.bootscripts.sort_by(&:title).each do |bootscript|
         | 
| 14 | 
            +
                        env[:ui].info('%-37s %-7s %s' % [bootscript.id, bootscript.architecture, bootscript.title], prefix: false)
         | 
| 15 | 
            +
                      end
         | 
| 16 | 
            +
             | 
| 17 | 
            +
                      @app.call(env)
         | 
| 18 | 
            +
                    end
         | 
| 19 | 
            +
                  end
         | 
| 20 | 
            +
                end
         | 
| 21 | 
            +
              end
         | 
| 22 | 
            +
            end
         | 
| @@ -0,0 +1,24 @@ | |
| 1 | 
            +
            module VagrantPlugins
         | 
| 2 | 
            +
              module Scaleway
         | 
| 3 | 
            +
                module Action
         | 
| 4 | 
            +
                  class ListImages
         | 
| 5 | 
            +
                    def initialize(app, _env)
         | 
| 6 | 
            +
                      @app = app
         | 
| 7 | 
            +
                    end
         | 
| 8 | 
            +
             | 
| 9 | 
            +
                    def call(env)
         | 
| 10 | 
            +
                      compute = env[:scaleway_compute]
         | 
| 11 | 
            +
             | 
| 12 | 
            +
                      env[:ui].info('%-37s %-26s %-7s %-36s %s' % ['Image ID', 'Created At', 'Arch', 'Default Bootscript', 'Image Name'], prefix: false)
         | 
| 13 | 
            +
                      compute.images.sort_by(&:name).each do |image|
         | 
| 14 | 
            +
                        created_at = Time.parse(image.creation_date)
         | 
| 15 | 
            +
                        bootscript = image.default_bootscript.title
         | 
| 16 | 
            +
                        env[:ui].info('%-37s %-26s %-7s %-36s %s' % [image.id, created_at, image.arch, bootscript, image.name], prefix: false)
         | 
| 17 | 
            +
                      end
         | 
| 18 | 
            +
             | 
| 19 | 
            +
                      @app.call(env)
         | 
| 20 | 
            +
                    end
         | 
| 21 | 
            +
                  end
         | 
| 22 | 
            +
                end
         | 
| 23 | 
            +
              end
         | 
| 24 | 
            +
            end
         | 
| @@ -0,0 +1,22 @@ | |
| 1 | 
            +
            module VagrantPlugins
         | 
| 2 | 
            +
              module Scaleway
         | 
| 3 | 
            +
                module Action
         | 
| 4 | 
            +
                  class ListSecurityGroups
         | 
| 5 | 
            +
                    def initialize(app, _env)
         | 
| 6 | 
            +
                      @app = app
         | 
| 7 | 
            +
                    end
         | 
| 8 | 
            +
             | 
| 9 | 
            +
                    def call(env)
         | 
| 10 | 
            +
                      compute = env[:scaleway_compute]
         | 
| 11 | 
            +
             | 
| 12 | 
            +
                      env[:ui].info('%-37s %s' % ['Security Group ID', 'Security Group Name'], prefix: false)
         | 
| 13 | 
            +
                      compute.security_groups.sort_by(&:name).each do |security_group|
         | 
| 14 | 
            +
                        env[:ui].info('%-37s %s' % [security_group.id, security_group.name], prefix: false)
         | 
| 15 | 
            +
                      end
         | 
| 16 | 
            +
             | 
| 17 | 
            +
                      @app.call(env)
         | 
| 18 | 
            +
                    end
         | 
| 19 | 
            +
                  end
         | 
| 20 | 
            +
                end
         | 
| 21 | 
            +
              end
         | 
| 22 | 
            +
            end
         | 
| @@ -0,0 +1,21 @@ | |
| 1 | 
            +
            module VagrantPlugins
         | 
| 2 | 
            +
              module Scaleway
         | 
| 3 | 
            +
                module Command
         | 
| 4 | 
            +
                  class Bootscripts < Vagrant.plugin('2', :command)
         | 
| 5 | 
            +
                    def execute
         | 
| 6 | 
            +
                      options = {}
         | 
| 7 | 
            +
                      opts = OptionParser.new do |o|
         | 
| 8 | 
            +
                        o.banner = 'Usage: vagrant scaleway bootscripts [options]'
         | 
| 9 | 
            +
                      end
         | 
| 10 | 
            +
             | 
| 11 | 
            +
                      argv = parse_options(opts)
         | 
| 12 | 
            +
                      return unless argv
         | 
| 13 | 
            +
             | 
| 14 | 
            +
                      with_target_vms(argv, provider: :scaleway) do |machine|
         | 
| 15 | 
            +
                        machine.action('list_bootscripts')
         | 
| 16 | 
            +
                      end
         | 
| 17 | 
            +
                    end
         | 
| 18 | 
            +
                  end
         | 
| 19 | 
            +
                end
         | 
| 20 | 
            +
              end
         | 
| 21 | 
            +
            end
         | 
| @@ -0,0 +1,21 @@ | |
| 1 | 
            +
            module VagrantPlugins
         | 
| 2 | 
            +
              module Scaleway
         | 
| 3 | 
            +
                module Command
         | 
| 4 | 
            +
                  class Images < Vagrant.plugin('2', :command)
         | 
| 5 | 
            +
                    def execute
         | 
| 6 | 
            +
                      options = {}
         | 
| 7 | 
            +
                      opts = OptionParser.new do |o|
         | 
| 8 | 
            +
                        o.banner = 'Usage: vagrant scaleway images [options]'
         | 
| 9 | 
            +
                      end
         | 
| 10 | 
            +
             | 
| 11 | 
            +
                      argv = parse_options(opts)
         | 
| 12 | 
            +
                      return unless argv
         | 
| 13 | 
            +
             | 
| 14 | 
            +
                      with_target_vms(argv, provider: :scaleway) do |machine|
         | 
| 15 | 
            +
                        machine.action('list_images')
         | 
| 16 | 
            +
                      end
         | 
| 17 | 
            +
                    end
         | 
| 18 | 
            +
                  end
         | 
| 19 | 
            +
                end
         | 
| 20 | 
            +
              end
         | 
| 21 | 
            +
            end
         | 
| @@ -0,0 +1,69 @@ | |
| 1 | 
            +
            require 'vagrant-scaleway/action'
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            module VagrantPlugins
         | 
| 4 | 
            +
              module Scaleway
         | 
| 5 | 
            +
                module Command
         | 
| 6 | 
            +
                  class Root < Vagrant.plugin('2', :command)
         | 
| 7 | 
            +
                    def self.synopsis
         | 
| 8 | 
            +
                      'queries Scaleway for available resources'
         | 
| 9 | 
            +
                    end
         | 
| 10 | 
            +
             | 
| 11 | 
            +
                    def initialize(argv, env)
         | 
| 12 | 
            +
                      @main_args, @sub_command, @sub_args = split_main_and_subcommand(argv)
         | 
| 13 | 
            +
             | 
| 14 | 
            +
                      @subcommands = Vagrant::Registry.new
         | 
| 15 | 
            +
                      @subcommands.register(:bootscripts) do
         | 
| 16 | 
            +
                        require File.expand_path('../bootscripts', __FILE__)
         | 
| 17 | 
            +
                        Bootscripts
         | 
| 18 | 
            +
                      end
         | 
| 19 | 
            +
                      @subcommands.register(:images) do
         | 
| 20 | 
            +
                        require File.expand_path('../images', __FILE__)
         | 
| 21 | 
            +
                        Images
         | 
| 22 | 
            +
                      end
         | 
| 23 | 
            +
                      @subcommands.register(:'security-groups') do
         | 
| 24 | 
            +
                        require File.expand_path('../security_groups', __FILE__)
         | 
| 25 | 
            +
                        SecurityGroups
         | 
| 26 | 
            +
                      end
         | 
| 27 | 
            +
             | 
| 28 | 
            +
                      super(argv, env)
         | 
| 29 | 
            +
                    end
         | 
| 30 | 
            +
             | 
| 31 | 
            +
                    def execute
         | 
| 32 | 
            +
                      if @main_args.include?('-h') || @main_args.include?('--help')
         | 
| 33 | 
            +
                        # Print the help for all the scaleway commands.
         | 
| 34 | 
            +
                        return help
         | 
| 35 | 
            +
                      end
         | 
| 36 | 
            +
             | 
| 37 | 
            +
                      command_class = @subcommands.get(@sub_command.to_sym) if @sub_command
         | 
| 38 | 
            +
                      return help if !command_class || !@sub_command
         | 
| 39 | 
            +
                      @logger.debug("Invoking command class: #{command_class} #{@sub_args.inspect}")
         | 
| 40 | 
            +
             | 
| 41 | 
            +
                      # Initialize and execute the command class
         | 
| 42 | 
            +
                      command_class.new(@sub_args, @env).execute
         | 
| 43 | 
            +
                    end
         | 
| 44 | 
            +
             | 
| 45 | 
            +
                    def help
         | 
| 46 | 
            +
                      opts = OptionParser.new do |opts|
         | 
| 47 | 
            +
                        opts.banner = 'Usage: vagrant scaleway <subcommand> [<args>]'
         | 
| 48 | 
            +
                        opts.separator ''
         | 
| 49 | 
            +
                        opts.separator 'Available subcommands:'
         | 
| 50 | 
            +
             | 
| 51 | 
            +
                        # Add the available subcommands as separators in order to print them
         | 
| 52 | 
            +
                        # out as well.
         | 
| 53 | 
            +
                        keys = []
         | 
| 54 | 
            +
                        @subcommands.each { |key, _value| keys << key.to_s }
         | 
| 55 | 
            +
             | 
| 56 | 
            +
                        keys.sort.each do |key|
         | 
| 57 | 
            +
                          opts.separator "     #{key}"
         | 
| 58 | 
            +
                        end
         | 
| 59 | 
            +
             | 
| 60 | 
            +
                        opts.separator ''
         | 
| 61 | 
            +
                        opts.separator 'For help on any individual subcommand run `vagrant scaleway <subcommand> -h`'
         | 
| 62 | 
            +
                      end
         | 
| 63 | 
            +
             | 
| 64 | 
            +
                      @env.ui.info(opts.help, prefix: false)
         | 
| 65 | 
            +
                    end
         | 
| 66 | 
            +
                  end
         | 
| 67 | 
            +
                end
         | 
| 68 | 
            +
              end
         | 
| 69 | 
            +
            end
         | 
| @@ -0,0 +1,21 @@ | |
| 1 | 
            +
            module VagrantPlugins
         | 
| 2 | 
            +
              module Scaleway
         | 
| 3 | 
            +
                module Command
         | 
| 4 | 
            +
                  class SecurityGroups < Vagrant.plugin('2', :command)
         | 
| 5 | 
            +
                    def execute
         | 
| 6 | 
            +
                      options = {}
         | 
| 7 | 
            +
                      opts = OptionParser.new do |o|
         | 
| 8 | 
            +
                        o.banner = 'Usage: vagrant scaleway security-groups [options]'
         | 
| 9 | 
            +
                      end
         | 
| 10 | 
            +
             | 
| 11 | 
            +
                      argv = parse_options(opts)
         | 
| 12 | 
            +
                      return unless argv
         | 
| 13 | 
            +
             | 
| 14 | 
            +
                      with_target_vms(argv, provider: :scaleway) do |machine|
         | 
| 15 | 
            +
                        machine.action('list_security_groups')
         | 
| 16 | 
            +
                      end
         | 
| 17 | 
            +
                    end
         | 
| 18 | 
            +
                  end
         | 
| 19 | 
            +
                end
         | 
| 20 | 
            +
              end
         | 
| 21 | 
            +
            end
         | 
| @@ -28,8 +28,8 @@ module VagrantPlugins | |
| 28 28 | 
             
                  # @return [String]
         | 
| 29 29 | 
             
                  attr_accessor :organization
         | 
| 30 30 |  | 
| 31 | 
            -
                  # The security group to associate with the server. If nil, | 
| 32 | 
            -
                  # default security group will be used.
         | 
| 31 | 
            +
                  # The security group ID to associate with the server. If nil,
         | 
| 32 | 
            +
                  # organization's default security group will be used.
         | 
| 33 33 | 
             
                  #
         | 
| 34 34 | 
             
                  # @return [String]
         | 
| 35 35 | 
             
                  attr_accessor :security_group
         | 
| @@ -101,7 +101,7 @@ module VagrantPlugins | |
| 101 101 | 
             
                  end
         | 
| 102 102 | 
             
                end
         | 
| 103 103 |  | 
| 104 | 
            -
                def validate( | 
| 104 | 
            +
                def validate(_machine)
         | 
| 105 105 | 
             
                  errors = _detected_errors
         | 
| 106 106 |  | 
| 107 107 | 
             
                  errors << I18n.t('vagrant_scaleway.config.organization_required') if @organization.nil?
         | 
| @@ -34,6 +34,11 @@ module VagrantPlugins | |
| 34 34 | 
             
                    Provider
         | 
| 35 35 | 
             
                  end
         | 
| 36 36 |  | 
| 37 | 
            +
                  command(:scaleway, primary: false) do
         | 
| 38 | 
            +
                    require_relative 'command/root'
         | 
| 39 | 
            +
                    Command::Root
         | 
| 40 | 
            +
                  end
         | 
| 41 | 
            +
             | 
| 37 42 | 
             
                  # This initializes the internationalization strings.
         | 
| 38 43 | 
             
                  def self.setup_i18n
         | 
| 39 44 | 
             
                    I18n.load_path << File.expand_path('locales/en.yml', Scaleway.source_root)
         | 
    
        data/{dummy.box → scaleway.box}
    RENAMED
    
    | 
            File without changes
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: vagrant-scaleway
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0. | 
| 4 | 
            +
              version: 0.2.0
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Satoshi Matsumoto
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2016- | 
| 11 | 
            +
            date: 2016-09-25 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: bundler
         | 
| @@ -79,7 +79,6 @@ files: | |
| 79 79 | 
             
            - LICENSE.txt
         | 
| 80 80 | 
             
            - README.md
         | 
| 81 81 | 
             
            - Rakefile
         | 
| 82 | 
            -
            - dummy.box
         | 
| 83 82 | 
             
            - example_box/metadata.json
         | 
| 84 83 | 
             
            - lib/vagrant-scaleway.rb
         | 
| 85 84 | 
             
            - lib/vagrant-scaleway/action.rb
         | 
| @@ -88,6 +87,9 @@ files: | |
| 88 87 | 
             
            - lib/vagrant-scaleway/action/destroy_server.rb
         | 
| 89 88 | 
             
            - lib/vagrant-scaleway/action/is_created.rb
         | 
| 90 89 | 
             
            - lib/vagrant-scaleway/action/is_stopped.rb
         | 
| 90 | 
            +
            - lib/vagrant-scaleway/action/list_bootscripts.rb
         | 
| 91 | 
            +
            - lib/vagrant-scaleway/action/list_images.rb
         | 
| 92 | 
            +
            - lib/vagrant-scaleway/action/list_security_groups.rb
         | 
| 91 93 | 
             
            - lib/vagrant-scaleway/action/message_already_created.rb
         | 
| 92 94 | 
             
            - lib/vagrant-scaleway/action/message_not_created.rb
         | 
| 93 95 | 
             
            - lib/vagrant-scaleway/action/message_will_not_destroy.rb
         | 
| @@ -96,6 +98,10 @@ files: | |
| 96 98 | 
             
            - lib/vagrant-scaleway/action/start_server.rb
         | 
| 97 99 | 
             
            - lib/vagrant-scaleway/action/stop_server.rb
         | 
| 98 100 | 
             
            - lib/vagrant-scaleway/action/warn_networks.rb
         | 
| 101 | 
            +
            - lib/vagrant-scaleway/command/bootscripts.rb
         | 
| 102 | 
            +
            - lib/vagrant-scaleway/command/images.rb
         | 
| 103 | 
            +
            - lib/vagrant-scaleway/command/root.rb
         | 
| 104 | 
            +
            - lib/vagrant-scaleway/command/security_groups.rb
         | 
| 99 105 | 
             
            - lib/vagrant-scaleway/config.rb
         | 
| 100 106 | 
             
            - lib/vagrant-scaleway/errors.rb
         | 
| 101 107 | 
             
            - lib/vagrant-scaleway/plugin.rb
         | 
| @@ -103,6 +109,7 @@ files: | |
| 103 109 | 
             
            - lib/vagrant-scaleway/util/timer.rb
         | 
| 104 110 | 
             
            - lib/vagrant-scaleway/version.rb
         | 
| 105 111 | 
             
            - locales/en.yml
         | 
| 112 | 
            +
            - scaleway.box
         | 
| 106 113 | 
             
            - vagrant-scaleway.gemspec
         | 
| 107 114 | 
             
            homepage: https://github.com/kaorimatz/vagrant-scaleway
         | 
| 108 115 | 
             
            licenses:
         |