modulesync 0.8.1 → 0.8.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
- SHA1:
3
- metadata.gz: b5fca884c7267a718852233b170a0c69c6e39499
4
- data.tar.gz: 28dae495ca5daa3b95f0d1d4d3a2b9c9710192f1
2
+ SHA256:
3
+ metadata.gz: 9799ba2b483f6370a71e6787b21862cf6aeab0246f1b7896be48175c37564db3
4
+ data.tar.gz: fccd8279e58613ac070d05175bce1a9b0f4afc292ffac78c347f343518434bc3
5
5
  SHA512:
6
- metadata.gz: 9846cea6b1f68664a63a292edcadf2d7fa5ad4c27b1527e58938e1757a909955b1644bfe977e618d0812779d3b62c29b439a51c069f027f4a190b214d18c96e3
7
- data.tar.gz: 98d64c9912a93f34fa1630a999b82d1f7c25267dbe67756152e85a54b781d3c40016bb24d4c359f3fe61be40c41661a21111985458b0eee62d64539433895604
6
+ metadata.gz: f4f4e927a0d4df8a95859c23319cb395f3418ecd0fa4dadc5c9a68209dcc767bc821b71dd2206fa4b6c482a65464940803a2958849cd1a991276342490356351
7
+ data.tar.gz: c5cee9698af0bea865f69f5bed772db3a881e339e7a6626c6be70968c02568de8a5899c3dcebc3cfc3620f66fe51a65fa1b6887f2d929ac56bdf66a5dab59a82
data/.rubocop.yml CHANGED
@@ -16,5 +16,5 @@ Style/TrailingCommaInLiteral:
16
16
  Enabled: false
17
17
 
18
18
  # would require external library
19
- Style/IndentHeredoc:
19
+ Layout/IndentHeredoc:
20
20
  Enabled: false
data/CHANGELOG.md CHANGED
@@ -1,5 +1,15 @@
1
1
  # Changelog
2
2
 
