deploy_rubygem 0.60.21 → 0.60.23

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: d5a382592bfb10083db919cd98d351fedf46531b0f0316340dcd61440d78934a
4
- data.tar.gz: ae39a1b035154186fd05ffb3a2a0ea3ce5d8d14a0bf13a3cab9d7270f54201d0
3
+ metadata.gz: fc1786f5a710147cc87e35d7229493c8630b3ba9339b096be1c0b52fb4546c27
4
+ data.tar.gz: 64fb0749458468166f66a665fcb9a87e162353c4a8c4195573991e7cbf916ae6
5
5
  SHA512:
6
- metadata.gz: 3316dfff7b0612fd01b95a28cec007e3a7a16a8c509117be35d2945c5e9fce846abbda0e6855cb68c9d44c92596e63eb258f528e087081e80d1cc2c24d7d5e55
7
- data.tar.gz: 7b6b42ca9946bc38d148c0c74126f71b843951764b9aecca80223eb7128d126e0e0faef4f0152062283abffd5ae7d0e7d8cf172100f2436f1253e0c65e2e7755
6
+ metadata.gz: feeaa3ad7b90014fcb08912795a56750bdb1b60faea4754b11cbe3c93bf93f208527e5555a5d232ffcf4fb34eb2f63332402ff833a69ac783710233ca272171a
7
+ data.tar.gz: 39bbaf8ebe96078d61bf68a0bc4a878fec1dbbf6f107bf71ee155ac633cdd05a68e5aaeeec07edff162777ac34149b58e3671f08bee0e280b50ee4c162f8bb63
checksums.yaml.gz.sig CHANGED
Binary file
data/Rakefile CHANGED
@@ -12,12 +12,12 @@ RuboCop::RakeTask.new
12
12
 
13
13
  task test_framework: %i[clean rubocop spec]
14
14
  task default: %i[test_framework build install:local]
15
- task cicd: %i[default release test_version]
15
+ task cicd: %i[default test_version]
16
16
  task test_version: %i[install compliance]
17
17
  task :compliance do
18
- # system('inspec exec git@github.com:JimboDragonGit/rubygem_baseline.git --input-file compliance.yml')
18
+ system('inspec exec compliance')
19
19
  end
20
- task developper: %i[push cicd]
20
+ task developper: %i[rubocop push default release]
21
21
  task :push do
22
22
  system('git add .')
23
23
  system("git commit -m 'Rake pusing version #{DeployRubygem::VERSION}'")
@@ -0,0 +1,61 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'fileutils'
4
+
5
+ # DeployRubygem - deploy a gem using rake
6
+ # Containing a class
7
+ module DeployRubygem
8
+ # Using Project to deploy and manage Project
9
+ class ChefNode
10
+ attr_reader :chef_server_url, :nodename, :policyname, :policygroup, :knife_name, :chef_client_key
11
+
12
+ def initialize(options)
13
+ @chef_server_url = options['chef_server_url']
14
+ @nodename = options['node_name']
15
+ @policyname = options['policyname']
16
+ @policygroup = options['policygroup']
17
+ @knife_name = options['knife_name']
18
+ @chef_client_key = options['chef_client_key']
19
+ end
20
+
21
+ def clientrb
22
+ {
23
+ log_location: '/var/log/chef-client.log',
24
+ chef_server_url: chef_server_url,
25
+ chef_license: 'accept',
26
+ file_cache_path: '/var/chef/cache',
27
+ file_backup_path: '/var/chef/backup',
28
+ node_name: nodename,
29
+ policy_name: policyname,
30
+ policy_group: policygroup
31
+ }.map do |key, value|
32
+ abort("key #{key} need to have a value :: #{value.class}") if value.nil? || value.empty?
33
+ key_pair = [key, "'#{value}'"]
34
+ key_pair.join(' ')
35
+ end.join("\n")
36
+ end
37
+
38
+ def read_file(file_path)
39
+ puts "REading file #{file_path}"
40
+ puts File.read(file_path)
41
+ puts "Had read #{File.read(file_path).split('\n').length} lines"
42
+ end
43
+
44
+ def boostrap
45
+ clientrb_file = '/etc/chef/client.rb'
46
+ clientpem_file = '/etc/chef/client.pem'
47
+
48
+ Dir.mkdir('/etc/chef') unless Dir.exist?('/etc/chef')
49
+
50
+ File.write(clientrb_file, clientrb)
51
+ File.write(clientpem_file, chef_client_key.split('\\n').join("\n"))
52
+
53
+ [clientrb_file, clientpem_file].each do |file_path|
54
+ FileUtils.chmod(0o600, file_path)
55
+ # read_file(file_path)
56
+ end
57
+
58
+ system('chef env --chef-license accept')
59
+ end
60
+ end
61
+ end
@@ -34,7 +34,7 @@ module DeployRubygem
34
34
  def update
35
35
  system("rm -rf #{inspec_path}/vendor")
36
36
  system("rm #{inspec_path}/inspec.lock")
37
- system("inspec vendor #{inspec_path}")
37
+ system("inspec vendor #{inspec_path} ")
38
38
  end
