jimbodragon_acceptance_test 0.1.6 → 0.1.7

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: 57bf783d8528b4238096588ffb868b6f4dc2665d03995ebbbf9007e0e750ed4b
4
- data.tar.gz: d50188ebac6a8ef1438fc9813069eaa4d9cf66013b242199555f870fda97a00f
3
+ metadata.gz: b21f9158f0f48f3b3d08507b9e9463ca98f46e599b016db8ad2ae514f5f1351d
4
+ data.tar.gz: ea6950f65cfcefc8da648edaf47680254b1b5e6c094e9de9bc2f56c04598e62a
5
5
  SHA512:
6
- metadata.gz: c7cb78fc63d3506a58ec736f82d8f334c0573faacd70599680c4e9bcdd9c2bb7bc91ce7aa8d6000cb61e0c5605a8ae6b12658fcb509573f7c7dca17b84d42f41
7
- data.tar.gz: 2f0bde12bf91593efffadfa7e42f68eb7442d0131fa26581d6db2a8e047bbaa31a6f63592a880565c8108017bd272520b3cdb864f18f71ed922bc312e3579b4a
6
+ metadata.gz: 0f5cb27f3d204535f57f76b5b03089e8d7086df76f8c5512110e5a6ea0b6095d483eeaa75b84f34ae0d0ef6077827a8d90793be9fd3b549ddf17f55cbdb1cab2
7
+ data.tar.gz: edb7c1952014788e3059c907f762fcc6919f03aa4516dee00663fc59c7d46895006d437377e342f5d60db739c015398acd7ef1c16612b371b9284eea90745b66
checksums.yaml.gz.sig CHANGED
Binary file
@@ -0,0 +1,52 @@
1
+
2
+ require 'chef'
3
+
4
+ require_relative 'knife'
5
+
6
+ module JimboDragon
7
+ module Convergence
8
+ def install_chef
9
+ %w(
10
+ analytics
11
+ angry-omnibus-toolchain
12
+ angrychef
13
+ automate
14
+ chef
15
+ chef-foundation
16
+ chef-universal
17
+ chef-backend
18
+ chef-server
19
+ chef-server-ha-provisioning
20
+ chef-workstation
21
+ chefdk
22
+ compliance
23
+ delivery
24
+ ha
25
+ harmony
26
+ inspec
27
+ mac-bootstrapper
28
+ manage
29
+ marketplace
30
+ omnibus-toolchain
31
+ omnibus-gcc
32
+ private-chef
33
+ push-jobs-client
34
+ push-jobs-server
35
+ reporting
36
+ supermarket
37
+ sync
38
+ ).each do |chef_application|
39
+ # system('curl -L https://omnitruck.chef.io/install.sh | sudo bash -s -- -s once -P ' + chef_application)
40
+ end
41
+ system('curl -L https://omnitruck.chef.io/install.sh | sudo bash -s -- -s once -P chef')
42
+ end
43
+
44
+ def prepare_project
45
+ install_chef
46
+ end
47
+
48
+ def finalize_project
49
+ # system('chef exec cucumber')
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,13 @@
1
+ module JimboDragon
2
+ class Deploy
3
+ attr_accessor :deploy_commands
4
+
5
+ def initialize
6
+ @deploy_commands = []
7
+ end
8
+
9
+ def execute_deploy_command
10
+ deploy_commands.each { |command| system command }
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,39 @@
1
+
2
+ puts "ENV['ENVIRONMENT_FILE'] = #{ENV['ENVIRONMENT_FILE']}"
3
+ require_relative ENV['ENVIRONMENT_FILE'] if !ENV['ENVIRONMENT_FILE'].nil? && ::File.exist?(ENV['ENVIRONMENT_FILE'])
4
+
5
+ module JimboDragon
6
+ module JimboEnv
7
+ CUCUMBER_PUBLISH_ENABLED = ENV['CUCUMBER_PUBLISH_ENABLED'].nil? ? true : ENV['CUCUMBER_PUBLISH_ENABLED']
8
+ CUCUMBER_PUBLISH_QUIET = ENV['CUCUMBER_PUBLISH_QUIET'].nil? ? false : ENV['CUCUMBER_PUBLISH_QUIET']
9
+ CUCUMBER_PUBLISH_TOKEN = ENV['CUCUMBER_PUBLISH_TOKEN'].nil? ? 'Missing private CUCUMBER_PUBLISH_TOKEN' : ENV['CUCUMBER_PUBLISH_TOKEN']
10
+
11
+ CIRCLECI_TOKEN = ENV['CIRCLECI_TOKEN'].nil? ? 'Missing private CIRCLECI_TOKEN' : ENV['CIRCLECI_TOKEN']
12
+ CIRCLECI_API_TOKEN = ENV['CIRCLECI_API_TOKEN'].nil? ? 'Missing private CIRCLECI_API_TOKEN' : ENV['CIRCLECI_API_TOKEN']
13
+ CIRCLECI_ORG_OPTION = ENV['CIRCLECI_ORG_OPTION'].nil? ? true.to_s.freeze : ENV['CIRCLECI_ORG_OPTION']
14
+
15
+ HAB_AUTH_TOKEN = ENV['HAB_AUTH_TOKEN'].nil? ? 'Missing private HAB_AUTH_TOKEN' : ENV['HAB_AUTH_TOKEN']
16
+ HAB_ORIGIN = ENV['HAB_ORIGIN'].nil? ? 'Missing private HAB_ORIGIN' : ENV['HAB_ORIGIN']
17
+ HAB_LICENSE = ENV['HAB_LICENSE'].nil? ? 'accept'.freeze : ENV['HAB_LICENSE']
18
+
19
+ GITHUB_SSH_PRIVATE_KEY = ENV['GITHUB_SSH_PRIVATE_KEY'].nil? ? 'Missing private GITHUB_SSH_PRIVATE_KEY' : ENV['GITHUB_SSH_PRIVATE_KEY']
20
+ GITHUB_SSH_PUBLIC_KEY = ENV['GITHUB_SSH_PUBLIC_KEY'].nil? ? 'Missing private GITHUB_SSH_PUBLIC_KEY' : ENV['GITHUB_SSH_PUBLIC_KEY']
21
+
22
+ AWS_ACCESS_KEY_ID = ENV['AWS_ACCESS_KEY_ID'].nil? ? 'Missing private AWS_ACCESS_KEY_ID' : ENV['AWS_ACCESS_KEY_ID']
23
+ AWS_SECRET_ACCESS_KEY = ENV['AWS_SECRET_ACCESS_KEY'].nil? ? 'Missing private AWS_SECRET_ACCESS_KEY' : ENV['AWS_SECRET_ACCESS_KEY']
24
+
25
+ DOCKERHUB_USER = ENV['DOCKERHUB_USER'].nil? ? 'Missing private DOCKERHUB_USER' : ENV['DOCKERHUB_USER']
26
+ DOCKERHUB_PASSWORD = ENV['DOCKERHUB_PASSWORD'].nil? ? 'Missing private DOCKERHUB_PASSWORD' : ENV['DOCKERHUB_PASSWORD']
27
+ DOCKER_PASS = ENV['DOCKER_PASS'].nil? ? DOCKERHUB_USER : ENV['DOCKER_PASS']
28
+ DOCKER_USER = ENV['DOCKER_USER'].nil? ? DOCKERHUB_PASSWORD : ENV['DOCKER_USER']
29
+ DO_CHECK = ENV['DO_CHECK'].nil? ? true.to_s.freeze : ENV['DO_CHECK']
30
+
31
+ KNIFE_USER = ENV['KNIFE_USER'].nil? ? 'Missing private KNIFE_USER' : ENV['KNIFE_USER']
32
+ NAMED_RUN_LIST = ENV['NAMED_RUN_LIST'].nil? ? 'Missing private NAMED_RUN_LIST' : ENV['NAMED_RUN_LIST']
33
+ GEM_PROJECT_NAME = ENV['GEM_PROJECT_NAME'].nil? ? 'Missing private GEM_PROJECT_NAME' : ENV['GEM_PROJECT_NAME']
34
+
35
+ ENVIRONMENT_FILE = ENV['ENVIRONMENT_FILE'].nil? ? abort!('Missing private ENVIRONMENT_FILE') : ENV['ENVIRONMENT_FILE']
36
+
37
+ GEM_PROJECT_VERSION = ENV['GEM_PROJECT_VERSION'].nil? ? ::File.read('VERSION').freeze : ENV['GEM_PROJECT_VERSION']
38
+ end
39
+ end
@@ -0,0 +1,79 @@
1
+
2
+ require_relative 'jimboenv'
3
+
4
+ module JimboDragon
5
+ class Knife
6
+ attr_accessor :knife_or_chefclient
7
+
8
+ def initialize(knife_or_chefclient)
9
+ @knife_or_chefclient = knife_or_chefclient
10
+ end
11
+
12
+ def send_to_chef(method, parameter)
13
+ Chef::Log.debug("Adding #{method} with value #{parameter}")
14
+ knife_or_chefclient.send(method, parameter)
15
+ end
16
+
17
+ def load_knife
18
+ send_to_chef(:chef_license, 'accept')
19
+ send_to_chef(:log_level, :info)
20
+ send_to_chef(:node_name, JimboDragon::JimboEnv::KNIFE_USER)
21
+
22
+ send_to_chef(:client_key, chef_path(::File.join([
23
+ 'profiles.d',
24
+ JimboDragon::JimboEnv::KNIFE_USER,
25
+ 'chef',
26
+ "#{JimboDragon::JimboEnv::KNIFE_USER}.pem",
27
+ ])))
28
+ send_to_chef(:chef_server_url, 'https://api.chef.io/organizations/jimbodragon')
29
+
30
+ send_to_chef(:chef_repo_path, chef_repo_path)
31
+ send_to_chef(:cookbook_path, [
32
+ chef_path('cookbooks'),
33
+ chef_path('libraries'),
34
+ chef_path('resources'),
35
+ chef_path('berks-cookbooks'),
36
+ ]
37
+ )
38
+ send_to_chef(:data_bags_path, chef_path('data_bags'))
39
+ send_to_chef(:environment_path, chef_path('environments'))
40
+ send_to_chef(:node_path, chef_path('nodes'))
41
+ send_to_chef(:policy_group_path, chef_path('policy_group'))
42
+ send_to_chef(:policy_path, chef_path('policies'))
43
+ send_to_chef(:role_path, chef_path('roles'))
44
+ send_to_chef(:log_location, chef_path(::File.join(['logs', "#{JimboDragon::JimboEnv::KNIFE_USER}.log"])))
45
+ send_to_chef(:cache_path, chef_path('.chef/local-mode-cache'))
46
+ send_to_chef(:checksum_path, chef_path('.chef/local-mode-cache/checksums'))
47
+ send_to_chef(:acl_path, chef_path('acls'))
48
+ send_to_chef(:client_d_dir, chef_path('.chef/client.d'))
49
+ send_to_chef(:client_key_path, chef_path('client_keys'))
50
+ send_to_chef(:client_path, chef_path('clients'))
51
+ send_to_chef(:color, true)
52
+ send_to_chef(:config_d_dir, chef_path('.chef/config.d'))
53
+ send_to_chef(:config_dir, chef_path('.chef'))
54
+ send_to_chef(:container_path, chef_path('containers'))
55
+ send_to_chef(:cookbook_artifact_path, chef_path('cookbook_artifacts'))
56
+ send_to_chef(:enable_reporting, false)
57
+ send_to_chef(:file_backup_path, chef_path('.chef/local-mode-cache/backup'))
58
+ send_to_chef(:file_cache_path, chef_path('.chef/local-mode-cache/cache'))
59
+ send_to_chef(:group_path, chef_path('groups'))
60
+ send_to_chef(:lockfile, chef_path('.chef/local-mode-cache/cache/chef-client-running.pid'))
61
+ send_to_chef(:ohai_segment_plugin_path, chef_path('.chef/ohai/cookbook_plugins'))
62
+ send_to_chef(:solo_d_dir, chef_path('.chef/solo.d'))
63
+ send_to_chef(:user_path, chef_path('users'))
64
+ send_to_chef(:syntax_check_cache_path, chef_path('.chef/syntaxcache'))
65
+ send_to_chef(:trusted_certs_dir, chef_path('.chef/trusted_certs'))
66
+ send_to_chef(:validation_client_name, "#{JimboDragon::JimboEnv::HAB_ORIGIN}-validator")
67
+ send_to_chef(:data_bag_encrypt_version, 3)
68
+ send_to_chef(:named_run_list, JimboDragon::JimboEnv::NAMED_RUN_LIST)
69
+ end
70
+
71
+ def chef_repo_path
72
+ ::File.expand_path(::File.join(::File.dirname(JimboDragon::JimboEnv::ENVIRONMENT_FILE), 'chef_repo'))
73
+ end
74
+
75
+ def chef_path(relative_chef_repo_path)
76
+ ::File.expand_path(::File.join(chef_repo_path, relative_chef_repo_path))
77
+ end
78
+ end
79
+ end
@@ -0,0 +1,15 @@
1
+ require_relative ::File.expand_path(::File.join(%w(lib jimbodragon))) unless defined?(JimboDragon)
2
+ require_relative ::File.expand_path(::File.join([::File.dirname(__FILE__)] + %w(.. jimbodragon))) unless defined?(JimboDragon)
3
+
4
+ module JimboDragon
5
+ class Main
6
+ attr_reader :knife_or_chefclient
7
+ def initialize(knife_or_chefclient)
8
+ @knife_or_chefclient = knife_or_chefclient
9
+ end
10
+
11
+ def converge
12
+ JimboDragon.converge(self)
13
+ end
14
+ end
15
+ end
data/lib/jimbodragon.rb CHANGED
@@ -22,6 +22,7 @@ module JimboDragon
22
22
  "chef-client -r #{JimboDragon::JimboEnv::NAMED_RUN_LIST}",
23
23
  "chef gem build #{JimboDragon::JimboEnv::GEM_PROJECT_NAME}.gemspec",
24
24
  "chef gem push #{JimboDragon::JimboEnv::GEM_PROJECT_NAME}-#{JimboDragon::JimboEnv::GEM_PROJECT_VERSION}.gem",
25
+ "chef gem install #{JimboDragon::JimboEnv::GEM_PROJECT_NAME}",
25
26
  ].each do |command|
26
27
  puts "Executing command #{command}"
27
28
  deploy.deploy_commands.push command
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.6
4
+ version: 0.1.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jimmy Provencher
@@ -96,6 +96,11 @@ files:
96
96
  - client.rb
97
97
  - knife.rb
98
98
  - lib/jimbodragon.rb
99
+ - lib/jimbodragon/convergence.rb
100
+ - lib/jimbodragon/deploy.rb
101
+ - lib/jimbodragon/jimboenv.rb
102
+ - lib/jimbodragon/knife.rb
103
+ - lib/jimbodragon/main.rb
99
104
  homepage: https://github.com/JimboDragonGit/jimbodragon_acceptance_test
100
105
  licenses:
101
106
  - MIT
metadata.gz.sig CHANGED
Binary file