modulesync 3.3.0 → 3.4.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 615bffaa29507db526e145f6237667c29c4bb4e86542293b0d0645c11136fd64
4
- data.tar.gz: 0cee8e4725e11f2087b5a916d668cbf614e25d40ea064c82f6f6979675a3d11c
3
+ metadata.gz: f6087b3499f62ca2819821c812e50c73ef47e2253b2b606c29d1aa580bd7890a
4
+ data.tar.gz: 50f9293846f557f50be50b63712e80e820644476f6dd2dbb1ae6fd578979835f
5
5
  SHA512:
6
- metadata.gz: 86528c3b79d79bcfd57b13e0d999f653c6d1a5855db4078f812830f5326b9af52d511174914ed821999e014f151bab48c789364697e579ec8bcc9b9c4881d516
7
- data.tar.gz: ee485fee4217c6677c6d8d9c2fa15b42c3f8d8f33bde34b02598966315dd86b8bc54ec02d74a999c03afa98f254fe1799824c6057182a3a83e5efe5bcd84cd2a
6
+ metadata.gz: 8cadc4376ffb2ec3ec8970314e1af5a9d2ba69a400a34e50d6af50e43aeaa3711b5ed8467e5a1b51c1ee58361af382037f2ca4f29fec21dc6d077a3786119cc6
7
+ data.tar.gz: e7bb6e5550786dc7f3f5d09fbc3f547a23a95fe91aa6ca6a3d50c6223846d9f3d710d9d626b450c0d9fdbad71048dfb3895bde0c812309cfd30384502b68a139
@@ -11,8 +11,10 @@ env:
11
11
  BUNDLE_WITHOUT: release
12
12
 
13
13
  jobs:
14
- rubocop:
15
- runs-on: ubuntu-latest
14
+ rubocop_and_matrix:
15
+ runs-on: ubuntu-24.04
16
+ outputs:
17
+ ruby: ${{ steps.ruby.outputs.versions }}
16
18
  steps:
17
19
  - uses: actions/checkout@v4
18
20
  - name: Setup ruby
@@ -22,22 +24,16 @@ jobs:
22
24
  bundler-cache: true
23
25
  - name: Run linter
24
26
  run: bundle exec rake rubocop
27
+ - id: ruby
28
+ uses: voxpupuli/ruby-version@v1
25
29
  test:
26
- needs: rubocop
27
- runs-on: ubuntu-latest
30
+ name: "Ruby ${{ matrix.ruby }}"
31
+ needs: rubocop_and_matrix
32
+ runs-on: ubuntu-24.04
28
33
  strategy:
29
34
  fail-fast: false
30
35
  matrix:
31
- include:
32
- - ruby: "2.7"
33
- - ruby: "3.0"
34
- - ruby: "3.1"
35
- codecov: "yes"
36
- - ruby: "3.2"
37
- - ruby: "3.3"
38
- - ruby: "3.4"
39
- env:
40
- CODECOV: ${{ matrix.codecov }}
36
+ ruby: ${{ fromJSON(needs.rubocop_and_matrix.outputs.ruby) }}
41
37
  steps:
42
38
  - uses: actions/checkout@v4
43
39
  - name: Install Ruby ${{ matrix.ruby }}
@@ -53,7 +49,7 @@ jobs:
53
49
  run: gem build --strict --verbose *.gemspec
54
50
  tests:
55
51
  needs:
56
- - rubocop
52
+ - rubocop_and_matrix
57
53
  - test
58
54
  runs-on: ubuntu-latest
59
55
  name: Test suite
data/.rubocop_todo.yml CHANGED
@@ -1,6 +1,6 @@
1
1
  # This configuration was generated by
2
2
  # `rubocop --auto-gen-config`
3
- # on 2024-05-17 11:57:48 UTC using RuboCop version 1.63.5.
3
+ # on 2025-05-21 12:14:38 UTC using RuboCop version 1.75.6.
4
4
  # The point is for the user to remove these configuration records
5
5
  # one by one as the offenses are removed from the code base.
6
6
  # Note that changes in the inspected code, or installation of new
@@ -12,6 +12,11 @@ Lint/SuppressedException:
12
12
  Exclude:
13
13
  - 'Rakefile'
14
14
 
15
+ # Offense count: 1
16
+ Lint/UselessConstantScoping:
17
+ Exclude:
18
+ - 'spec/helpers/faker/puppet_module_remote_repo.rb'
19
+
15
20
  # Offense count: 3
