kameleon-builder 2.10.11 → 2.10.13

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.
Files changed (45) hide show
  1. checksums.yaml +4 -4
  2. data/.bumpversion.cfg +1 -1
  3. data/AUTHORS +6 -5
  4. data/CHANGES +20 -0
  5. data/COPYING +5 -5
  6. data/erb/extend.yaml.erb +1 -1
  7. data/kameleon-builder.gemspec +12 -10
  8. data/lib/kameleon/cli.rb +1 -1
  9. data/lib/kameleon/engine.rb +1 -1
  10. data/lib/kameleon/persistent_cache.rb +1 -1
  11. data/lib/kameleon/recipe.rb +11 -11
  12. data/lib/kameleon/step.rb +3 -3
  13. data/lib/kameleon/version.rb +1 -1
  14. data/lib/kameleon.rb +4 -4
  15. metadata +24 -66
  16. data/contrib/scripts/VirtualBox_deploy.sh +0 -12
  17. data/contrib/scripts/chroot_env +0 -9
  18. data/contrib/scripts/create_passwd.py +0 -17
  19. data/contrib/scripts/umount-chroot.sh +0 -290
  20. data/contrib/steps/bootstrap/debian/bootstrap_if_needed.yaml +0 -47
  21. data/contrib/steps/bootstrap/debian/bootstrap_static.yaml +0 -38
  22. data/contrib/steps/bootstrap/debian/debootstrap_arm.yaml +0 -23
  23. data/contrib/steps/export/clean_appliance.yaml +0 -9
  24. data/contrib/steps/export/compact_qcow_img.yaml +0 -12
  25. data/contrib/steps/export/save_as_g5k.yaml +0 -63
  26. data/contrib/steps/setup/add_timestamp.yaml +0 -6
  27. data/contrib/steps/setup/add_to_sudoers.yaml +0 -5
  28. data/contrib/steps/setup/archlinux/configure_ruby.yaml +0 -7
  29. data/contrib/steps/setup/archlinux/install_dev_tools.yaml +0 -18
  30. data/contrib/steps/setup/archlinux/install_gnome.yaml +0 -27
  31. data/contrib/steps/setup/archlinux/install_yaourt.yaml +0 -29
  32. data/contrib/steps/setup/autologin.yaml +0 -16
  33. data/contrib/steps/setup/centos/6.5/configure_repo.yaml +0 -9
  34. data/contrib/steps/setup/copy_ssh_auth_file.yaml +0 -10
  35. data/contrib/steps/setup/debian/add_network_interface.yaml +0 -7
  36. data/contrib/steps/setup/debian/cluster_tools_install.yaml +0 -16
  37. data/contrib/steps/setup/debian/install_gnome.yaml +0 -13
  38. data/contrib/steps/setup/debian/install_kde.yaml +0 -13
  39. data/contrib/steps/setup/debian/network_config_static.yaml +0 -17
  40. data/contrib/steps/setup/generate_user_ssh_key.yaml +0 -15
  41. data/contrib/steps/setup/install_my_ssh_key.yaml +0 -26
  42. data/contrib/steps/setup/make_swap_file.yaml +0 -9
  43. data/contrib/steps/setup/root_ssh_config.yaml +0 -18
  44. data/contrib/steps/setup/set_user_password.yaml +0 -7
  45. data/contrib/steps/setup/system_optimization.yaml +0 -8
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 36e3991d3bbfbe79544b066ad82c004d593c495846ae1007ef480380f8ca2515
4
- data.tar.gz: d7b05320be1cad37d6ef1a2bcc5a4b0b9f24e8312e3e8583d68d9030a229ceb8
3
+ metadata.gz: 98949549d6db81a6e1f992d047d98cb1996422a1fafd974395983511f1a0fac0
4
+ data.tar.gz: 238e4bacb28a1061fb8ea65477949013357619501b40ceb28784e44feea51b26
5
5
  SHA512:
