vanagon 0.27.0 → 0.28.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: 438c2be5dadbbd1c1a7fb9eb3d9b2965afefbe753c494192ade66548224c0a5c
4
- data.tar.gz: d91a50ecbaba25c85d285c19942f157d16fd4041875ef2220015a43512091b49
3
+ metadata.gz: 00034c4fe7b0e35639a03953d65d4ba132e471f2363d2f3e557a19f61c925054
4
+ data.tar.gz: 262931385449e18763989f2e39ebb91e6f1d718de3350273d64de0064755d7cf
5
5
  SHA512:
6
- metadata.gz: 85f94351218ff42271ff6cb521d6f4aa2813fe04079e8f5ea6f921fefdcd56fdf983ffd261c8169443257e7b1d5744f35a36137d330ae8ba040ad2781bc785ed
7
- data.tar.gz: 686ad0b981cb619c791941e28ffdbf7583a38ddeb0b59ae050c62c78bfee98cf39c52f14cd8b627acaec41eac721cb44140f4756f5426463b980039a706d31e8
6
+ metadata.gz: 8a6d7230aff64e44af6d1bfdfe311494ae0fa5b346cbf38f537c62ce9472c0282ec78b19781eb40e441dc0e292eecf605d7c37bf3e64aaf45bae17aacfed7014
7
+ data.tar.gz: 80e72898b8fdc9d5fba797b22749f73ddf23346038615f82a82132503e8b24aabf0a58134a825fed0f9aa932710976b3d6c00b1b4bfa10116de84294bb18546e
@@ -46,7 +46,7 @@ class Vanagon
46
46
  end
47
47
 
48
48
  # These could be templates, but their content is static, so that seems weird.
49
- File.open(File.join(deb_dir, "compat"), "w") { |f| f.puts("7") }
49
+ File.open(File.join(deb_dir, 'compat'), 'w') { |f| f.puts('10') }
50
50
  FileUtils.mkdir_p(File.join(deb_dir, "source"))
51
51
  File.open(File.join(deb_dir, "source", "format"), "w") { |f| f.puts("3.0 (quilt)") }
52
52
  end
@@ -0,0 +1,17 @@
1
+ platform 'fedora-36-x86_64' do |plat|
2
+ plat.servicedir '/usr/lib/systemd/system'
3
+ plat.defaultdir '/etc/sysconfig'
4
+ plat.servicetype 'systemd'
5
+ plat.dist 'fc36'
6
+
7
+ packages = %w[
8
+ autoconf automake bzip2-devel gcc gcc-c++ libselinux-devel
9
+ libsepol libsepol-devel make cmake pkgconfig readline-devel
10
+ rpmdevtools rsync swig zlib-devel systemtap-sdt-devel
11
+ perl-lib perl-FindBin
12
+ ]
13
+ plat.provision_with("/usr/bin/dnf install -y --best --allowerasing #{packages.join(' ')}")
14
+
15
+ plat.install_build_dependencies_with '/usr/bin/dnf install -y --best --allowerasing'
16
+ plat.vmpooler_template 'fedora-36-x86_64'
17
+ end
@@ -144,22 +144,34 @@ class Vanagon
144
144
 
145
145
  VERSION_REGEX = /^([=<>]+)\s*([^<>=]*)$/.freeze
146
146
 
147
- # Loads a given platform from the configdir
147
+ # Loads a platform from the config/platforms directory
148
148
  #
149
- # @param name [String] the name of the platform
150
- # @param configdir [String] the path to the platform config file
149
+ # @param platform_name [String] the name of the platform
150
+ # @param config_directory [String] the path to the platform config file
151
151
  # @return [Vanagon::Platform] the platform as specified in the platform config
152
152
  # @raise if the instance_eval on Platform fails, the exception is reraised