39
39
 
40
40
  def save_as_html(html_file)
@@ -48,8 +48,12 @@ module DeployRubygem
48
48
 
49
49
  private
50
50
 
51
+ def chef_license
52
+ '--chef-licens accept'
53
+ end
54
+
51
55
  def inspec_options
52
- cmd_opt = []
56
+ cmd_opt = [chef_license]
53
57
 
54
58
  unless input_file.nil?
55
59
  cmd_opt << '--input-file'
@@ -60,6 +64,7 @@ module DeployRubygem
60
64
  cmd_opt << '--waiver-file'
61
65
  cmd_opt << waiver_file
62
66
  end
67
+ puts "Using inspec options #{cmd_opt}"
63
68
  cmd_opt
64
69
  end
65
70
 
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require_relative 'testing'
4
+ require_relative 'workstation'
4
5
 
5
6
  # DeployRubygem - deploy a gem using rake
6
7
  # Containing a class
@@ -1,7 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'git-version-bump'
4
-
5
3
  require_relative 'rubygem'
6
4
  require_relative 'deploy_rubygem_options'
7
5
 
@@ -17,5 +15,5 @@ module DeployRubygem
17
15
  end
18
16
 
19
17
  # VERSION = new_deploy_rubygem.gvb_version.short_version
20
- VERSION = '0.60.21'
18
+ VERSION = '0.60.23'
21
19
  end
@@ -1,54 +1,76 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative 'rspec'
3
+ require 'fileutils'
4
+ require_relative 'chef_node'
4
5
 
5
6
  # DeployRubygem - deploy a gem using rake
6
7
  # Containing a class
7
8
  module DeployRubygem
8
9
  # Using Project to deploy and manage Project
9
10
  class Workstation
11
+ attr_reader :chef_server_url, :nodename, :policyname, :policygroup, :knife_name, :chef_client_key, :chef_knife_key, :user_folder
12
+
13
+ def initialize(options)
14
+ @chef_server_url = options['chef_server_url']
15
+ @nodename = options['node_name']
16
+ @policyname = options['policyname']
17
+ @policygroup = options['policygroup']
18
+ @knife_name = options['knife_name']
19
+ @chef_knife_key = options['chef_knife_key']
20
+ @user_folder = options['user_folder']
21
+ end
22
+
10
23
  def clientrb
11
24
  {
12
- log_location: '/var/log/chef-client.log',
13
- chef_server_url: ENV['CHEF_SERVER_URL'],
25
+ log_location: File.join(ENV['HOME'], '.chef', 'chef-client.log'),
26
+ chef_server_url: chef_server_url,
14
27
  chef_license: 'accept',
15
- file_cache_path: '/var/chef/cache',
16
- file_backup_path: '/var/chef/backup',
17
- node_name: ENV['NODENAME'],
18
- policy_name: ENV['POLICYNAME'],
19
- policy_group: ENV['POLICYGROUP']
28
+ file_cache_path: File.join(ENV['HOME'], '.chef', 'cache'),
29
+ file_backup_path: File.join(ENV['HOME'], '.chef', 'backup'),
30
+ node_name: nodename,
31
+ policy_name: policyname,
32
+ policy_group: policygroup
20
33
  }.map do |key, value|
21
- [key, "'#{value}'"].join(' ')
34
+ abort("key #{key} need to have a value :: #{ARGV}") if value.nil? || value.empty?
35
+ key_pair = [key, "'#{value}'"]
36
+ key_pair.join(' ')
22
37
  end.join("\n")
23
38
  end
24
39
 
25
40
  def credential
26
41
  (['[default]'] + {
27
- client_name: ENV['KNIFE_NAME'],
28
- client_key: File.join(ENV['HOME'], '.chef', 'cicd.pem'),
29
- chef_server_url: ENV['CHEF_SERVER_URL']
30
- # secret_file: File.join(ENV['HOME'], '.chef', 'cicd.secret')
42
+ client_name: knife_name,
43
+ client_key: File.join(user_folder, '.chef', 'cicd.pem'),
44
+ chef_server_url: chef_server_url
45
+ # secret_file: File.join(user_folder, '.chef', 'cicd.secret')
31
46
  }.map do |key, value|
32
- [key, "'#{value}'"].join(' ')
47
+ [key, '=', "'#{value}'"].join(' ')
33
48
  end).join("\n")
34
49
  end
35
50
 
51
+ def read_file(file_path)
52
+ puts "REading file #{file_path}"
53
+ puts File.read(file_path)
54
+ puts "Had read #{File.read(file_path).split('\n').length} lines"
55
+ end
56
+
36
57
  def boostrap_workstation