16
21
  # Configuration parameters: Prefixes, AllowedPatterns.
17
22
  # Prefixes: when, with, without
@@ -26,14 +31,6 @@ RSpec/ContextWording:
26
31
  RSpec/ExampleLength:
27
32
  Max: 16
28
33
 
29
- # Offense count: 2
30
- # Configuration parameters: Include, CustomTransform, IgnoreMethods, SpecSuffixOnly.
31
- # Include: **/*_spec*rb*, **/spec/**/*
32
- RSpec/FilePath:
33
- Exclude:
34
- - 'spec/unit/module_sync/git_service/github_spec.rb'
35
- - 'spec/unit/module_sync/git_service/gitlab_spec.rb'
36
-
37
34
  # Offense count: 19
38
35
  # Configuration parameters: AssignmentOnly.
39
36
  RSpec/InstanceVariable:
@@ -109,7 +106,7 @@ Style/OptionalBooleanParameter:
109
106
 
110
107
  # Offense count: 6
111
108
  # This cop supports safe autocorrection (--autocorrect).
112
- # Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, AllowedPatterns.
109
+ # Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, AllowedPatterns, SplitStrings.
113
110
  # URISchemes: http, https
114
111
  Layout/LineLength:
115
112
  Max: 169
data/CHANGELOG.md CHANGED
@@ -2,6 +2,17 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file.
4
4
 