153
- def self.load_platform(name, configdir)
154
- platfile = File.join(configdir, "#{name}.rb")
155
- dsl = Vanagon::Platform::DSL.new(name)
156
- dsl.instance_eval(File.read(platfile), platfile, 1)
157
- dsl._platform
158
- rescue StandardError => e
159
- VanagonLogger.error "Error loading platform '#{name}' using '#{platfile}':"
160
- VanagonLogger.error(e)
161
- VanagonLogger.error e.backtrace.join("\n")
162
- raise e
153
+ def self.load_platform(platform_name, config_directory) # rubocop:disable Metrics/AbcSize
154
+ platform_name = File.basename(platform_name, '.rb')
155
+ platform_file_name = "#{platform_name}.rb"
156
+ platform_path = File.join(config_directory, platform_file_name)
157
+
158
+ begin
159
+ platform_definition = File.read(platform_path)
160
+ rescue Errno::ENOENT, Errno::EACCES => e
161
+ VanagonLogger.error "Error loading '#{platform_name}': #{e}"
162
+ exit 1
163
+ end
164
+
165
+ dsl = Vanagon::Platform::DSL.new(platform_name)
166
+ begin
167
+ dsl.instance_eval(platform_definition, platform_path, 1)
168
+ dsl._platform
169
+ rescue StandardError => e
170
+ VanagonLogger.error "Error loading platform '#{platform_name}' using '#{platform_path}':"
171
+ VanagonLogger.error(e)
172
+ VanagonLogger.error e.backtrace.join("\n")
173
+ raise e
174
+ end
163
175
  end
164
176
 
165
177
  # Generate the scripts required to add a group to the package generated.
@@ -5,7 +5,7 @@
5
5
  <license file="<%= @name -%>-License.rtf"/>
6
6
  <domains enable_anywhere="true" enable_currentUserHome="false" enable_localSystem="true" />
7
7
  <pkg-ref id="<%= @identifier-%>.<%= @name -%>"/>
8
- <options customize="never" hostArchitectures="i386" require-scripts="false"/>
8
+ <options customize="never" hostArchitectures="x86_64,arm64" require-scripts="false"/>
9
9
  <choices-outline>
10
10
  <line choice="default">
11
11
  <line choice="<%= @identifier-%>.<%= @name -%>"/>
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vanagon
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.27.0
4
+ version: 0.28.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Puppet Labs
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-06-06 00:00:00.000000000 Z
11
+ date: 2022-07-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: docopt
@@ -169,6 +169,7 @@ files:
169
169
  - lib/vanagon/platform/defaults/el-9-x86_64.rb
170
170
  - lib/vanagon/platform/defaults/fedora-32-x86_64.rb
171
171
  - lib/vanagon/platform/defaults/fedora-34-x86_64.rb
172
+ - lib/vanagon/platform/defaults/fedora-36-x86_64.rb
172
173
  - lib/vanagon/platform/defaults/osx-10.15-x86_64.rb
173
174
  - lib/vanagon/platform/defaults/osx-11-x86_64.rb
174
175
  - lib/vanagon/platform/defaults/osx-12-x86_64.rb
@@ -333,41 +334,41 @@ specification_version: 3
333
334
  summary: All of your packages will fit into this van with this one simple trick.
334
335
  test_files:
335
336
  - spec/lib/git/rev_list_spec.rb
336
- - spec/lib/vanagon/cli_spec.rb
337
337
  - spec/lib/vanagon/environment_spec.rb
