landrush 1.1.1 → 1.1.2

Sign up to get free protection for your applications and to get access to all the features.
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