5
+ ## [3.4.0](https://github.com/voxpupuli/modulesync/tree/3.4.0) (2025-05-21)
6
+
7
+ [Full Changelog](https://github.com/voxpupuli/modulesync/compare/3.3.0...3.4.0)
8
+
9
+ **Merged pull requests:**
10
+
11
+ - Disable coverage reports [\#300](https://github.com/voxpupuli/modulesync/pull/300) ([bastelfreak](https://github.com/bastelfreak))
12
+ - voxpupuli-rubocop: Update 3.0.0-\>3.1.0 [\#299](https://github.com/voxpupuli/modulesync/pull/299) ([bastelfreak](https://github.com/bastelfreak))
13
+ - voxpupuli-rubocop: Update 2.8.0-\>3.0.0 [\#297](https://github.com/voxpupuli/modulesync/pull/297) ([bastelfreak](https://github.com/bastelfreak))
14
+ - Allow thor 1.3.2 and newer [\#293](https://github.com/voxpupuli/modulesync/pull/293) ([dependabot[bot]](https://github.com/apps/dependabot))
15
+
5
16
  ## [3.3.0](https://github.com/voxpupuli/modulesync/tree/3.3.0) (2025-02-26)
6
17
 
7
18
  [Full Changelog](https://github.com/voxpupuli/modulesync/compare/3.2.0...3.3.0)
data/Gemfile CHANGED
@@ -8,8 +8,3 @@ group :release, optional: true do
8
8
  gem 'faraday-retry', '~> 2.1', require: false
9
9
  gem 'github_changelog_generator', '~> 1.16', require: false
10
10
  end
11
-
12
- group :coverage, optional: ENV['CODECOV'] != 'yes' do
13
- gem 'codecov', require: false
14
- gem 'simplecov-console', require: false
15
- end
data/bin/msync CHANGED
@@ -1,22 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
2
  # frozen_string_literal: true
3
3
 
4
- if ENV['COVERAGE']
5
- # This block allow us to grab code coverage when running this script.
6
- #
7
- # Note: This environment variable (ie. COVERAGE) is set in Cucumber/Aruba configuration to collect reports
8
- simplecov_root = File.expand_path File.join(File.dirname(__FILE__), '..')
9
-
10
- # When running with aruba simplecov was using /tmp/aruba as the root folder.
11
- # This is to force using the project folder
12
- ENV['SIMPLECOV_ROOT'] = simplecov_root
13
- require 'simplecov'
14
-
15
- # https://github.com/simplecov-ruby/simplecov/issues/234
16
- # As described in the issue, every process must have an unique name:
17
- SimpleCov.command_name "#{File.basename $PROGRAM_NAME} (pid: #{Process.pid})"
18
- end
19
-
20
4
  lib = File.expand_path('../lib', __dir__)
21
5
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
22
6
 
@@ -37,8 +37,8 @@ Feature: execute
37
37
  When I successfully run `msync help exec`
38
38
  Then the stdout should contain:
39
39
  """
40
- [--fail-fast], [--no-fail-fast] # Abort the run after a command execution failure
41
- # Default: true
40
+ [--fail-fast], [--no-fail-fast], [--skip-fail-fast] # Abort the run after a command execution failure
41
+ # Default: true
42
42
  """
43
43
 
44
44
  Scenario: Override fail-fast default value using config file
@@ -46,6 +46,6 @@ Feature: execute
46
46
  When I successfully run `msync help exec`
47
47
  Then the stdout should contain:
48
48
  """
49
- [--fail-fast], [--no-fail-fast] # Abort the run after a command execution failure
49
+ [--fail-fast], [--no-fail-fast], [--skip-fail-fast] # Abort the run after a command execution failure
50
50
  """
51
51
  # NOTE: It seems there is a Thor bug here: default value is missing in help when sets to 'false'
@@ -1,9 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'simplecov'
4
-
5
- SimpleCov.command_name 'Cucumber'
6
-
7
3
  require 'aruba/cucumber'
8
4
 
9
5
  require_relative '../../spec/helpers/faker'
@@ -13,8 +9,5 @@ ModuleSync::Faker.working_directory = File.expand_path('faker', Aruba.config.wor
13
9
  Before do
14
10
  @aruba_timeout_seconds = 5
15
11
 
16
- # This enables coverage when aruba runs `msync` executable (cf. `bin/msync`)
17
- set_environment_variable('COVERAGE', '1')
18
-
19
12
  aruba.config.activate_announcer_on_command_failure = %i[stdout stderr]
20
13
  end
@@ -183,7 +183,7 @@ module ModuleSync
183
183
  option :fail_fast,
184
184
  type: :boolean,
185
185
  desc: 'Abort the run after a command execution failure',
186
- default: CLI.defaults[:fail_fast].nil? ? true : CLI.defaults[:fail_fast]
186
+ default: CLI.defaults[:fail_fast].nil? || CLI.defaults[:fail_fast]
187
187
  def execute(*command_args)
188
188
  raise Thor::Error, 'COMMAND is a required argument' if command_args.empty?
189
189
 
data/modulesync.gemspec CHANGED
@@ -5,7 +5,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
5
5
 
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = 'modulesync'
8
- spec.version = '3.3.0'
8
+ spec.version = '3.4.0'
9
9
  spec.authors = ['Vox Pupuli']
10
10
  spec.email = ['voxpupuli@groups.io']
11
11
  spec.summary = 'Puppet Module Synchronizer'
@@ -22,12 +22,12 @@ Gem::Specification.new do |spec|
22
22
  spec.add_development_dependency 'cucumber', '~> 9.2'
23
23
  spec.add_development_dependency 'rake', '~> 13.2', '>= 13.2.1'
24
24
  spec.add_development_dependency 'rspec', '~> 3.13'
25
- spec.add_development_dependency 'simplecov', '~> 0.22.0'
26
- spec.add_development_dependency 'voxpupuli-rubocop', '~> 2.8.0'
25
+ spec.add_development_dependency 'voxpupuli-rubocop', '~> 3.1.0'
27
26
 
28
- spec.add_runtime_dependency 'git', '~>1.7'
29
- spec.add_runtime_dependency 'gitlab', '>=4', '<6'
30
- spec.add_runtime_dependency 'octokit', '>=4', '<10'
31
- spec.add_runtime_dependency 'puppet-blacksmith', '>= 3.0', '< 9'
32
- spec.add_runtime_dependency 'thor', '1.3.0'
27
+ spec.add_dependency 'git', '~>1.7'
28
+ spec.add_dependency 'gitlab', '>=4', '<6'
29
+ spec.add_dependency 'octokit', '>=4', '<10'
30
+ spec.add_dependency 'puppet-blacksmith', '>= 3.0', '< 9'
31
+ # 1.3.1 has a bug that was fixed in 1.3.2 https://github.com/rails/thor/pull/878
32
+ spec.add_dependency 'thor', '~> 1.3', '!= 1.3.1'
33
33
  end
data/spec/spec_helper.rb CHANGED
@@ -1,5 +1,3 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'simplecov'
4
-
5
3
  require 'modulesync'
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: modulesync
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.3.0
4
+ version: 3.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vox Pupuli
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2025-02-26 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: aruba
@@ -71,34 +71,20 @@ dependencies:
71
71
  - - "~>"
72
72
  - !ruby/object:Gem::Version
73
73
  version: '3.13'
74
- - !ruby/object:Gem::Dependency
75
- name: simplecov
76
- requirement: !ruby/object:Gem::Requirement
77
- requirements:
78
- - - "~>"
79
- - !ruby/object:Gem::Version
80
- version: 0.22.0
81
- type: :development
82
- prerelease: false
83
- version_requirements: !ruby/object:Gem::Requirement
84
- requirements:
85
- - - "~>"
86
- - !ruby/object:Gem::Version
87
- version: 0.22.0
88
74
  - !ruby/object:Gem::Dependency
89
75
  name: voxpupuli-rubocop
90
76
  requirement: !ruby/object:Gem::Requirement
91
77
  requirements:
92
78
  - - "~>"
93
79
  - !ruby/object:Gem::Version
94
- version: 2.8.0
80
+ version: 3.1.0
95
81
  type: :development
96
82
  prerelease: false
97
83
  version_requirements: !ruby/object:Gem::Requirement
98
84
  requirements:
99
85
  - - "~>"
100
86
  - !ruby/object:Gem::Version
101
- version: 2.8.0
87
+ version: 3.1.0
102
88
  - !ruby/object:Gem::Dependency
103
89
  name: git
104
90
  requirement: !ruby/object:Gem::Requirement
@@ -177,16 +163,22 @@ dependencies:
177
163
  name: thor
178
164
  requirement: !ruby/object:Gem::Requirement
179
165
  requirements:
180
- - - '='
166
+ - - "~>"
181
167
  - !ruby/object:Gem::Version
182
- version: 1.3.0
168
+ version: '1.3'
169
+ - - "!="
170
+ - !ruby/object:Gem::Version
171
+ version: 1.3.1
183
172
  type: :runtime
184
173
  prerelease: false
185
174
  version_requirements: !ruby/object:Gem::Requirement
186
175
  requirements:
187
- - - '='
176
+ - - "~>"
177
+ - !ruby/object:Gem::Version
178
+ version: '1.3'
179
+ - - "!="
188
180
  - !ruby/object:Gem::Version
189
- version: 1.3.0
181
+ version: 1.3.1
190
182
  description: Utility to synchronize common files across puppet modules in Github.
191
183
  email:
192
184
  - voxpupuli@groups.io
@@ -203,7 +195,6 @@ files:
203
195
  - ".rspec"
204
196
  - ".rubocop.yml"
205
197
  - ".rubocop_todo.yml"
206
- - ".simplecov"
207
198
  - CHANGELOG.md
208
199
  - Gemfile
209
200
  - HISTORY.md
@@ -270,7 +261,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
270
261
  - !ruby/object:Gem::Version
271
262
  version: '0'
272
263
  requirements: []
273
- rubygems_version: 3.6.2
264
+ rubygems_version: 3.6.7
274
265
  specification_version: 4
275
266
  summary: Puppet Module Synchronizer
276
267
  test_files: []
data/.simplecov DELETED
@@ -1,48 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- SimpleCov.start do
4
- if ENV['SIMPLECOV_ROOT']
5
- SimpleCov.root(ENV['SIMPLECOV_ROOT'])
6
-
7
- filters.clear # This will remove the :root_filter and :bundler_filter that come via simplecov's defaults
8
-
9
- # Because simplecov filters everything outside of the SimpleCov.root
10
- # This should be added, cf.
11
- # https://github.com/colszowka/simplecov#default-root-filter-and-coverage-for-things-outside-of-it
12
- add_filter do |src|
13
- src.filename !~ /^#{SimpleCov.root}/
14
- end
15
- end
16
-
17
- add_group 'Source code', 'lib'
18
-
19
- add_group 'Unit tests', 'spec'
20
-
21
- add_group 'Behavior tests', 'features'
22
- add_filter '/features/support/env.rb'
23
-
24
- enable_coverage :branch
25
-
26
- # do not track vendored files
27
- add_filter '/vendor'
28
- add_filter '/.vendor'
29
-
30
- # exclude anything that is not in lib, spec or features directories
31
- add_filter do |src|
32
- src.filename !~ %r{^#{SimpleCov.root}/(lib|spec|features)}
33
- end
34
-
35
- track_files '**/*.rb'
36
- end
37
-
38
- if ENV['CODECOV'] == 'yes'
39
- require 'simplecov-console'
40
- require 'codecov'
41
-
42
- SimpleCov.formatters = [
43
- SimpleCov::Formatter::Console,
44
- SimpleCov::Formatter::Codecov,
45
- ]
46
- end
47
-
48
- # vim: filetype=ruby