338
- - spec/lib/vanagon/platform_spec.rb
339
- - spec/lib/vanagon/engine/base_spec.rb
340
- - spec/lib/vanagon/engine/ec2_spec.rb
341
- - spec/lib/vanagon/engine/docker_spec.rb
342
- - spec/lib/vanagon/engine/always_be_scheduling_spec.rb
343
- - spec/lib/vanagon/engine/hardware_spec.rb
344
- - spec/lib/vanagon/engine/pooler_spec.rb
345
- - spec/lib/vanagon/engine/local_spec.rb
346
- - spec/lib/vanagon/common/user_spec.rb
347
- - spec/lib/vanagon/common/pathname_spec.rb
348
- - spec/lib/vanagon/utilities/extra_files_signer_spec.rb
338
+ - spec/lib/vanagon/project/dsl_spec.rb
339
+ - spec/lib/vanagon/extensions/string_spec.rb
340
+ - spec/lib/vanagon/extensions/set/json_spec.rb
341
+ - spec/lib/vanagon/extensions/ostruct/json_spec.rb
349
342
  - spec/lib/vanagon/utilities/shell_utilities_spec.rb
350
- - spec/lib/vanagon/component/source_spec.rb
343
+ - spec/lib/vanagon/utilities/extra_files_signer_spec.rb
344
+ - spec/lib/vanagon/component/dsl_spec.rb
351
345
  - spec/lib/vanagon/component/source/http_spec.rb
352
346
  - spec/lib/vanagon/component/source/rewrite_spec.rb
353
347
  - spec/lib/vanagon/component/source/local_spec.rb
354
348
  - spec/lib/vanagon/component/source/git_spec.rb
355
- - spec/lib/vanagon/component/dsl_spec.rb
349
+ - spec/lib/vanagon/component/source_spec.rb
356
350
  - spec/lib/vanagon/component/rules_spec.rb
357
- - spec/lib/vanagon/utilities_spec.rb
358
- - spec/lib/vanagon/extensions/ostruct/json_spec.rb
359
- - spec/lib/vanagon/extensions/set/json_spec.rb
360
- - spec/lib/vanagon/extensions/string_spec.rb
361
- - spec/lib/vanagon/driver_spec.rb
362
- - spec/lib/vanagon/project/dsl_spec.rb
363
- - spec/lib/vanagon/component_spec.rb
351
+ - spec/lib/vanagon/platform/deb_spec.rb
352
+ - spec/lib/vanagon/platform/rpm/aix_spec.rb
353
+ - spec/lib/vanagon/platform/osx_spec.rb
364
354
  - spec/lib/vanagon/platform/solaris_11_spec.rb
355
+ - spec/lib/vanagon/platform/dsl_spec.rb
356
+ - spec/lib/vanagon/platform/rpm_spec.rb
365
357
  - spec/lib/vanagon/platform/solaris_10_spec.rb
366
- - spec/lib/vanagon/platform/osx_spec.rb
367
358
  - spec/lib/vanagon/platform/windows_spec.rb
368
- - spec/lib/vanagon/platform/rpm_spec.rb
369
- - spec/lib/vanagon/platform/dsl_spec.rb
370
- - spec/lib/vanagon/platform/deb_spec.rb
371
- - spec/lib/vanagon/platform/rpm/aix_spec.rb
359
+ - spec/lib/vanagon/common/pathname_spec.rb
360
+ - spec/lib/vanagon/common/user_spec.rb
361
+ - spec/lib/vanagon/driver_spec.rb
362
+ - spec/lib/vanagon/platform_spec.rb
363
+ - spec/lib/vanagon/component_spec.rb
372
364
  - spec/lib/vanagon/project_spec.rb
365
+ - spec/lib/vanagon/engine/ec2_spec.rb
366
+ - spec/lib/vanagon/engine/docker_spec.rb
367
+ - spec/lib/vanagon/engine/pooler_spec.rb
368
+ - spec/lib/vanagon/engine/local_spec.rb
369
+ - spec/lib/vanagon/engine/always_be_scheduling_spec.rb
370
+ - spec/lib/vanagon/engine/base_spec.rb
371
+ - spec/lib/vanagon/engine/hardware_spec.rb
372
+ - spec/lib/vanagon/cli_spec.rb
373
+ - spec/lib/vanagon/utilities_spec.rb
373
374
  - spec/lib/makefile_spec.rb