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 +4 -4
- checksums.yaml.gz.sig +0 -0
- data/lib/jimbodragon/convergence.rb +52 -0
- data/lib/jimbodragon/deploy.rb +13 -0
- data/lib/jimbodragon/jimboenv.rb +39 -0
- data/lib/jimbodragon/knife.rb +79 -0
- data/lib/jimbodragon/main.rb +15 -0
- data/lib/jimbodragon.rb +1 -0
- data.tar.gz.sig +0 -0
- metadata +6 -1
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b21f9158f0f48f3b3d08507b9e9463ca98f46e599b016db8ad2ae514f5f1351d
|
4
|
+
data.tar.gz: ea6950f65cfcefc8da648edaf47680254b1b5e6c094e9de9bc2f56c04598e62a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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,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.
|
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
|