6
- metadata.gz: 9c4044be6f6dfe98512b5cbf291caff91383938d71d8575165b87c08e96954b428f60030a37635ce1ccb4bc3d60642cd20403bde1a441be166c647751719ccd5
7
- data.tar.gz: 64aaa77fa583af640ea93f4979bfac6a96a6d48f641207560f3457b18dab4404e980048e0bebaefa901fe7cf1aa66fd5f0a2941e245e05b476da3b88e44bd775
6
+ metadata.gz: 9d44ab789cd681b54a6db3b7377e52e6ba66acc76391a02397f87df1d1b33f66492a454eb3902bbf76aba8a07041000803001ca1cff7448b0d0d8a7260780671
7
+ data.tar.gz: 448f0ebb4d031e99f11edbf8608628c24698a17f1da187557c6695fef21c8038d3b83ba9bb6727e30fd2fef568236d4d51efffbc7a121db7b4368ca7eafa4db4
data/.bumpversion.cfg CHANGED
@@ -1,7 +1,7 @@
1
1
  [bumpversion]
2
2
  commit = True
3
3
  tag = True
4
- current_version = 2.10.11
4
+ current_version = 2.10.13
5
5
  parse = (?P<major>\d+)\.(?P<minor>\d+)\.(?P<patch>\d+)(\.(?P<release>[a-z]+))?
6
6
  serialize =
7
7
  {major}.{minor}.{patch}.{release}
data/AUTHORS CHANGED
@@ -1,8 +1,8 @@
1
1
  Kameleon is developed within the
2
2
  Laboratoire LIG
3
- INRIA Rhone Alpes
4
- 655 avenue de l'Europe
5
- 38330 Montbonnot Saint-Martin FRANCE
3
+ Batiment IMAG
4
+ 150 Place du Torrent
5
+ 38400 Saint Martin d'Hères FRANCE
6
6
 
7
7
  Kameleon is a sub-project of OAR, and so maintained by the OAR team.
8
8
 
@@ -11,9 +11,10 @@ Initially developed by:
11
11
  Joseph Emeras < Joseph.Emeras@imag.fr >
12
12
  Olivier Richard < olivier.richard@imag.fr >
13
13
  Philippe Le Brouster < philippe.le-brouster@imag.fr >
14
-
15
- Now maintained by:
16
14
  Salem Harrache < salem.harrache@inria.fr >
17
15
  Michael Mercier < michael.mercier@inria.fr >
18
16
  Cristan Ruiz < cristian.ruiz@imag.fr >
19
17
  Bruno Bzeznik < bruno.bzeznik@imag.fr >
18
+
19
+ Now maintained by:
20
+ Pierre Neyron < pierre.neyron@imag.fr >
data/CHANGES CHANGED
@@ -1,6 +1,26 @@
1
1
  Kameleon CHANGELOG
2
2
  ==================
3
3
 
4
+ Version 2.10.13
5
+ ---------------
6
+
7
+ Released on March 26th 2025
8
+
9
+ - Drop useless contrib directory.
10
+ - Rework gem summary and description.
11
+ - Update gem dependencies for gem install on Debian 11 and 13.
12
+ - Adapt sources to Ruby 3.1 - Psych's YAML: explicitly use YAML.unsafe_load.
13
+ - Add git to requirements, need for kameleon repo commands.
14
+
15
+ Version 2.10.12
16
+ ---------------
17
+
18
+ Released on February 18th 2025
19
+
20
+ - Fix AUTHORS: update maintainer.
21
+ - Fix bug with File.exists? (removed from ruby 3.3), use File.exist?
22
+ - Fix gemspec: License and update Thor to remove the DidYouMean::SPELL_CHECKERS warning.
23
+
4
24
  Version 2.10.11
5
25
  ---------------
6
26
 
data/COPYING CHANGED
@@ -55,7 +55,7 @@ patent must be licensed for everyone's free use or not licensed at all.
55
55
 
56
56
  The precise terms and conditions for copying, distribution and
57
57
  modification follow.
58
-
58
+
59
59
  GNU GENERAL PUBLIC LICENSE
60
60
  TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
61
61
 
