jimbodragon_acceptance_test 0.1.4 → 0.1.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 80fdadd35ebee8e99e50d2c1369091f7af0122101539eb1a8fdbfb2ce0743624
4
- data.tar.gz: 06caf57680cf80bc5744afa8920f1032fa2f4f894459abafc1b740d4ae781a08
3
+ metadata.gz: c2ea6e5ed5ed373bfc97363b0051de19cfa7247ddaf6a5226040f43a19ffce32
4
+ data.tar.gz: 7a0a72409933cfbcf6aeb87e6215d34169c1e85c5210fb208a254f6bdc77d4ac
5
5
  SHA512:
6
- metadata.gz: ae872b8737f44ace2bf8ac8100dc145a30b2507b8c775ad2f3d9003042989fc91697300827d4b292d4bbbbdc07ee3c3d13e448c330919208cb2a4d3c36eebe59
7
- data.tar.gz: 585469dcd9caa11b3bda6b904449622a1bb22a9b62c3b7b6838530d8890b9315e0450a58c24706a2ac8d6b3af4f7d83900f71a1a37f24dca4a9c212ceec2ac71
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,3 +1,3 @@
1
- require_relative 'lib/knife'
1
+ require_relative 'lib/jimbodragon'
2
2
 
3
- JimboDragon.loading_chef(self)
3
+ JimboDragon.converge(self)
data/knife.rb CHANGED
@@ -1,3 +1,3 @@
1
- require_relative 'lib/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.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jimmy Provencher
@@ -95,7 +95,7 @@ files:
95
95
  - bin/jimbodragon_acceptance_test
96
96
  - client.rb
97
97
  - knife.rb
98
- - lib/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/lib/knife.rb DELETED
@@ -1,68 +0,0 @@
1
-
2
- module JimboDragon
3
- def self.loading_chef(knife_or_chefclient)
4
- JimboDragon.Knife.new(knife_or_chefclient)
5
- end
6
-
7
- class Knife
8
- attr_accessor :knife_or_chefclient
9
-
10
- def send_to_chef(method, parameter)
11
- knife_or_chefclient.send(method, parameter)
12
- end
13
-
14
- def initialize(knife_or_chefclient)
15
- @knife_or_chefclient = knife_or_chefclient
16
- send_to_chef(:chef_license, 'accept')
17
- send_to_chef(:log_level, :info)
18
- send_to_chef(:node_name, ENV['KNIFE_USER'])
19
-
20
- send_to_chef(:client_key, "#{chef_repo_path}/profiles.d/#{ENV['KNIFE_USER']}/chef/#{ENV['KNIFE_USER']}.pem")
21
- send_to_chef(:chef_server_url, 'https://api.chef.io/organizations/jimbodragon')
22
-
23
- send_to_chef(:chef_repo_path, chef_repo_path)
24
- send_to_chef(:cookbook_path, [
25
- "#{chef_repo_path}/cookbooks/",
26
- "#{chef_repo_path}/libraries/",
27
- "#{chef_repo_path}/resources/",
28
- "#{chef_repo_path}/berks-cookbooks/",
29
- ]
30
- )
31
- send_to_chef(:data_bags_path, "#{chef_repo_path}/data_bags")
32
- send_to_chef(:environment_path, "#{chef_repo_path}/environments")
33
- send_to_chef(:node_path, "#{chef_repo_path}/nodes")
34
- send_to_chef(:policy_group_path, "#{chef_repo_path}/policy_group")
35
- send_to_chef(:policy_path, "#{chef_repo_path}/policies")
36
- send_to_chef(:role_path, "#{chef_repo_path}/roles")
37
- send_to_chef(:log_location, "#{chef_repo_path}/logs/#{ENV['KNIFE_USER']}.log")
38
- send_to_chef(:cache_path, "#{chef_repo_path}/.chef/local-mode-cache")
39
- send_to_chef(:checksum_path, "#{chef_repo_path}/.chef/local-mode-cache/checksums")
40
- send_to_chef(:acl_path, "#{chef_repo_path}/acls")
41
- send_to_chef(:client_d_dir, "#{chef_repo_path}/.chef/client.d")
42
- send_to_chef(:client_key_path, "#{chef_repo_path}/client_keys")
43
- send_to_chef(:client_path, "#{chef_repo_path}/clients")
44
- send_to_chef(:color, true)
45
- send_to_chef(:config_d_dir, "#{chef_repo_path}/.chef/config.d")
46
- send_to_chef(:config_dir, "#{chef_repo_path}/.chef")
47
- send_to_chef(:container_path, "#{chef_repo_path}/containers")
48
- send_to_chef(:cookbook_artifact_path, "#{chef_repo_path}/cookbook_artifacts")
49
- send_to_chef(:enable_reporting, false)
50
- send_to_chef(:file_backup_path, "#{chef_repo_path}/.chef/local-mode-cache/backup")
51
- send_to_chef(:file_cache_path, "#{chef_repo_path}/.chef/local-mode-cache/cache")
52
- send_to_chef(:group_path, "#{chef_repo_path}/groups")
53
- send_to_chef(:lockfile, "#{chef_repo_path}/.chef/local-mode-cache/cache/chef-client-running.pid")
54
- send_to_chef(:ohai_segment_plugin_path, "#{chef_repo_path}/.chef/ohai/cookbook_plugins")
55
- send_to_chef(:solo_d_dir, "#{chef_repo_path}/.chef/solo.d")
56
- send_to_chef(:user_path, "#{chef_repo_path}/users")
57
- send_to_chef(:syntax_check_cache_path, "#{chef_repo_path}/.chef/syntaxcache")
58
- send_to_chef(:trusted_certs_dir, "#{chef_repo_path}/.chef/trusted_certs")
59
- send_to_chef(:validation_client_name, "#{ENV['HAB_ORIGIN']}-validator")
60
- send_to_chef(:data_bag_encrypt_version, 3)
61
- send_to_chef(:named_run_list, NAMED_RUN_LIST)
62
- end
63
-
64
- def chef_repo_path
65
-
66
- end
67
- end
68
- end