jimbodragon_acceptance_test 0.1.3 → 0.1.5

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: b09d25b447ee9f2a755e1f8f812c0a3b763845bef59bbb2329eac458e21a69e6
4
- data.tar.gz: 4da12dac3da2e284220c49daa453b6c405dfd8323f816ec5d183a81cf0394447
3
+ metadata.gz: c2ea6e5ed5ed373bfc97363b0051de19cfa7247ddaf6a5226040f43a19ffce32
4
+ data.tar.gz: 7a0a72409933cfbcf6aeb87e6215d34169c1e85c5210fb208a254f6bdc77d4ac
5
5
  SHA512:
6
- metadata.gz: ef9f31bed97c68e6e39980361078295eee3394eb67b7f71c318a4422801500183b5dfd04b6f6fff4677b378fcc420d60e73210b0378420310c3f3ef047cb3462
7
- data.tar.gz: fbb61a43e45ed57141ca6347415074ae91cf475fb79fbcaf4a351e8fcd177d5e0c2beeb0be50e5266972e75f059dd5daead600deee416448718f68d05afa5d55
6
+ metadata.gz: f24402259bd6c326aba3afc10369f731230350d188647eff6ca6c43e57e4876954dd10dc9888993cc049ca166c0af4ac6b17d80bdabaa5a42a09f708f92729ac
7
+ data.tar.gz: b65185f6e11ae13102d4e4b3702b170266273e7373993e6a6155e23e89db84fac3c496d4a6c6c174a68510258cd9d1421f3b71c21a4de0d1aecb69af831d0544
checksums.yaml.gz.sig CHANGED
Binary file
@@ -4,67 +4,9 @@
4
4
  # https://twitter.com/mitchellh/status/283014103189053442
5
5
  Signal.trap('INT') { exit 1 }
6
6
 
7
- require_relative ENV['ENVIRONMENT_FILE'] if !ENV['ENVIRONMENT_FILE'].nil? && ::File.exist?(ENV['ENVIRONMENT_FILE'])
7
+ $LOAD_PATH.unshift File.join(File.dirname(__FILE__), %w(.. lib))
8
+ require 'rubygems' unless defined?(Gem)
9
+ require 'jimbodragon'
10
+ require 'jimbodragon/main'
8
11
 
9
- module JimboDragon
10
- module AcceptanceTests
11
- module StartCucumber
12
- def self.start_chef_client
13
- extend JimboDragon::AcceptanceTests::StartCucumber
14
- start_project
15
- end
16
-
17
- def install_chef
18
- system('curl -L https://omnitruck.chef.io/install.sh | sudo bash -s -- -s once -P chef-client')
19
- end
20
-
21
- def run_project
22
- # [
23
- # 'circleci config process .circleci/config.yml > process.yml',
24
- # 'circleci local execute -c process.yml --job jimbodragon_acceptance_test',
25
- # # 'chef exec hab plan render plan.sh/x86_64-linux/plan.sh',
26
- # 'chef exec hab studio build',
27
- # 'chef exec cucumber',
28
- # ].each { |command| system command }
29
- # end
30
-
31
- [
32
- 'cucumber',
33
- "chef-client -r #{ENV['NAMED_RUN_LIST']}",
34
- 'chef exec hab studio build',
35
- "chef gem build #{ENV['GEM_PROJECT_NAME']}.gemspec",
36
- "chef gem push #{ENV['GEM_PROJECT_NAME']}-#{ENV['GEM_PROJECT_VERSION']}.gem",
37
- "chef exec knife cookbook upload #{[
38
- ENV['NAMED_RUN_LIST'],
39
- ENV['GEM_PROJECT_NAME'],
40
- 'chef-git-server',
41
- 'chefserver',
42
- 'chef_workstation_initialize',
43
- 'infra_chef',
44
- 'jimbodragon',
45
- 'jimbodragon_infra_chef',
46
- 'virtualbox',
47
- ].flatten}",
48
- # 'chef exec circleci config process .circleci/config.yml > process.yml',
49
- # "chef exec circleci local execute -c process.yml --job #{ENV['GEM_PROJECT_NAME']}",
50
- ].each { |command| system command }
51
- end
52
-
53
- def prepare_project
54
- install_chef
55
- end
56
-
57
- def finalize_project
58
- system('knife node show $(hostname) -z')
59
- end
60
-
61
- def start_project
62
- prepare_project
63
- run_project
64
- finalize_project
65
- end
66
- end
67
- end
68
- end
69
-
70
- JimboDragon::AcceptanceTests::StartCucumber.start_chef_client
12
+ JimboDragon::Main.new(self).converge
data/client.rb CHANGED
@@ -1 +1,3 @@
1
- require_relative 'common_knife'
1
+ require_relative 'lib/jimbodragon'
2
+
3
+ JimboDragon.converge(self)
data/knife.rb CHANGED
@@ -1,3 +1,3 @@
1
- require_relative 'common_knife'
1
+ require_relative 'lib/jimbodragon'
2
2
 