@@ -110,7 +110,7 @@ above, provided that you also meet all of these conditions:
110
110
  License. (Exception: if the Program itself is interactive but
111
111
  does not normally print such an announcement, your work based on
112
112
  the Program is not required to print an announcement.)
113
-
113
+
114
114
  These requirements apply to the modified work as a whole. If
115
115
  identifiable sections of that work are not derived from the Program,
116
116
  and can be reasonably considered independent and separate works in
@@ -168,7 +168,7 @@ access to copy from a designated place, then offering equivalent
168
168
  access to copy the source code from the same place counts as
169
169
  distribution of the source code, even though third parties are not
170
170
  compelled to copy the source along with the object code.
171
-
171
+
172
172
  4. You may not copy, modify, sublicense, or distribute the Program
173
173
  except as expressly provided under this License. Any attempt
174
174
  otherwise to copy, modify, sublicense or distribute the Program is
@@ -225,7 +225,7 @@ impose that choice.
225
225
 
226
226
  This section is intended to make thoroughly clear what is believed to
227
227
  be a consequence of the rest of this License.
228
-
228
+
229
229
  8. If the distribution and/or use of the Program is restricted in
230
230
  certain countries either by patents or by copyrighted interfaces, the
231
231
  original copyright holder who places the Program under this License
@@ -278,7 +278,7 @@ PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
278
278
  POSSIBILITY OF SUCH DAMAGES.
279
279
 
280
280
  END OF TERMS AND CONDITIONS
281
-
281
+
282
282
  How to Apply These Terms to Your New Programs
283
283
 
284
284
  If you develop a new program, and you want it to be of the greatest
data/erb/extend.yaml.erb CHANGED
@@ -6,7 +6,7 @@
6
6
  #
7
7
  #==============================================================================
8
8
  # This recipe extends another. To look at the step involed, run:
9
- # kameleon dryrun <%= recipe_name %>
9
+ # kameleon build --dryrun <%= recipe_name %>
10
10
  # To see the variables that you can override, use the following command:
11
11
  # kameleon info <%= recipe_name %>
12
12
  ---
@@ -1,5 +1,6 @@
1
1
  # coding: utf-8
2
- lib = File.expand_path('../lib', __FILE__)
2
+
3
+ lib = File.expand_path('lib', __dir__)
3
4
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
5
  require 'kameleon/version'
5
6
 
@@ -17,10 +18,10 @@ Gem::Specification.new do |s|
17
18
  'camilo1729@gmail.com',
18
19
  'pierre.neyron@imag.fr',
19
20
  'bruno.bzeznik@imag.fr']
20
- s.description = %q{The mindful appliance builder}
21
- s.summary = %q{Kameleon is a tool to build system appliances from scratch}
21
+ s.summary = 'The mindful appliance builder'
22
+ s.description = 'Kameleon is a tool to build system appliances, possibly from scratch'
22
23
  s.homepage = 'http://kameleon.imag.fr/'
23
- s.license = 'GPL-2.0'
24
+ s.license = 'GPL-2.0-or-later'
24
25
 
25
26
  s.files = `git ls-files`.split($/)
26
27
  s.files.reject! { |file| file.start_with?('docs/') }
@@ -28,12 +29,13 @@ Gem::Specification.new do |s|
28
29
  s.test_files = s.files.grep(%r{^(tests|s|features)/})
29
30
  s.require_paths = ['lib']
30
31
 
31
- s.add_dependency 'childprocess', '~> 0.5.3', '>= 0.3.0'
32
- s.add_dependency 'thor', '~> 0.19', '>= 0.15.0'
33
- s.add_dependency 'table_print', '~> 1.5'
34
- s.add_dependency 'psych', '~> 2.0'
32
+ s.add_dependency 'childprocess', '~> 4.0'
33
+ s.add_dependency 'psych', '~> 5.0'
35
34
  s.add_dependency 'ruby-graphviz', '~> 1.2'
36
- s.add_dependency 'progressbar', '~> 1'
35
+ s.add_dependency 'ruby-progressbar', '~> 1.10'
36
+ s.add_dependency 'table_print', '~> 1.5'
37
+ s.add_dependency 'thor', '~> 1.0'
37
38
 
