jimbodragon_acceptance_test 0.1.3 → 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: 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