vagrant-impressbox 0.1.0 → 0.1.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7058d0e553b2b94d55a1a23dc84bef2256d969f4
4
- data.tar.gz: 7ad515e10500a70ede69ce1dc2796cd6e29cffd0
3
+ metadata.gz: eb87ddda30acb51620df45fb0b6af4651bcc38c4
4
+ data.tar.gz: aca4ba8308f4ecff748e252790798bf86ea2b875
5
5
  SHA512:
6
- metadata.gz: 68778fb8535b5b7826cea599470263320c4deba03513435883dda6a37d507a8b819420c379871ea3580eb7a1dab86907f650bdd7176dcefbd9cb7b06a98640ba
7
- data.tar.gz: 11bdfab2e693518a67a35409b610d88d3ac5c71d660acb7b4c11fd4da4780667353e3893dad11b2f47de98238dea16e81a1d94dd0ce612d42832a5e24c4d1f0f
6
+ metadata.gz: 665f819e3746fd938188f2259a04f54196ba23bbc43b0dd68efa8c1c98ae1be1486b92d597e56df3c92119607a3117da166061dc84468ec441ba07ef934a5f77
7
+ data.tar.gz: 84ea5a35a4cc74e587ee4c7e5219f3388615bf225ec5768956664643afe21353618690ec2be81d3e489f0d516f4182c3cb13e00b607a3f94145fbcd9cead7d4a
@@ -0,0 +1,16 @@
1
+ root = true
2
+
3
+ [*]
4
+ indent_style = space
5
+ indent_size = 2
6
+ end_of_line = lf
7
+ charset = utf-8
8
+ trim_trailing_whitespace = true
9
+ insert_final_newline = true
10
+
11
+ [*.{sh,markdown}]
12
+ indent_size = 4
13
+
14
+ [**.rb]
15
+ indent_style = space
16
+ indent_size = 2
data/README.md CHANGED
@@ -1,6 +1,4 @@
1
- # **!!! DOESN'T WORK YET. Please wait !!!**
2
-
3
- ------
1
+ [![Gem](https://img.shields.io/gem/dtv/vagrant-impressbox.svg)](https://rubygems.org/gems/vagrant-impressbox) [![Gem](https://img.shields.io/gem/v/vagrant-impressbox.svg)](https://rubygems.org/gems/vagrant-impressbox) [![license](https://img.shields.io/github/license/ImpressCMS/vagrant-impressbox.svg?maxAge=2592000)](License.txt)
4
2
 
5
3
  # ImpressBox
6
4
 
@@ -8,24 +6,34 @@ ImpressBox is plugin to make easier to configure virtual enviroment for Vagrant.
8
6
 
9
7
  ## Installation
10
8
 
11
- `vagrant plugin install impressbox`
9
+ Run below command from your command line:
10
+ `vagrant plugin install vagrant-impressbox`
12
11
 
13
12
  ## Usage
14
13
 
15
- `vagrant impressbox`
14
+ To use Impressbox plugin, you can run `vagrant impressbox` command from command line. It will create required configuration files. Also it's possible to use some options to modify default configuration files creation behavior:
16
15
 
17
- ## Development
16
+ vagrant impressbox [options]
18
17
 
19
- After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
18
+ -b, --box=BOX_NAME Box name for new box (default: ImpressCMS/DevBox-Ubuntu)
19
+ --ip=IP Defines IP (default: )
20
+ --url=HOSTNAME Hostname associated with this box (default: impresscms.dev)
21
+ --memory=RAM How much RAM (in megabytes)? (default: 512)
22
+ --cpus=CPU_NUMBER How much CPU? (default: 1)
23
+ -r, --recreate Recreates config instead of updating (so you don't need to delete first)
24
+ -f, --for=NAME This argument says that predefined config will be used when creating box. Possible names: impresscms
25
+
26
+ -h, --help Print this help
27
+
28
+ ## Development
20
29
 
21
- To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
30
+ If you want to try add something to this plugin, you need before starting do these things:
31
+ * Clone this repository
32
+ * Open command line in cloned directory
33
+ * Run `bundle install`
34
+
35
+ If you want to your changes, you can run `bundle exec vagrant impressbox` command (also here is possible to use some commands options).
22
36
 
23
37
  ## Contributing
24
38
 
25
39
  Bug reports and pull requests are welcome on GitHub at https://github.com/ImpressCMS/impressbox.
26
-
27
-
28
- ## License
29
-
30
- The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
31
-
@@ -1,56 +1,64 @@
1
- module Impressbox
2
- module Actions
3
- # This is action to insert keys to remote machine when booting
4
- class InsertKey
5
- def initialize(app, env)
6
- @app = app
7
- @ui = env[:ui]
8
- end
9
-
10
- def call(env)
11
- @app.call env
12
- @machine = env[:machine]
13
- insert_ssh_key_if_needed(
14
- Impressbox::Plugin.get_item(:public_key),
15
- Impressbox::Plugin.get_item(:private_key)
16
- )
17
- end
18
-
19
- private
20
-
21
- def insert_ssh_key_if_needed(public_key, private_key)
22
- @machine.communicate.wait_for_ready 300
23
-
24
- machine_private_key @machine.communicate, private_key
25
- machine_public_key @machine.communicate, public_key
26
- end
27
-
28
- def machine_public_key(communicator, public_key)
29
- @ui.info I18n.t('ssh_key.updating.public')
30
- machine_upload_file communicator, public_key, '~/.ssh/id_rsa.pub'
31
- communicator.execute 'touch ~/.ssh/authorized_keys'
32
- communicator.execute 'cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys'
33
- communicator.execute "echo `awk '!a[$0]++' ~/.ssh/authorized_keys` > ~/.ssh/authorized_keys"
34
-
35
- communicator.execute 'chmod 600 ~/.ssh/id_rsa.pub'
36
- end
37
-
38
- def machine_private_key(communicator, private_key)
39
- @ui.info I18n.t('ssh_key.updating.private')
40
- machine_upload_file communicator, private_key, '~/.ssh/id_rsa'
41
- communicator.execute 'chmod 400 ~/.ssh/id_rsa'
42
- end
43
-
44
- def machine_upload_file(communicator, src_file, dst_file)
45
- communicator.execute 'chmod 777 ' + dst_file + ' || :'
46
- communicator.execute 'touch ' + dst_file
47
- communicator.execute 'truncate -s 0 ' + dst_file
48
- text = File.open(src_file).read
49
- text.gsub!(/\r\n?/, "\n")
50
- text.each_line do |line|
51
- communicator.execute "echo \"#{line.rstrip}\" >> #{dst_file}"
52
- end
53
- end
54
- end
55
- end
56
- end
1
+ module Impressbox
2
+ module Actions
3
+ # This is action to insert keys to remote machine when booting
4
+ class InsertKey
5
+ def initialize(app, env)
6
+ @app = app
7
+ @ui = env[:ui]
8
+ puts app.inspect
9
+ end
10
+
11
+ def call(env)
12
+ @app.call env
13
+ @machine = env[:machine]
14
+ insert_ssh_key_if_needed(
15
+ Impressbox::Plugin.get_item(:public_key),
16
+ Impressbox::Plugin.get_item(:private_key)
17
+ )
18
+ end
19
+
20
+ private
21
+
22
+ def insert_ssh_key_if_needed(public_key, private_key)
23
+ @machine.communicate.wait_for_ready 300
24
+
25
+ machine_private_key @machine.communicate, private_key
26
+ machine_public_key @machine.communicate, public_key
27
+ end
28
+
29
+ def machine_public_key(communicator, public_key)
30
+ @ui.info I18n.t('ssh_key.updating.public')
31
+ if machine_upload_file communicator, public_key, '~/.ssh/id_rsa.pub'
32
+ communicator.execute 'touch ~/.ssh/authorized_keys'
33
+ communicator.execute 'cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys'
34
+ communicator.execute "echo `awk '!a[$0]++' ~/.ssh/authorized_keys` > ~/.ssh/authorized_keys"
35
+
36
+ communicator.execute 'chmod 600 ~/.ssh/id_rsa.pub'
37
+ end
38
+ end
39
+
40
+ def machine_private_key(communicator, private_key)
41
+ @ui.info I18n.t('ssh_key.updating.private')
42
+ if machine_upload_file communicator, private_key, '~/.ssh/id_rsa'
43
+ communicator.execute 'chmod 400 ~/.ssh/id_rsa'
44
+ end
45
+ end
46
+
47
+ def machine_upload_file(communicator, src_file, dst_file)
48
+ if src_file.nil?
49
+ @ui.info I18n.t('ssh_key.not_found')
50
+ return false
51
+ end
52
+ communicator.execute 'chmod 777 ' + dst_file + ' || :'
53
+ communicator.execute 'touch ' + dst_file
54
+ communicator.execute 'truncate -s 0 ' + dst_file
55
+ text = File.open(src_file).read
56
+ text.gsub!(/\r\n?/, "\n")
57
+ text.each_line do |line|
58
+ communicator.execute "echo \"#{line.rstrip}\" >> #{dst_file}"
59
+ end
60
+ true
61
+ end
62
+ end
63
+ end
64
+ end
@@ -1,103 +1,107 @@
1
- # Loads all requirements
2
- require 'vagrant'
3
- require_relative File.join('objects', 'ssh_key_detect.rb')
4
-
5
- # Impressbox namepsace
6
- module Impressbox
7
- # Provisioner namepsace
8
- class Provisioner < Vagrant.plugin('2', :provisioner)
9
- # @!attribute [rw] provision_actions
10
- attr_accessor :provision_actions
11
-
12
- def provision
13
- if !@provision_actions.nil? && @provision_actions.to_s.length > 0
14
- @machine.communicate.wait_for_ready 300
15
-
16
- @machine.communicate.execute(@provision_actions.to_s) do |type, line|
17
- write_line type, line
18
- end
19
- end
20
- end
21
-
22
- def cleanup
23
- end
24
-
25
- def configure(root_config)
26
- configurator = create_configurator(root_config)
27
- cfg = xaml_config
28
-
29
- do_primary_configuration configurator, cfg
30
- do_ssh_configuration configurator, cfg
31
- do_provider_configuration configurator, cfg
32
- do_network_configuration configurator, cfg
33
- do_provision_configure configurator, cfg
34
- end
35
-
36
- private
37
-
38
- def write_line(type, contents)
39
- case type
40
- when :stdout
41
- @machine.ui.info contents
42
- when :stderr
43
- @machine.ui.error contents
44
- else
45
- @machine.ui.info 'W: ' + type
46
- @machine.ui.info contents
47
- end
48
- end
49
-
50
- def do_provision_configure(_configurator, cfg)
51
- @provision_actions = cfg.provision if !cfg.provision.nil? && cfg.provision
52
- end
53
-
54
- def do_primary_configuration(configurator, cfg)
55
- configurator.name cfg.name
56
- configurator.check_for_update cfg.check_update
57
- configurator.forward_ports cfg.ports
58
- end
59
-
60
- def do_network_configuration(configurator, cfg)
61
- configurator.configure_network cfg.ip unless cfg.ip.nil?
62
- aliases = cfg.hostname
63
- if aliases.is_a?(Array)
64
- hostname = aliases.shift
65
- else
66
- hostname = aliases.dup
67
- aliases = []
68
- end
69
- configurator.configure_hostnames(hostname, aliases)
70
- end
71
-
72
- def do_ssh_configuration(configurator, cfg)
73
- keys = Impressbox::Objects::SshKeyDetect.new(cfg)
74
- configurator.configure_ssh keys.public_key, keys.private_key
75
- end
76
-
77
- def do_provider_configuration(configurator, cfg)
78
- configurator.basic_configure cfg.name, cfg.cpus, cfg.memory, cfg.gui
79
- configurator.specific_configure cfg
80
- end
81
-
82
- def detect_provider
83
- if ARGV[1] && (ARGV[1].split('=')[0] == '--provider' || ARGV[2])
84
- return (ARGV[1].split('=')[1] || ARGV[2])
85
- end
86
- (ENV['VAGRANT_DEFAULT_PROVIDER'] || :virtualbox).to_sym
87
- end
88
-
89
- def create_configurator(root_config)
90
- require_relative File.join('objects', 'configurator')
91
- Impressbox::Objects::Configurator.new(
92
- root_config,
93
- @machine,
94
- detect_provider
95
- )
96
- end
97
-
98
- def xaml_config
99
- require_relative File.join('objects', 'config_file')
100
- Impressbox::Objects::ConfigFile.new @config.file
101
- end
102
- end
103
- end
1
+ # Loads all requirements
2
+ require 'vagrant'
3
+ require_relative File.join('objects', 'ssh_key_detect.rb')
4
+
5
+ # Impressbox namepsace
6
+ module Impressbox
7
+ # Provisioner namepsace
8
+ class Provisioner < Vagrant.plugin('2', :provisioner)
9
+
10
+ # @!attribute [rw] provision_actions
11
+ attr_accessor :provision_actions
12
+
13
+ # Do provision
14
+ def provision
15
+ if !@provision_actions.nil? && @provision_actions.to_s.length > 0
16
+ @machine.communicate.wait_for_ready 300
17
+
18
+ @machine.communicate.execute(@provision_actions.to_s) do |type, line|
19
+ write_line type, line
20
+ end
21
+ end
22
+ end
23
+
24
+ # Cleanup script
25
+ def cleanup
26
+ end
27
+
28
+ # Configure
29
+ def configure(root_config)
30
+ configurator = create_configurator(root_config)
31
+ cfg = xaml_config
32
+
33
+ do_primary_configuration configurator, cfg
34
+ do_ssh_configuration configurator, cfg
35
+ do_provider_configuration configurator, cfg
36
+ do_network_configuration configurator, cfg
37
+ do_provision_configure configurator, cfg
38
+ end
39
+
40
+ private
41
+
42
+ def write_line(type, contents)
43
+ case type
44
+ when :stdout
45
+ @machine.ui.info contents
46
+ when :stderr
47
+ @machine.ui.error contents
48
+ else
49
+ @machine.ui.info 'W: ' + type
50
+ @machine.ui.info contents
51
+ end
52
+ end
53
+
54
+ def do_provision_configure(_configurator, cfg)
55
+ @provision_actions = cfg.provision if !cfg.provision.nil? && cfg.provision
56
+ end
57
+
58
+ def do_primary_configuration(configurator, cfg)
59
+ configurator.name cfg.name
60
+ configurator.check_for_update cfg.check_update
61
+ configurator.forward_ports cfg.ports
62
+ end
63
+
64
+ def do_network_configuration(configurator, cfg)
65
+ configurator.configure_network cfg.ip unless cfg.ip.nil?
66
+ aliases = cfg.hostname
67
+ if aliases.is_a?(Array)
68
+ hostname = aliases.shift
69
+ else
70
+ hostname = aliases.dup
71
+ aliases = []
72
+ end
73
+ configurator.configure_hostnames(hostname, aliases)
74
+ end
75
+
76
+ def do_ssh_configuration(configurator, cfg)
77
+ keys = Impressbox::Objects::SshKeyDetect.new(cfg)
78
+ configurator.configure_ssh keys.public_key, keys.private_key
79
+ end
80
+
81
+ def do_provider_configuration(configurator, cfg)
82
+ configurator.basic_configure cfg.name, cfg.cpus, cfg.memory, cfg.gui
83
+ configurator.specific_configure cfg
84
+ end
85
+
86
+ def detect_provider
87
+ if ARGV[1] && (ARGV[1].split('=')[0] == '--provider' || ARGV[2])
88
+ return (ARGV[1].split('=')[1] || ARGV[2])
89
+ end
90
+ (ENV['VAGRANT_DEFAULT_PROVIDER'] || :virtualbox).to_sym
91
+ end
92
+
93
+ def create_configurator(root_config)
94
+ require_relative File.join('objects', 'configurator')
95
+ Impressbox::Objects::Configurator.new(
96
+ root_config,
97
+ @machine,
98
+ detect_provider
99
+ )
100
+ end
101
+
102
+ def xaml_config
103
+ require_relative File.join('objects', 'config_file')
104
+ Impressbox::Objects::ConfigFile.new @config.file
105
+ end
106
+ end
107
+ end
@@ -63,11 +63,6 @@ memory: {{memory}}
63
63
  # ---------------------------------------------------------------------------------------
64
64
  check_update: {{#check_update}}true{{/check_update}}{{^check_update}}false{{/check_update}}
65
65
 
66
- # ---------------------------------------------------------------------------------------
67
- # What command should execute vagrant exec command on host?
68
- # ---------------------------------------------------------------------------------------
69
- cmd: {{cmd}}
70
-
71
66
  # ---------------------------------------------------------------------------------------
72
67
  # What shell commands will be executed on provision?
73
68
  # ---------------------------------------------------------------------------------------
@@ -1,4 +1,4 @@
1
- # Plugin version information
2
- module Impressbox
3
- VERSION = '0.1.0'.freeze
4
- end
1
+ # Plugin version information
2
+ module Impressbox
3
+ VERSION = '0.1.1'.freeze
4
+ end
@@ -1,28 +1,30 @@
1
- en:
2
- description: |
3
- This plugin adds possibility to create and manage box with configuration defined in YAML file.
4
- This plugin is created for developing something with ImpressCMS but it's possible to use also with other CMS'es and framework.
5
- ssh_key:
6
- updating:
7
- public: Updating public key...
8
- private: Updating private key...
9
- copying:
10
- git_settings: Copying locale GIT settings to remote machine...
11
- config:
12
- recreated: Vagrant enviroment configuration (re)created
13
- updated: Vagrant enviroment configuration updated
14
- not_exist: "Config file %{file} not exist"
15
- command:
16
- impressbox:
17
- synopsis: Creates a Vagrantfile and config.yaml ready for use with ImpressBox
18
- usage: "Usage: %{cmd} [options]"
19
- arguments:
20
- box: "Box name for new box (default: %{box})"
21
- ip: "Defines IP (default: %{ip})"
22
- hostname: "Hostname associated with this box (default: %{hostname})"
23
- memory: "How much RAM (in megabytes)? (default: %{memory})"
24
- cpus: "How much CPU? (default: %{cpus})"
25
- cmd: "What command would be executed when use vagrant exec on host? (default: %{cmd})"
26
- special:
27
- recreate: "Recreates config instead of updating (so you don't need to delete first)"
1
+ en:
2
+ description: |
3
+ This plugin adds possibility to create and manage box with configuration defined in YAML file.
4
+ This plugin is created for developing something with ImpressCMS but it's possible to use also with other CMS'es and framework.
5
+ ssh_key:
6
+ updating:
7
+ public: Updating public key...
8
+ private: Updating private key...
9
+ not_found:
10
+ No SSH Key possible to load.
11
+ copying:
12
+ git_settings: Copying locale GIT settings to remote machine...
13
+ config:
14
+ recreated: Vagrant enviroment configuration (re)created
15
+ updated: Vagrant enviroment configuration updated
16
+ not_exist: "Config file %{file} not exist"
17
+ command:
18
+ impressbox:
19
+ synopsis: Creates a Vagrantfile and config.yaml ready for use with ImpressBox
20
+ usage: "Usage: %{cmd} [options]"
21
+ arguments:
22
+ box: "Box name for new box (default: %{box})"
23
+ ip: "Defines IP (default: %{ip})"
24
+ hostname: "Hostname associated with this box (default: %{hostname})"
25
+ memory: "How much RAM (in megabytes)? (default: %{memory})"
26
+ cpus: "How much CPU? (default: %{cpus})"
27
+ cmd: "What command would be executed when use vagrant exec on host? (default: %{cmd})"
28
+ special:
29
+ recreate: "Recreates config instead of updating (so you don't need to delete first)"
28
30
  use_template: "This argument says that predefined config will be used when creating box. Possible names: %{templates}"
@@ -1,31 +1,31 @@
1
- # coding: utf-8
2
- $LOAD_PATH << File.expand_path(File.join(File.dirname(__FILE__), 'lib'))
3
- require 'vagrant-impressbox/version'
4
-
5
- Gem::Specification.new do |spec|
6
- spec.name = 'vagrant-impressbox'
7
- spec.version = Impressbox::VERSION
8
- spec.authors = ["Raimondas Rimkevi\xC4\x8Dius"]
9
- spec.email = ['mekdrop@impresscms.org']
10
-
11
- spec.summary = <<-EOD
12
- This plugin can do provision and create configurations for simple boxes for development
13
- EOD
14
- spec.description = <<-EOD
15
- This plugin can do provision and create configurations for simple boxes for development
16
- EOD
17
- spec.homepage = 'http://impresscms.org'
18
- spec.license = 'MIT'
19
-
20
- spec.files = `git ls-files -z`.split("\0")
21
- spec.bindir = 'exe'
22
- spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
23
- spec.require_path = 'lib'
24
-
25
- spec.add_development_dependency 'bundler', '<= 1.11.2'
26
- spec.add_development_dependency 'rake', '~> 1.10.6'
27
- spec.add_development_dependency 'rspec', '~> 2.14.0'
28
-
29
- spec.add_dependency 'mustache', '~> 1.0'
30
- spec.add_dependency 'vagrant-hostmanager', '~> 1.8', '>= 1.8.1'
31
- end
1
+ # coding: utf-8
2
+ $LOAD_PATH << File.expand_path(File.join(File.dirname(__FILE__), 'lib'))
3
+ require 'vagrant-impressbox/version'
4
+
5
+ Gem::Specification.new do |spec|
6
+ spec.name = 'vagrant-impressbox'
7
+ spec.version = Impressbox::VERSION
8
+ spec.authors = ["Raimondas Rimkevi\xC4\x8Dius (aka MekDrop) <mekdrop@impresscms.org>"]
9
+ spec.email = ['mekdrop@impresscms.org']
10
+
11
+ spec.summary = <<-EOD
12
+ This plugin can do provision and create configurations for simple boxes for development
13
+ EOD
14
+ spec.description = <<-EOD
15
+ This plugin can do provision and create configurations for simple boxes for development
16
+ EOD
17
+ spec.homepage = 'http://impresscms.org'
18
+ spec.license = 'MIT'
19
+
20
+ spec.files = `git ls-files -z`.split("\0")
21
+ spec.bindir = 'exe'
22
+ spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
23
+ spec.require_path = 'lib'
24
+
25
+ spec.add_development_dependency 'bundler', '<= 1.10.6'
26
+ spec.add_development_dependency 'rake', '~> 1.10.6'
27
+ spec.add_development_dependency 'rspec', '~> 2.14.0'
28
+
29
+ spec.add_dependency 'mustache', '~> 1.0'
30
+ spec.add_dependency 'vagrant-hostmanager', '~> 1.8', '>= 1.8.1'
31
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vagrant-impressbox
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
- - Raimondas Rimkevičius
7
+ - Raimondas Rimkevičius (aka MekDrop) <mekdrop@impresscms.org>
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-04-24 00:00:00.000000000 Z
11
+ date: 2016-04-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "<="
18
18
  - !ruby/object:Gem::Version
19
- version: 1.11.2
19
+ version: 1.10.6
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "<="
25
25
  - !ruby/object:Gem::Version
26
- version: 1.11.2
26
+ version: 1.10.6
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -94,6 +94,7 @@ executables: []
94
94
  extensions: []
95
95
  extra_rdoc_files: []
96
96
  files:
97
+ - ".editorconfig"
97
98
  - ".gitignore"
98
99
  - ".rspec"
99
100
  - ".travis.yml"