38
- s.requirements = ['polipo 1.0.3, or greater', 'graphviz 2.38.0 or greater']
39
+ s.requirements << 'git'
40
+ s.requirements << 'graphviz'
39
41
  end
data/lib/kameleon/cli.rb CHANGED
@@ -345,7 +345,7 @@ module Kameleon
345
345
  end
346
346
  end
347
347
  Kameleon.ui.info("Export recipe #{recipe_path} to directory: #{dest_path}")
348
- if File.exists?(dest_path)
348
+ if File.exist?(dest_path)
349
349
  unless options[:add]
350
350
  raise if Kameleon.ui.level("verbose")
351
351
  raise ExportError, "Target export directory '#{dest_path}' already "\
@@ -675,7 +675,7 @@ module Kameleon
675
675
 
676
676
  def load_build_recipe
677
677
  if File.file?(@build_recipe_path)
678
- result = YAML.load_file(@build_recipe_path)
678
+ result = YAML.unsafe_load_file(@build_recipe_path)
679
679
  return result if result
680
680
  end
681
681
  return nil
@@ -258,7 +258,7 @@ module Kameleon
258
258
  end
259
259
  ## We have to load the file
260
260
  metadata_dir = File.join(@cache_dir,"metadata")
261
- @cmd_cached = YAML.load(File.read("#{metadata_dir}/cache_cmd_index"))
261
+ @cmd_cached = YAML.unsafe_load(File.read("#{metadata_dir}/cache_cmd_index"))
262
262
  end
263
263
  @activated = true
264
264
  #@cached_recipe_dir = @cache_dir
@@ -85,7 +85,7 @@ module Kameleon
85
85
  steps_dirs.push(File.expand_path(File.join(p.to_s, 'steps')))
86
86
  steps_dirs.push(File.expand_path(File.join(p.to_s, '.steps')))
87
87
  end
88
- steps_dirs.select! { |x| File.exists? x }
88
+ steps_dirs.select! { |x| File.exist? x }
89
89
  end
90
90
 
91
91
  def load!(kwargs = {})
@@ -93,7 +93,7 @@ module Kameleon
93
93
  Kameleon.ui.verbose("Loading #{@path}")
94
94
  fail RecipeError, "Could not find this following recipe: #{@path}" \
95
95
  unless File.file? @path
96
- yaml_recipe = YAML.load_file @path
96
+ yaml_recipe = YAML.unsafe_load_file @path
97
97
  unless yaml_recipe.kind_of? Hash
98
98
  fail RecipeError, "Invalid yaml: #{@path}"
99
99
  end
@@ -137,7 +137,7 @@ module Kameleon
137
137
 
138
138
  # Resolve dynamically-defined variables !!
139
139
  resolved_global = Utils.resolve_vars(@global.to_yaml, @path, @global, self, kwargs)
140
- resolved_global = @global.merge YAML.load(resolved_global)
140
+ resolved_global = @global.merge YAML.unsafe_load(resolved_global)
141
141
  Kameleon.ui.debug("Resolved_global: #{resolved_global}")
142
142
  # Loads aliases
143
143
  load_aliases(yaml_recipe)
@@ -157,7 +157,7 @@ module Kameleon
157
157
  [File.join(steps_dir, section.name, path),
158
158
  File.join(steps_dir, path)]
159
159
  end
160
- end.flatten.select { |x| File.exists? x }
160
+ end.flatten.select { |x| File.exist? x }
161
161
  Kameleon.ui.debug("Directory to search for steps: #{dir_to_search}")
162
162
 
163
163
  if yaml_recipe.key? section.name
@@ -242,7 +242,7 @@ module Kameleon
242
242
  base_recipe_path << ".yaml" unless base_recipe_path.end_with? ".yaml"
243
243
  fail RecipeError, "Could not find this following recipe: #{@recipe_path}" \
244
244
  unless File.file? path