37
- clientrb_file = '/etc/chef/client.rb'
38
- clientpem_file = '/etc/chef/client.pem'
39
- cicdpem_file = File.join(ENV['HOME'], '.chef', 'cicd.pem')
40
- cicdcredential_file = File.join(ENV['HOME'], '.chef', 'credentials')
41
- File.write(clientrb_file, clientrb)
42
- File.write(clientpem_file, ENV['CHEF_CLIENT_KEY'])
43
- File.write(cicdpem_file, ENV['CHEF_KNIFE_KEY'])
58
+ knife_file = File.join(user_folder, '.chef', 'knife.rb')
59
+ cicdpem_file = File.join(user_folder, '.chef', 'cicd.pem')
60
+ cicdcredential_file = File.join(user_folder, '.chef', 'credentials')
61
+
62
+ Dir.mkdir(File.join(user_folder, '.chef'))
63
+
64
+ File.write(knife_file, clientrb)
65
+ File.write(cicdpem_file, chef_knife_key.split('\\n').join("\n"))
44
66
  File.write(cicdcredential_file, credential)
45
67
 
46
- FileUtils.chmod(0o600, clientrb_file)
47
- FileUtils.chmod(0o600, clientpem_file)
48
- FileUtils.chmod(0o600, cicdpem_file)
49
- FileUtils.chmod(0o600, cicdcredential_file)
68
+ [knife_file, cicdpem_file, cicdcredential_file].each do |file_path|
69
+ FileUtils.chmod(0o600, file_path)
70
+ # read_file(file_path)
71
+ end
50
72
 
51
- system('chef-client')
73
+ system('chef env --chef-license accept')
52
74
  end
53
75
  end
54
76
  end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: deploy_rubygem
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.60.21
4
+ version: 0.60.23
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jimmy Provencher
@@ -33,7 +33,7 @@ cert_chain:
33
33
  n6Pwa3EckU/5n8N6gUJTAmGyu6Ncu1pbsZtH450+BJ2z82JNXomdFYlnG8+1XNlj
34
34
  3M1sBFUHvqrBg2hQkQcLHokmQYrYsRK5A7HrxwKcmwM=
35
35
  -----END CERTIFICATE-----
36
- date: 2024-06-09 00:00:00.000000000 Z
36
+ date: 2024-06-10 00:00:00.000000000 Z
37
37
  dependencies:
38
38
  - !ruby/object:Gem::Dependency
39
39
  name: rspec
@@ -109,12 +109,7 @@ description: Using Chef cookbook style and force any script using it to switch t
109
109
  chef even if it is not install. It will install it tho ;)
110
110
  email:
111
111
  - jimbo_dragon@hotmail.com
112
- executables:
113
- - deploy_rubygem
114
- - prepare_workstation
115
- - test_deploy_rubygem
116
- - deploy_rubygem_manually
117
- - deploy_jimbodragon
112
+ executables: []
118
113
  extensions: []
119
114
  extra_rdoc_files:
120
115
  - README.md
@@ -129,13 +124,9 @@ files:
129
124
  - LICENSE.txt
130
125
  - README.md
131
126
  - Rakefile
132
- - bin/deploy_jimbodragon
133
- - bin/deploy_rubygem
134
- - bin/deploy_rubygem_manually
135
- - bin/prepare_workstation
136
- - bin/test_deploy_rubygem
137
127
  - exe/deploy_rubygem
138
128
  - lib/deploy_rubygem.rb
129
+ - lib/deploy_rubygem/chef_node.rb
139
130
  - lib/deploy_rubygem/cookbook.rb
140
131
  - lib/deploy_rubygem/deploy_rubygem_options.rb
141
132
  - lib/deploy_rubygem/inspec_result.rb
metadata.gz.sig CHANGED
Binary file
@@ -1,8 +0,0 @@
1
- #!/opt/chef-workstation/embedded/bin/ruby
2
- Signal.trap('INT') { exit 1 }
3
-
4
- $LOAD_PATH.unshift File.join(File.dirname(__FILE__), %w[.. lib])
5
- require 'rubygems' unless defined?(Gem)
6
- require 'deploy_rubygem'
7
-
8
- DeployRubygem.deploy_jimbodragon
data/bin/deploy_rubygem DELETED
@@ -1,8 +0,0 @@
1
- #!/opt/chef-workstation/embedded/bin/ruby
2
- Signal.trap('INT') { exit 1 }
3
-
4
- $LOAD_PATH.unshift File.join(File.dirname(__FILE__), %w[.. lib])
5
- require 'rubygems' unless defined?(Gem)
6
- require 'deploy_rubygem'
7
-
8
- DeployRubygem.new_deploy_rubygem.deploy
@@ -1,4 +0,0 @@
1
- #!/opt/chef-workstation/embedded/bin/ruby
2
-
3
- Dir.chdir(::File.join(ENV['HOME'], 'jimbo_management_site'))
4
- system('chef exec inspec exec compliance/profiles/jimbodragon-manual-push')
@@ -1,3 +0,0 @@
1
- #!/opt/chef-workstation/embedded/bin/ruby
2
-
3
- system('chef-client')
@@ -1,7 +0,0 @@
1
- #!/opt/chef-workstation/embedded/bin/ruby
2
- Signal.trap('INT') { exit 1 }
3
-
4
- require 'rubygems' unless defined?(Gem)
5
- require 'deploy_rubygem'
6
-
7
- DeployRubygem.new_deploy_rubygem.release