3
+ ## 2017-11-03 - 0.8.2
4
+
5
+ ### Summary
6
+
7
+ This release fixes:
8
+ * Bug that caused .gitignore file handle to be left open - [#131](https://github.com/voxpupuli/modulesync/pull/131).
9
+ * Fixed switch_branch to use current_branch instead of master - [#130](https://github.com/voxpupuli/modulesync/pull/130).
10
+ * Fixed bug where failed runs wouldn't return correct exit code - [#125](https://github.com/voxpupuli/modulesync/pull/125).
11
+ * Fix typo in README link to Voxpupuli modulesync_config [#123](https://github.com/voxpupuli/modulesync/pull/123).
12
+
3
13
  ## 2017-05-08 - 0.8.1
4
14
 
5
15
  ### Summary
data/README.md CHANGED
@@ -363,5 +363,5 @@ As commented, files within moduleroot directory can be flat files or ERB templat
363
363
  The Templates
364
364
  -------------
365
365
 
366
- See [Puppet's modulesync\_configs](https://github.com/puppetlabs/modulesync_configs) and [Vox Pupuli's modulesync\_configs](https://github.com/voxpupuli/modulesync_configs)
366
+ See [Puppet's modulesync\_configs](https://github.com/puppetlabs/modulesync_configs) and [Vox Pupuli's modulesync\_config](https://github.com/voxpupuli/modulesync_config)
367
367
  repositories for different templates currently in use.
@@ -16,9 +16,9 @@ Given 'a remote module repository' do
16
16
  - puppet-test
17
17
  """
18
18
  )
19
- write_file('modulesync.yml', <<-EOS)
19
+ write_file('modulesync.yml', <<-CONFIG)
20
20
  ---
21
21
  namespace: sources
22
22
  git_base: file://#{expand_path('.')}/
23
- EOS
23
+ CONFIG
24
24
  end
@@ -34,6 +34,32 @@ Feature: update
34
34
  Given I run `cat modules/puppet-test/test`
35
35
  Then the output should contain "aruba"
36
36
 
37
+ Scenario: Adding a new file to repo without write access
38
+ Given a file named "managed_modules.yml" with:
39
+ """
40
+ ---
41
+ - puppet-test
42
+ """
43
+ And a file named "modulesync.yml" with:
44
+ """
45
+ ---
46
+ namespace: maestrodev
47
+ git_base: git@github.com:
48
+ """
49
+ And a file named "config_defaults.yml" with:
50
+ """
51
+ ---
52
+ test:
53
+ name: aruba
54
+ """
55
+ And a directory named "moduleroot"
56
+ And a file named "moduleroot/test.erb" with:
57
+ """
58
+ <%= @configs['name'] %>
59
+ """
60
+ When I run `msync update -m "Add test" -r`
61
+ Then the exit status should be 1
62
+
37
63
  Scenario: Adding a new file, without the .erb suffix
38
64
  Given a file named "managed_modules.yml" with:
39
65
  """
data/lib/modulesync.rb CHANGED
@@ -81,7 +81,7 @@ module ModuleSync
81
81
  erb = Renderer.build(templatename)
82
82
  template = Renderer.render(erb, configs)
83
83
  Renderer.sync(template, module_file(options[:project_root], module_name, filename))
84
- rescue
84
+ rescue # rubocop:disable Lint/RescueWithoutErrorClass
85
85
  STDERR.puts "Error while rendering #{filename}"
86
86
  raise
87
87
  end
@@ -132,7 +132,7 @@ module ModuleSync
132
132
  managed_modules.each do |puppet_module, module_options|
133
133
  begin
134
134
  manage_module(puppet_module, module_files, module_options, defaults, options)
135
- rescue
135
+ rescue # rubocop:disable Lint/RescueWithoutErrorClass
136
136
  STDERR.puts "Error while updating #{puppet_module}"
137
137
  raise unless options[:skip_broken]
138
138
  puts "Skipping #{puppet_module} as update process failed"
@@ -19,7 +19,7 @@ module ModuleSync
19
19
  end
20
20
 
21
21
  def self.switch_branch(repo, branch)
22
- return if repo.branch.name == branch
22
+ return if repo.current_branch == branch
23
23
 
24
24
  if local_branch_exists?(repo, branch)
25
25
  puts "Switching to branch #{branch}"
@@ -136,7 +136,7 @@ module ModuleSync
136
136
  puts "There were no files to update in #{name}. Not committing."
137
137
  else
138
138
  puts git_error
139
- exit
139
+ exit(1)
140
140
  end
141
141
  end
142
142
  end
@@ -146,7 +146,7 @@ module ModuleSync
146
146
  # https://github.com/schacon/ruby-git/issues/130
147
147
  def self.untracked_unignored_files(repo)
148
148
  ignore_path = "#{repo.dir.path}/.gitignore"
149
- ignored = File.exist?(ignore_path) ? File.open(ignore_path).read.split : []
149
+ ignored = File.exist?(ignore_path) ? File.read(ignore_path).split : []
150
150
  repo.status.untracked.keep_if { |f, _| ignored.none? { |i| File.fnmatch(i, f) } }
151
151
  end
152
152
 
@@ -162,7 +162,7 @@ module ModuleSync
162
162
  end
163
163
 
164
164
  puts 'Files added:'
165
- untracked_unignored_files(repo).each do |file, _|
165
+ untracked_unignored_files(repo).each_key do |file|
166
166
  puts file
167
167
  end
168
168
 
@@ -12,14 +12,14 @@ module ModuleSync
12
12
  end
13
13
 
14
14
  def content(arguments)
15
- <<-EOF
15
+ <<-CONTENT
16
16
  #!/usr/bin/env bash
17
17
 
18
18
  current_branch=\`git symbolic-ref HEAD | sed -e 's,.*/\(.*\),\1,'\`
19
19
  git_dir=\`git rev-parse --show-toplevel\`
20
20
  message=\`git log -1 --format=%B\`
21
21
  msync -m "\$message" #{arguments}
22
- EOF
22
+ CONTENT
23
23
  end
24
24
 
25
25
  def activate
data/modulesync.gemspec CHANGED
@@ -1,11 +1,9 @@
1
- # coding: utf-8
2
-
3
1
  lib = File.expand_path('../lib', __FILE__)
4
2
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
5
3
 
6
4
  Gem::Specification.new do |spec|
7
5
  spec.name = 'modulesync'
8
- spec.version = '0.8.1'
6
+ spec.version = '0.8.2'
9
7
  spec.authors = ['Vox Pupuli']
10
8
  spec.email = ['voxpupuli@groups.io']
11
9
  spec.summary = 'Puppet Module Synchronizer'
@@ -23,7 +21,7 @@ Gem::Specification.new do |spec|
23
21
  spec.add_development_dependency 'bundler'
24
22
  spec.add_development_dependency 'rake'
25
23
  spec.add_development_dependency 'rspec'
26
- spec.add_development_dependency 'rubocop'
24
+ spec.add_development_dependency 'rubocop', '~> 0.50.0'
27
25
 
28
26
  spec.add_runtime_dependency 'git', '~>1.3'
29
27
  spec.add_runtime_dependency 'puppet-blacksmith', '~>3.0'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: modulesync
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.1
4
+ version: 0.8.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vox Pupuli
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-05-08 00:00:00.000000000 Z
11
+ date: 2017-11-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aruba
@@ -70,16 +70,16 @@ dependencies:
70
70
  name: rubocop
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - ">="
73
+ - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '0'
75
+ version: 0.50.0
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - ">="
80
+ - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '0'
82
+ version: 0.50.0
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: git
85
85
  requirement: !ruby/object:Gem::Requirement
@@ -179,7 +179,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
179
179
  version: '0'
180
180
  requirements: []
181
181
  rubyforge_project:
182
- rubygems_version: 2.4.8
182
+ rubygems_version: 2.7.2
183
183
  signing_key:
184
184
  specification_version: 4
185
185
  summary: Puppet Module Synchronizer