245
- base_yaml_recipe = YAML.load_file base_recipe_path
245
+ base_yaml_recipe = YAML.unsafe_load_file base_recipe_path
246
246
  unless yaml_recipe.kind_of? Hash
247
247
  fail RecipeError, "Invalid yaml: #{base_yaml_recipe}"
248
248
  end
@@ -298,7 +298,7 @@ module Kameleon
298
298
  def load_global_file(global_file, recipe_path)
299
299
  def try_to_load(absolute_path)
300
300
  if File.file?(absolute_path)
301
- global_to_include = YAML.load_file(absolute_path)
301
+ global_to_include = YAML.unsafe_load_file(absolute_path)
302
302
  if global_to_include.kind_of? Hash
303
303
  @step_files.push(absolute_path)
304
304
  return global_to_include
@@ -376,7 +376,7 @@ module Kameleon
376
376
  path = Pathname.new(File.join(dir_path, aliases_file))
377
377
  if File.file?(path)
378
378
  Kameleon.ui.verbose("Loading aliases #{path}")
379
- @aliases.merge!(YAML.load_file(path))
379
+ @aliases.merge!(YAML.unsafe_load_file(path))
380
380
  @step_files.push(path)
381
381
  return path
382
382
  end
@@ -439,7 +439,7 @@ module Kameleon
439
439
  path = Pathname.new(File.join(dir_path, checkpoint))
440
440
  if File.file?(path)
441
441
  Kameleon.ui.verbose("Loading checkpoint configuration #{path}")
442
- @checkpoint = YAML.load_file(path)
442
+ @checkpoint = YAML.unsafe_load_file(path)
443
443
  @checkpoint["path"] = path.to_s
444
444
  @step_files.push(path)
445
445
  break
@@ -461,7 +461,7 @@ module Kameleon
461
461
  macrostep_yaml = args
462
462
  step_path = @path
463
463
  else
464
- macrostep_yaml = YAML.load_file(step_path)
464
+ macrostep_yaml = YAML.unsafe_load_file(step_path)
465
465
  # Basic macrostep syntax check
466
466
  if not macrostep_yaml.kind_of? Array
467
467
  fail RecipeError, "The macrostep #{step_path} is not valid "
@@ -550,7 +550,7 @@ module Kameleon
550
550
  end
551
551
  # Resolve dynamically-defined variables !!
552
552
  resolved_global = Utils.resolve_vars(@global.to_yaml, @path, @global, self, kwargs)
553
- @global.merge! YAML.load(resolved_global)
553
+ @global.merge! YAML.unsafe_load(resolved_global)
554
554
 
555
555
  consistency_check
556
556
  resolve_checkpoint unless @checkpoint.nil?
@@ -652,7 +652,7 @@ module Kameleon
652
652
  Kameleon.ui.debug("Resolving alias '#{name}'")
653
653
  aliases_cmd = @aliases.fetch(name).clone
654
654
  aliases_cmd_str = aliases_cmd.to_yaml
655
- args = YAML.load(cmd.string_cmd)[name]
655
+ args = YAML.unsafe_load(cmd.string_cmd)[name]
656
656
  args = [].push(args).flatten # convert args to array
657
657
  expected_args_number = aliases_cmd_str.scan(/@\d+/).uniq.count
658
658
  if expected_args_number != args.count
data/lib/kameleon/step.rb CHANGED
@@ -23,7 +23,7 @@ module Kameleon
23
23
 
24
24
  def key
25
25
  if @key.nil?
26
- object = YAML.load(@string_cmd)
26
+ object = YAML.unsafe_load(@string_cmd)
27
27
  if object.kind_of? String
28
28
  @key = object
29
29
  else
@@ -40,7 +40,7 @@ module Kameleon
40
40
  def value
41
41
  if @value.nil?
42
42
  Kameleon.ui.debug("Parsed string = #{@string_cmd}")
43
- object = YAML.load(@string_cmd)
43
+ object = YAML.unsafe_load(@string_cmd)
44
44
  if object.kind_of? Command
45
45
  @value = object
46
46
  elsif object.kind_of? String
@@ -192,7 +192,7 @@ module Kameleon
192
192
  @path,