3
- JimboDragon.loading_chef(self)
3
+ JimboDragon.converge(self)
@@ -0,0 +1,82 @@
1
+
2
+ require_relative ENV['ENVIRONMENT_FILE'] if !ENV['ENVIRONMENT_FILE'].nil? && ::File.exist?(ENV['ENVIRONMENT_FILE'])
3
+
4
+ require_relative 'jimbodragon/convergence'
5
+ require_relative 'jimbodragon/deploy'
6
+ require_relative 'jimbodragon/main'
7
+ require_relative 'jimbodragon/test/acceptance/cucumber'
8
+
9
+ module JimboDragon
10
+ CUCUMBER_PUBLISH_ENABLED = ENV['CUCUMBER_PUBLISH_ENABLED'].nil? ? true : ENV['CUCUMBER_PUBLISH_ENABLED']
11
+ CUCUMBER_PUBLISH_QUIET = ENV['CUCUMBER_PUBLISH_QUIET'].nil? ? false : ENV['CUCUMBER_PUBLISH_QUIET']
12
+ CUCUMBER_PUBLISH_TOKEN = ENV['CUCUMBER_PUBLISH_TOKEN'].nil? ? puts('Missing private CUCUMBER_PUBLISH_TOKEN') : ENV['CUCUMBER_PUBLISH_TOKEN']
13
+
14
+ CIRCLECI_TOKEN = ENV['CIRCLECI_TOKEN'].nil? ? puts('Missing private CIRCLECI_TOKEN') : ENV['CIRCLECI_TOKEN']
15
+ CIRCLECI_API_TOKEN = ENV['CIRCLECI_API_TOKEN'].nil? ? puts('Missing private CIRCLECI_TOKEN') : ENV['CIRCLECI_API_TOKEN']
16
+ CIRCLECI_ORG_OPTION = ENV['CIRCLECI_ORG_OPTION'].nil? ? true.to_s.freeze : ENV['CIRCLECI_ORG_OPTION']
17
+
18
+ HAB_AUTH_TOKEN = ENV['HAB_AUTH_TOKEN'].nil? ? puts('Missing private CIRCLECI_TOKEN') : ENV['HAB_AUTH_TOKEN']
19
+ HAB_ORIGIN = ENV['HAB_ORIGIN'].nil? ? puts('Missing private CIRCLECI_TOKEN') : ENV['HAB_ORIGIN']
20
+ HAB_LICENSE = ENV['HAB_LICENSE'].nil? ? 'accept'.freeze : ENV['HAB_LICENSE']
21
+
22
+ GITHUB_SSH_PRIVATE_KEY = ENV['GITHUB_SSH_PRIVATE_KEY'].nil? ? puts('Missing private CIRCLECI_TOKEN') : ENV['GITHUB_SSH_PRIVATE_KEY']
23
+ GITHUB_SSH_PUBLIC_KEY = ENV['GITHUB_SSH_PUBLIC_KEY'].nil? ? puts('Missing private CIRCLECI_TOKEN') : ENV['GITHUB_SSH_PUBLIC_KEY']
24
+
25
+ AWS_ACCESS_KEY_ID = ENV['AWS_ACCESS_KEY_ID'].nil? ? puts('Missing private CIRCLECI_TOKEN') : ENV['AWS_ACCESS_KEY_ID']
26
+ AWS_SECRET_ACCESS_KEY = ENV['AWS_SECRET_ACCESS_KEY'].nil? ? puts('Missing private CIRCLECI_TOKEN') : ENV['AWS_SECRET_ACCESS_KEY']
27
+
28
+ DOCKERHUB_USER = ENV['DOCKERHUB_USER'].nil? ? puts('Missing private CIRCLECI_TOKEN') : ENV['DOCKERHUB_USER']
29
+ DOCKERHUB_PASSWORD = ENV['DOCKERHUB_PASSWORD'].nil? ? puts('Missing private CIRCLECI_TOKEN') : ENV['DOCKERHUB_PASSWORD']
30
+ DOCKER_PASS = ENV['DOCKER_PASS'].nil? ? DOCKERHUB_USER : ENV['DOCKER_PASS']
31
+ DOCKER_USER = ENV['DOCKER_USER'].nil? ? DOCKERHUB_PASSWORD : ENV['DOCKER_USER']
32
+ DO_CHECK = ENV['DO_CHECK'].nil? ? true.to_s.freeze : ENV['DO_CHECK']
33
+
34
+ KNIFE_USER = ENV['KNIFE_USER'].nil? ? puts('Missing private CIRCLECI_TOKEN') : ENV['KNIFE_USER']
35
+ NAMED_RUN_LIST = ENV['NAMED_RUN_LIST'].nil? ? puts('Missing private CIRCLECI_TOKEN') : ENV['NAMED_RUN_LIST']
36
+ GEM_PROJECT_NAME = ENV['GEM_PROJECT_NAME'].nil? ? "#{NAMED_RUN_LIST}_acceptance_test".freeze : ENV['GEM_PROJECT_NAME']
37
+
38
+ ENVIRONMENT_FILE = ENV['ENVIRONMENT_FILE'].nil? ? __FILE__.freeze : ENV['ENVIRONMENT_FILE']
39
+
40
+ GEM_PROJECT_VERSION = ENV['GEM_PROJECT_VERSION'].nil? ? ::File.read('VERSION').freeze : ENV['GEM_PROJECT_VERSION']
41
+
42
+ def self.converge(knife_or_chefclient)
43
+ extend JimboDragon::Convergence
44
+ extend JimboDragon::Knife
45
+ extend JimboDragon::Test::Acceptance::Cucumber
46
+
47
+ deploy = JimboDragon::Deploy.new
48
+
49
+ case knife_or_chefclient
50
+ when JimboDragon::Main
51
+ install_chef
52
+ [
53
+ "chef-client -r #{NAMED_RUN_LIST}",
54
+ 'chef exec hab studio build',
55
+ "chef gem build #{GEM_PROJECT_NAME}.gemspec",
56
+ "chef gem push #{GEM_PROJECT_NAME}-#{GEM_PROJECT_VERSION}.gem",
57
+ "chef exec knife cookbook upload #{[
58
+ NAMED_RUN_LIST,
59
+ GEM_PROJECT_NAME,
60
+ 'chef-git-server',
61
+ 'chefserver',
62
+ 'chef_workstation_initialize',
63
+ 'infra_chef',
64
+ 'jimbodragon',
65
+ 'jimbodragon_infra_chef',
66
+ 'virtualbox',
67
+ ].flatten}",
68
+ # 'chef exec circleci config process .circleci/config.yml > process.yml',
69
+ # "chef exec circleci local execute -c process.yml --job #{GEM_PROJECT_NAME}",
70
+ ].each { |command| deploy.deploy_commands.push command }
71
+ # load_knife(knife_or_chefclient)
72
+ else
73
+ puts "knife_or_chefclient = #{knife_or_chefclient.class}"
74
+ # install_chef
75
+ # start_cucumber
76
+ end
77
+
78
+ prepare_project
79
+ deploy.execute_deploy_command
80
+ finalize_project
81
+ end
82
+ end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jimbodragon_acceptance_test
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jimmy Provencher
@@ -94,8 +94,8 @@ files:
94
94
  - README.md
