landrush 1.1.1 → 1.1.2

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: 77840884a0bd9fc62d5a5b0278d1d49e5523eebd
4
- data.tar.gz: d632602974b03a8b775e452fb38052202ddd476d
3
+ metadata.gz: 138a75389ee8136d6e3238acfe4b5c0f519a4a76
4
+ data.tar.gz: f5ce9a01e50b7f78a372d7b08f53866f3ee87f02
5
5
  SHA512:
6
- metadata.gz: 1104136bab10696f6ba984fdb97f146cdfa36a99b828a143cf233077a1e3aa064d3c9ab9e3e957ef5d92be8c4af0f9f8743e30a86f5e8cd8c1d55d7d625fbec7
7
- data.tar.gz: c13584093a97de4e183ddca489e56c43d7143ad97c955eac0ab768b7b6c659ae4b6db5f49253150b5e477cc44ab8dec59692938818ea2d81ff4c190d52c6216c
6
+ metadata.gz: 1237352f45ac98629612def4706944481ad311bb1c51b08bbaab452e0b754a62af6b4ed25d6f2aecc0e27050ddec5ab1f40f5e7e505b5c30dbb7f69c0667aec1
7
+ data.tar.gz: 5a2fd9a12b9960c5630327fcffd2662ee75c7c84fcd15d95fda6288afb6fc668e07e8e689372a284d167843049b1493a57daecf14ef48782ba248612b39f89fe
@@ -1,3 +1,8 @@
1
+ ## [1.1.2] - 2016-08-24
2
+
3
+ - Issue [#249](https://github.com/vagrant-landrush/landrush/issues/249) - Spawned DNS server holds vagrant executable's stderr, stdout open
4
+ - PR [#243](https://github.com/vagrant-landrush/landrush/pull/243) - Vagrant would print error message "The system cannot find the path
5
+
1
6
  ## [1.1.1] - 2016-08-07
2
7
 
3
8
  - Issue [#241](https://github.com/vagrant-landrush/landrush/issues/241) - Action::Teardown is not called for providers other than VirtualBox
@@ -11,7 +11,7 @@
11
11
 
12
12
 
13
13
  The following is a set of guidelines for contributing to Landrush.
14
- These are just guidelines, please use your best judgment and feel free
14
+ These are just guidelines. Please use your best judgment and feel free
15
15
  to propose changes to this document in a pull request.
16
16
 
17
17
  At this point, this document is not complete, but as decisions are made
@@ -20,25 +20,33 @@ they will be added to this document.
20
20
  <a name="working-on-an-issue"></a>
21
21
  ## Working on an issue
22
22
 
23
- * All changes should have a matching issue in the GitHub [issue tracker](https://github.com/vagrant-landrush/landrush/issues). If there is none, create one.
24
- * Prepend each commit of a porposed change with the GitHub issue key, eg `Issue #xyz Fixing foo in bar`
25
- * All changes should be applied to master via [pull requests](https://help.github.com/articles/using-pull-requests/) (even from maintainers).
23
+ * All changes should have a matching issue in the GitHub [issue
24
+ tracker](https://github.com/vagrant-landrush/landrush/issues). If
25
+ there is not one, create one.
26
+ * Prepend each commit of a proposed change with the GitHub issue number,
27
+ eg `Issue #xyz Fixing foo in bar`
28
+ * All changes should be applied to master via [pull
29
+ requests](https://help.github.com/articles/using-pull-requests/)
30
+ (even from maintainers).
26
31
  * All changes should include documentation updates.
27
- * Small changes need only 1 ACK. Larger changes need 2 ACKs from
28
- maintainers before they will be merged. If the author of the pull request is a
29
- maintainer, the submission is considered 1 of the 2 ACKs. Therefore pull requests
30
- from maintainers only require one additional ACK. By "2 ACKs" we mean
31
- that 2 maintainers must acknowledge that the change is a good one. The
32
- 2nd person to ACK the pull request should merge the pull request with a
33
- comment including their agreement. We default to moving forward and using
34
- revert if needed.
32
+ * Small changes need only 1 ACK while larger changes need 2 ACKs from
33
+ maintainers before they will be merged. If the author of the pull
34
+ request is a maintainer, the submission is considered 1 of the
35
+ 2 ACKs. Therefore pull requests from maintainers only require one
36
+ additional ACK.
37
+
38
+ By "2 ACKs" we mean that 2 maintainers must acknowledge
39
+ that the change is a good one. The 2nd person to ACK the pull
40
+ request should merge the pull request with a comment including their
41
+ agreement. We default to moving forward and using revert if needed.
35
42
 
36
43
  <a name="merging-pull-requests"></a>
37
44
  ## Merging pull requests
38
45
 
39
- 1. Merging committer should merge the pull request. Avoid using GitHub UI and
40
- prefer merges over the the command line to avoid merge commits and to keep
41
- a linear commit history:
46
+ 1. The merging committer should merge the pull request as follows. Avoid
47
+ using the GitHub web UI. Instead, perform merges using the `git`
48
+ command line. This avoids merge commits and keeps a linear commit
49
+ history. The commands below demonstrated the suggested process.
42
50
 
43
51
  ```
44
52
  # Create a local branch for the pull request
@@ -47,7 +55,8 @@ they will be added to this document.
47
55
  # Pull the changes
48
56
  $ git pull <remote> <branch-name>
49
57
 
50
- # If necessary rebase changes on master to ensure we have a fast forward. Also resolve any conflicts
58
+ # If necessary rebase changes on master to ensure we have a fast
59
+ # forward. Also resolve any conflicts
51
60
  $ git rebase -i master
52
61
 
53
62
  # Merge changes into master
@@ -63,21 +72,24 @@ they will be added to this document.
63
72
  <a name="releasing"></a>
64
73
  ## Releasing
65
74
 
66
- Prereqs:
75
+ Prerequisites:
67
76
 
68
77
  * Push access to the `landrush` GitHub repository
69
- * Rubygems owner of the `landrush` gem
78
+ * Owner of the `landrush` gem Rubygems
70
79
 
71
80
  Steps:
72
81
 
73
- 1. Update `lib/landrush/version.rb` with version number.
74
- 1. Update `CHANGELOG.md` header with version number and current date.
75
- 1. Make release commit: `git add lib/landrush/version.rb CHANGELOG.md; git commit -m 'cut vX.Y.Z'`
76
- 1. Make release tag: `git tag -m vX.Y.Z vX.Y.Z`
77
- 1. Push release commit: `git push origin master`
78
- 1. Build release: `rake build`
79
- 1. Push released gem: `gem push pkg/landrush-X.Y.Z.gem`
80
- 1. Update CHANGELOG to add an "Unreleased" section, commit as "clean up after vX.Y.Z".
82
+ 1. Update `lib/landrush/version.rb` with the new version number.
83
+ 1. Update the `CHANGELOG.md` header with the new version number and
84
+ current date.
85
+ 1. Make a release commit:
86
+ `git add lib/landrush/version.rb CHANGELOG.md; git commit -m 'cut vX.Y.Z'`
87
+ 1. Make a release tag: `git tag -m vX.Y.Z vX.Y.Z`
88
+ 1. Push the release commit: `git push origin master; git push origin master --tags`
89
+ 1. Build the release: `rake build`
90
+ 1. Push the newly built gem: `gem push pkg/landrush-X.Y.Z.gem`
91
+ 1. Update the CHANGELOG to add an "Unreleased" section, commit as
92
+ "clean up after vX.Y.Z".
81
93
 
82
94
  <a name="maintainers"></a>
83
95
  ## Maintainers
@@ -3,6 +3,7 @@ module Landrush
3
3
  module Debian
4
4
  class DebianHost < Vagrant.plugin('2', 'host')
5
5
  def detect?(_env)
6
+ return false unless Pathname('/etc/issue').exist?
6
7
  system("cat /etc/issue | grep 'Debian' > /dev/null 2>&1")
7
8
  end
8
9
  end
@@ -67,8 +67,24 @@ module Landrush
67
67
  def self.start
68
68
  ensure_ruby_on_path
69
69
  if Vagrant::Util::Platform.windows?
70
- # Need to handle Windows differently. Kernel.spawn fails to work, if the shell creating the process is closed.
70
+ # Need to handle Windows differently. Kernel.spawn fails to work, if
71
+ # the shell creating the process is closed.
71
72
  # See https://github.com/vagrant-landrush/landrush/issues/199
73
+ #
74
+ # Note to the Future: Windows does not have a
75
+ # file handle inheritance issue like Linux and Mac (see:
76
+ # https://github.com/vagrant-landrush/landrush/issues/249)
77
+ #
78
+ # On windows, if no filehandle is passed then no files get
79
+ # inherited by default, but if any filehandle is passed to
80
+ # a spawned process then all files that are
81
+ # set as inheritable will get inherited. In another project this
82
+ # created a problem (see:
83
+ # https://github.com/dustymabe/vagrant-sshfs/issues/41).
84
+ #
85
+ # Today we don't pass any filehandles, so it isn't a problem.
86
+ # Future self, make sure this doesn't become a problem.
87
+
72
88
  info = Process.create(:command_line => "ruby #{__FILE__} #{port} #{working_dir}",
73
89
  :creation_flags => Process::DETACHED_PROCESS,
74
90
  :process_inherit => false,
@@ -76,7 +92,14 @@ module Landrush
76
92
  :cwd => working_dir.to_path)
77
93
  pid = info.process_id
78
94
  else
79
- pid = spawn('ruby', __FILE__, port.to_s, working_dir.to_s, :chdir => working_dir.to_path, :pgroup => true)
95
+ # Fix https://github.com/vagrant-landrush/landrush/issues/249)
96
+ # by turning of filehandle inheritance with :close_others => true
97
+ # and by explicitly closing STDIN, STDOUT, and STDERR
98
+
99
+ pid = spawn('ruby', __FILE__, port.to_s, working_dir.to_s,
100
+ :in => :close, :out => :close, :err => :close,
101
+ :close_others => true, :chdir => working_dir.to_path,
102
+ :pgroup => true)
80
103
  Process.detach pid
81
104
  end
82
105
 
@@ -1,3 +1,3 @@
1
1
  module Landrush
2
- VERSION = '1.1.1'.freeze
2
+ VERSION = '1.1.2'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: landrush
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.1
4
+ version: 1.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Paul Hinze
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-08-07 00:00:00.000000000 Z
11
+ date: 2016-08-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rubydns
@@ -28,28 +28,28 @@ dependencies:
28
28
  name: win32-process
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - '>='
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
33
  version: '0'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - '>='
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: landrush-ip
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ~>
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
47
  version: 0.2.3
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ~>
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: 0.2.3
55
55
  description: |
@@ -68,11 +68,11 @@ executables: []
68
68
  extensions: []
69
69
  extra_rdoc_files: []
70
70
  files:
71
- - .config/cucumber.yml
72
- - .gitignore
73
- - .rubocop.yml
74
- - .rubocop_todo.yml
75
- - .travis.yml
71
+ - ".config/cucumber.yml"
72
+ - ".gitignore"
73
+ - ".rubocop.yml"
74
+ - ".rubocop_todo.yml"
75
+ - ".travis.yml"
76
76
  - CHANGELOG.md
77
77
  - CONTRIBUTING.md
78
78
  - Gemfile
@@ -157,17 +157,17 @@ require_paths:
157
157
  - lib
158
158
  required_ruby_version: !ruby/object:Gem::Requirement
159
159
  requirements:
160
- - - '>='
160
+ - - ">="
161
161
  - !ruby/object:Gem::Version
162
162
  version: '0'
163
163
  required_rubygems_version: !ruby/object:Gem::Requirement
164
164
  requirements:
165
- - - '>='
165
+ - - ">="
166
166
  - !ruby/object:Gem::Version
167
167
  version: '0'
168
168
  requirements: []
169
169
  rubyforge_project:
170
- rubygems_version: 2.4.6
170
+ rubygems_version: 2.5.1
171
171
  signing_key:
172
172
  specification_version: 4
173
173
  summary: a vagrant plugin providing consistent DNS visible on host and guests