193
193
  tmp_resolved_vars.merge(global),
194
194
  recipe)
195
- tmp_resolved_vars.merge! YAML.load(yaml_resolved.chomp)
195
+ tmp_resolved_vars.merge! YAML.unsafe_load(yaml_resolved.chomp)
196
196
  end
197
197
  @variables.merge! tmp_resolved_vars
198
198
  @microsteps.each do |m|
@@ -1,3 +1,3 @@
1
1
  module Kameleon
2
- VERSION = '2.10.11'
2
+ VERSION = '2.10.13'
3
3
  end
data/lib/kameleon.rb CHANGED
@@ -40,7 +40,7 @@ module Kameleon
40
40
 
41
41
  def userdir
42
42
  @userdir ||= Pathname.new(File.join('~', '.kameleon.d'))
43
- Dir.mkdir(File.expand_path(@userdir.to_s)) unless File.exists?(File.expand_path(@userdir.to_s))
43
+ Dir.mkdir(File.expand_path(@userdir.to_s)) unless File.exist?(File.expand_path(@userdir.to_s))
44
44
  @userdir
45
45
  end
46
46
 
@@ -49,7 +49,7 @@ module Kameleon
49
49
  end
50
50
 
51
51
  def init_userconf()
52
- if not File.exists?(Kameleon.userconf_path) or File.zero?(Kameleon.userconf_path)
52
+ if not File.exist?(Kameleon.userconf_path) or File.zero?(Kameleon.userconf_path)
53
53
  File.open(Kameleon.userconf_path, 'w+') do |file|
54
54
  userconf_erb = File.join(Kameleon.erb_dirpath, "userconf.yaml.erb")
55
55
  erb = ERB.new(File.open(userconf_erb, 'rb') { |f| f.read })
@@ -60,8 +60,8 @@ module Kameleon
60
60
  end
61
61
 
62
62
  def load_userconf
63
- if File.exists?(Kameleon.userconf_path) and not File.zero?(Kameleon.userconf_path)
64
- yaml_conf = YAML.load_file Kameleon.userconf_path
63
+ if File.exist?(Kameleon.userconf_path) and not File.zero?(Kameleon.userconf_path)
64
+ yaml_conf = YAML.unsafe_load_file Kameleon.userconf_path
65
65
  unless yaml_conf.kind_of? Hash
66
66
  yaml_conf = {}
67
67
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kameleon-builder
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.10.11
4
+ version: 2.10.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - Salem Harrache
@@ -12,7 +12,7 @@ authors:
12
12
  autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
- date: 2023-10-10 00:00:00.000000000 Z
15
+ date: 2025-03-26 00:00:00.000000000 Z
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
18
18
  name: childprocess
@@ -20,97 +20,85 @@ dependencies:
20
20
  requirements:
21
21
  - - "~>"
22
22
  - !ruby/object:Gem::Version
23
- version: 0.5.3
24
- - - ">="
25
- - !ruby/object:Gem::Version
26
- version: 0.3.0
23
+ version: '4.0'
27
24
  type: :runtime
28
25
  prerelease: false
29
26
  version_requirements: !ruby/object:Gem::Requirement
30
27
  requirements:
31
28
  - - "~>"
32
29
  - !ruby/object:Gem::Version
33
- version: 0.5.3
34
- - - ">="
35
- - !ruby/object:Gem::Version
36
- version: 0.3.0
30
+ version: '4.0'
37
31
  - !ruby/object:Gem::Dependency
38
- name: thor
32
+ name: psych
39
33
  requirement: !ruby/object:Gem::Requirement
40
34
  requirements:
41
35
  - - "~>"
42
36
  - !ruby/object:Gem::Version
43
- version: '0.19'
44
- - - ">="
45
- - !ruby/object:Gem::Version
46
- version: 0.15.0
37
+ version: '5.0'
47
38
  type: :runtime
48
39
  prerelease: false
49
40
  version_requirements: !ruby/object:Gem::Requirement
50
41
  requirements:
51
42
  - - "~>"