95
95
  - bin/jimbodragon_acceptance_test
96
96
  - client.rb
97
- - common_knife.rb
98
97
  - knife.rb
98
+ - lib/jimbodragon.rb
99
99
  homepage: https://github.com/JimboDragonGit/jimbodragon_acceptance_test
100
100
  licenses:
101
101
  - MIT
metadata.gz.sig CHANGED
Binary file
data/common_knife.rb DELETED
@@ -1,53 +0,0 @@
1
-
2
- require_relative 'env' if ::File.exist?('env.rb')
3
-
4
- module JimboDragon
5
- def self.loading_chef(knife_or_chefclient)
6
- knife_or_chefclient.send(:chef_license, 'accept')
7
- knife_or_chefclient.send(:log_level, :info)
8
- knife_or_chefclient.send(:node_name, KNIFE_USER)
9
-
10
- knife_or_chefclient.send(:client_key, "chef_repo/profiles.d/#{KNIFE_USER}/chef/#{KNIFE_USER}.pem")
11
- knife_or_chefclient.send(:chef_server_url, 'https://api.chef.io/organizations/jimbodragon')
12
-
13
- knife_or_chefclient.send(:chef_repo_path, 'chef_repo')
14
- knife_or_chefclient.send(:cookbook_path, [
15
- 'chef_repo/cookbooks/',
16
- 'chef_repo/libraries/',
17
- 'chef_repo/resources/',
18
- 'chef_repo/berks-cookbooks/',
19
- ]
20
- )
21
- knife_or_chefclient.send(:data_bags_path, 'chef_repo/data_bags')
22
- knife_or_chefclient.send(:environment_path, 'chef_repo/environments')
23
- knife_or_chefclient.send(:node_path, 'chef_repo/nodes')
24
- knife_or_chefclient.send(:policy_group_path, 'chef_repo/policy_group')
25
- knife_or_chefclient.send(:policy_path, 'chef_repo/policies')
26
- knife_or_chefclient.send(:role_path, 'chef_repo/roles')
27
- knife_or_chefclient.send(:log_location, "chef_repo/logs/#{KNIFE_USER}.log")
28
- knife_or_chefclient.send(:cache_path, 'chef_repo/.chef/local-mode-cache')
29
- knife_or_chefclient.send(:checksum_path, 'chef_repo/.chef/local-mode-cache/checksums')
30
- knife_or_chefclient.send(:acl_path, 'chef_repo/acls')
31
- knife_or_chefclient.send(:client_d_dir, 'chef_repo/.chef/client.d')
32
- knife_or_chefclient.send(:client_key_path, 'chef_repo/client_keys')
33
- knife_or_chefclient.send(:client_path, 'chef_repo/clients')
34
- knife_or_chefclient.send(:color, true)
35
- knife_or_chefclient.send(:config_d_dir, 'chef_repo/.chef/config.d')
36
- knife_or_chefclient.send(:config_dir, 'chef_repo/.chef')
37
- knife_or_chefclient.send(:container_path, 'chef_repo/containers')
38
- knife_or_chefclient.send(:cookbook_artifact_path, 'chef_repo/cookbook_artifacts')
39
- knife_or_chefclient.send(:enable_reporting, false)
40
- knife_or_chefclient.send(:file_backup_path, 'chef_repo/.chef/local-mode-cache/backup')
41
- knife_or_chefclient.send(:file_cache_path, 'chef_repo/.chef/local-mode-cache/cache')
42
- knife_or_chefclient.send(:group_path, 'chef_repo/groups')
43
- knife_or_chefclient.send(:lockfile, 'chef_repo/.chef/local-mode-cache/cache/chef-client-running.pid')
44
- knife_or_chefclient.send(:ohai_segment_plugin_path, 'chef_repo/.chef/ohai/cookbook_plugins')
45
- knife_or_chefclient.send(:solo_d_dir, 'chef_repo/.chef/solo.d')
46
- knife_or_chefclient.send(:user_path, 'chef_repo/users')
47
- knife_or_chefclient.send(:syntax_check_cache_path, 'chef_repo/.chef/syntaxcache')
48
- knife_or_chefclient.send(:trusted_certs_dir, 'chef_repo/.chef/trusted_certs')
49
- knife_or_chefclient.send(:validation_client_name, 'exemple-chef-validator')
50
- knife_or_chefclient.send(:data_bag_encrypt_version, 3)
51
- knife_or_chefclient.send(:named_run_list, NAMED_RUN_LIST)
52
- end
53
- end