52
43
  - !ruby/object:Gem::Version
53
- version: '0.19'
54
- - - ">="
55
- - !ruby/object:Gem::Version
56
- version: 0.15.0
44
+ version: '5.0'
57
45
  - !ruby/object:Gem::Dependency
58
- name: table_print
46
+ name: ruby-graphviz
59
47
  requirement: !ruby/object:Gem::Requirement
60
48
  requirements:
61
49
  - - "~>"
62
50
  - !ruby/object:Gem::Version
63
- version: '1.5'
51
+ version: '1.2'
64
52
  type: :runtime
65
53
  prerelease: false
66
54
  version_requirements: !ruby/object:Gem::Requirement
67
55
  requirements:
68
56
  - - "~>"
69
57
  - !ruby/object:Gem::Version
70
- version: '1.5'
58
+ version: '1.2'
71
59
  - !ruby/object:Gem::Dependency
72
- name: psych
60
+ name: ruby-progressbar
73
61
  requirement: !ruby/object:Gem::Requirement
74
62
  requirements:
75
63
  - - "~>"
76
64
  - !ruby/object:Gem::Version
77
- version: '2.0'
65
+ version: '1.10'
78
66
  type: :runtime
79
67
  prerelease: false
80
68
  version_requirements: !ruby/object:Gem::Requirement
81
69
  requirements:
82
70
  - - "~>"
83
71
  - !ruby/object:Gem::Version
84
- version: '2.0'
72
+ version: '1.10'
85
73
  - !ruby/object:Gem::Dependency
86
- name: ruby-graphviz
74
+ name: table_print
87
75
  requirement: !ruby/object:Gem::Requirement
88
76
  requirements:
89
77
  - - "~>"
90
78
  - !ruby/object:Gem::Version
91
- version: '1.2'
79
+ version: '1.5'
92
80
  type: :runtime
93
81
  prerelease: false
94
82
  version_requirements: !ruby/object:Gem::Requirement
95
83
  requirements:
96
84
  - - "~>"
97
85
  - !ruby/object:Gem::Version
98
- version: '1.2'
86
+ version: '1.5'
99
87
  - !ruby/object:Gem::Dependency
100
- name: progressbar
88
+ name: thor
101
89
  requirement: !ruby/object:Gem::Requirement
102
90
  requirements:
103
91
  - - "~>"
104
92
  - !ruby/object:Gem::Version
105
- version: '1'
93
+ version: '1.0'
106
94
  type: :runtime
107
95
  prerelease: false
108
96
  version_requirements: !ruby/object:Gem::Requirement
109
97
  requirements:
110
98
  - - "~>"
111
99
  - !ruby/object:Gem::Version
112
- version: '1'
113
- description: The mindful appliance builder
100
+ version: '1.0'
101
+ description: Kameleon is a tool to build system appliances, possibly from scratch
114
102
  email:
115
103
  - salem@harrache.info
116
104
  - michael.mercier@libr.fr
@@ -141,36 +129,6 @@ files:
141
129
  - contrib/kameleon_exec_cmd.sh
142
130
  - contrib/kameleon_exec_cmd_wrapper.sh
143
131
  - contrib/proxy_env.sh
144
- - contrib/scripts/VirtualBox_deploy.sh
145
- - contrib/scripts/chroot_env
146
- - contrib/scripts/create_passwd.py
147
- - contrib/scripts/umount-chroot.sh
148
- - contrib/steps/bootstrap/debian/bootstrap_if_needed.yaml
149
- - contrib/steps/bootstrap/debian/bootstrap_static.yaml
150
- - contrib/steps/bootstrap/debian/debootstrap_arm.yaml
151
- - contrib/steps/export/clean_appliance.yaml
152
- - contrib/steps/export/compact_qcow_img.yaml
153
- - contrib/steps/export/save_as_g5k.yaml
154
- - contrib/steps/setup/add_timestamp.yaml
155
- - contrib/steps/setup/add_to_sudoers.yaml
156
- - contrib/steps/setup/archlinux/configure_ruby.yaml
157
- - contrib/steps/setup/archlinux/install_dev_tools.yaml
158
- - contrib/steps/setup/archlinux/install_gnome.yaml
159
- - contrib/steps/setup/archlinux/install_yaourt.yaml
160
- - contrib/steps/setup/autologin.yaml
161
- - contrib/steps/setup/centos/6.5/configure_repo.yaml
162
- - contrib/steps/setup/copy_ssh_auth_file.yaml
163
- - contrib/steps/setup/debian/add_network_interface.yaml
164
- - contrib/steps/setup/debian/cluster_tools_install.yaml
165
- - contrib/steps/setup/debian/install_gnome.yaml
166
- - contrib/steps/setup/debian/install_kde.yaml
167
- - contrib/steps/setup/debian/network_config_static.yaml
168
- - contrib/steps/setup/generate_user_ssh_key.yaml
169
- - contrib/steps/setup/install_my_ssh_key.yaml
170
- - contrib/steps/setup/make_swap_file.yaml
171
- - contrib/steps/setup/root_ssh_config.yaml
172
- - contrib/steps/setup/set_user_password.yaml
173
- - contrib/steps/setup/system_optimization.yaml
174
132
  - erb/extend.yaml.erb
175
133
  - erb/userconf.yaml.erb
176
134
  - kameleon-builder.gemspec
@@ -218,7 +176,7 @@ files:
218
176
  - tests/test_version.rb
219
177
  homepage: http://kameleon.imag.fr/
220
178
  licenses:
221
- - GPL-2.0
179
+ - GPL-2.0-or-later
222
180
  metadata: {}
223
181
  post_install_message:
224
182
  rdoc_options: []
@@ -235,12 +193,12 @@ required_rubygems_version: !ruby/object:Gem::Requirement
235
193
  - !ruby/object:Gem::Version
236
194
  version: '0'
237
195
  requirements:
238
- - polipo 1.0.3, or greater
239
- - graphviz 2.38.0 or greater
196
+ - git
197
+ - graphviz
240
198
  rubygems_version: 3.2.5
241
199
  signing_key:
242
200
  specification_version: 4
243
- summary: Kameleon is a tool to build system appliances from scratch
201
+ summary: The mindful appliance builder
244
202
  test_files:
245
203
  - tests/helper.rb
246
204
  - tests/issue76/fail.stdout
@@ -1,12 +0,0 @@
1
- #!/bin/bash
2
- NAME=$1
3
- VBOX_DISK=$2
4
-
5
- VBoxManage createvm --name $NAME --register
6
- VBoxManage modifyvm $NAME --memory 512
7
- VBoxManage storagectl $NAME --name SATA --add sata --controller IntelAhci --bootable on --sataportcount 1
8
- VBoxManage storageattach $NAME --storagectl SATA --port 0 --device 0 --type hdd --medium $VBOX_DISK
9
- #VBoxManage modifyvm $NAME --nic1 hostonly
10
- #VBoxManage modifyvm $NAME --nic1 nat
11
- VBoxManage startvm $NAME
12
- #VBoxManage unregistervm $NAME --delete
@@ -1,9 +0,0 @@
1
- #kameleon chroot base bash environnement
2
-
3
- umask 022
4
-
5
- export USER=root
6
- export HOME=/root
7
- export PATH=/usr/bin:/usr/sbin:/bin:/sbin
8
- export LC_ALL=POSIX
9
-
@@ -1,17 +0,0 @@
1
- #!/usr/bin/env python3
2
- ### WARNING ###
3
- # requires Python >= 3.3
4
-
5
- import sys, crypt, getpass;
6
-
7
- # this script generate a password using salted SHA512 whitch is the default on debian wheezy
8
-
9
- cleartext = getpass.getpass("Password:")
10
- cleartext2 = getpass.getpass("Again:")
11
- if cleartext2 != cleartext:
12
- print ('Not matched!')
13
- sys.exit(1)
14
-
15
- salt = crypt.mksalt(crypt.METHOD_SHA512)
16
- print (crypt.crypt(cleartext, salt))
17
-