wombat-cli 0.2.0 → 0.2.1
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
- data/.gitignore +1 -0
- data/DESIGN.md +2 -1
- data/README.md +10 -32
- data/Rakefile +1 -52
- data/cookbooks/automate/.kitchen.ec2.yml +8 -1
- data/cookbooks/automate/.kitchen.yml +0 -1
- data/cookbooks/automate/metadata.rb +0 -2
- data/cookbooks/automate/recipes/default.rb +4 -3
- data/cookbooks/automate/test/integration/default/automate_spec.rb +3 -2
- data/cookbooks/build_node/.kitchen.ec2.yml +8 -1
- data/cookbooks/build_node/metadata.rb +0 -3
- data/cookbooks/build_node/recipes/default.rb +5 -2
- data/cookbooks/build_node/test/integration/default/build-node_spec.rb +3 -2
- data/cookbooks/chef_server/.kitchen.ec2.yml +8 -0
- data/cookbooks/chef_server/.kitchen.yml +0 -1
- data/cookbooks/chef_server/metadata.rb +0 -2
- data/cookbooks/chef_server/recipes/{cheffish.rb → bootstrap_users.rb} +1 -1
- data/cookbooks/chef_server/recipes/default.rb +30 -14
- data/cookbooks/chef_server/test/integration/default/chef_server_spec.rb +7 -4
- data/cookbooks/compliance/.kitchen.ec2.yml +8 -0
- data/cookbooks/compliance/metadata.rb +0 -1
- data/cookbooks/compliance/recipes/default.rb +5 -7
- data/cookbooks/compliance/test/integration/default/compliance.rb +3 -2
- data/cookbooks/infranodes/.kitchen.ec2.yml +23 -2
- data/cookbooks/infranodes/recipes/default.rb +25 -9
- data/cookbooks/infranodes/test/fixtures/cookbooks/mock_data/recipes/default.rb +9 -3
- data/cookbooks/infranodes/test/integration/default/infranodes_spec.rb +11 -9
- data/cookbooks/wombat/attributes/default.rb +2 -0
- data/cookbooks/wombat/metadata.rb +2 -0
- data/cookbooks/wombat/recipes/authorized-keys.rb +10 -0
- data/cookbooks/workstation/recipes/certs-keys.rb +2 -1
- data/cookbooks/workstation/templates/default/ssh_config.erb +2 -2
- data/lib/wombat/build.rb +138 -120
- data/lib/wombat/cli.rb +8 -0
- data/lib/wombat/common.rb +27 -12
- data/lib/wombat/deploy.rb +33 -26
- data/lib/wombat/version.rb +1 -1
- data/packer/automate.json +7 -5
- data/packer/build-node.json +6 -4
- data/packer/chef-server.json +11 -6
- data/packer/compliance.json +6 -5
- data/packer/infranodes-windows.json +100 -0
- data/packer/infranodes.json +6 -5
- data/packer/workstation.json +5 -4
- data/stacks/.gitkeep +0 -0
- data/templates/bootstrap-aws.erb +2 -2
- data/templates/cfn.json.erb +16 -15
- data/wombat.example.yml +45 -35
- metadata +5 -15
- data/packer/mock-data/.gitignore +0 -16
- data/packer/mock-data/.kitchen.yml +0 -21
- data/packer/mock-data/Berksfile +0 -3
- data/packer/mock-data/README.md +0 -4
- data/packer/mock-data/chefignore +0 -102
- data/packer/mock-data/metadata.rb +0 -7
- data/packer/mock-data/recipes/default.rb +0 -69
- data/packer/mock-data/spec/spec_helper.rb +0 -2
- data/packer/mock-data/spec/unit/recipes/default_spec.rb +0 -20
- data/packer/mock-data/test/integration/default/serverspec/default_spec.rb +0 -9
- data/packer/mock-data/test/integration/helpers/serverspec/spec_helper.rb +0 -8
data/packer/mock-data/chefignore
DELETED
@@ -1,102 +0,0 @@
|
|
1
|
-
# Put files/directories that should be ignored in this file when uploading
|
2
|
-
# to a chef-server or supermarket.
|
3
|
-
# Lines that start with '# ' are comments.
|
4
|
-
|
5
|
-
# OS generated files #
|
6
|
-
######################
|
7
|
-
.DS_Store
|
8
|
-
Icon?
|
9
|
-
nohup.out
|
10
|
-
ehthumbs.db
|
11
|
-
Thumbs.db
|
12
|
-
|
13
|
-
# SASS #
|
14
|
-
########
|
15
|
-
.sass-cache
|
16
|
-
|
17
|
-
# EDITORS #
|
18
|
-
###########
|
19
|
-
\#*
|
20
|
-
.#*
|
21
|
-
*~
|
22
|
-
*.sw[a-z]
|
23
|
-
*.bak
|
24
|
-
REVISION
|
25
|
-
TAGS*
|
26
|
-
tmtags
|
27
|
-
*_flymake.*
|
28
|
-
*_flymake
|
29
|
-
*.tmproj
|
30
|
-
.project
|
31
|
-
.settings
|
32
|
-
mkmf.log
|
33
|
-
|
34
|
-
## COMPILED ##
|
35
|
-
##############
|
36
|
-
a.out
|
37
|
-
*.o
|
38
|
-
*.pyc
|
39
|
-
*.so
|
40
|
-
*.com
|
41
|
-
*.class
|
42
|
-
*.dll
|
43
|
-
*.exe
|
44
|
-
*/rdoc/
|
45
|
-
|
46
|
-
# Testing #
|
47
|
-
###########
|
48
|
-
.watchr
|
49
|
-
.rspec
|
50
|
-
spec/*
|
51
|
-
spec/fixtures/*
|
52
|
-
test/*
|
53
|
-
features/*
|
54
|
-
examples/*
|
55
|
-
Guardfile
|
56
|
-
Procfile
|
57
|
-
.kitchen*
|
58
|
-
.rubocop.yml
|
59
|
-
spec/*
|
60
|
-
Rakefile
|
61
|
-
.travis.yml
|
62
|
-
.foodcritic
|
63
|
-
.codeclimate.yml
|
64
|
-
|
65
|
-
# SCM #
|
66
|
-
#######
|
67
|
-
.git
|
68
|
-
*/.git
|
69
|
-
.gitignore
|
70
|
-
.gitmodules
|
71
|
-
.gitconfig
|
72
|
-
.gitattributes
|
73
|
-
.svn
|
74
|
-
*/.bzr/*
|
75
|
-
*/.hg/*
|
76
|
-
*/.svn/*
|
77
|
-
|
78
|
-
# Berkshelf #
|
79
|
-
#############
|
80
|
-
Berksfile
|
81
|
-
Berksfile.lock
|
82
|
-
cookbooks/*
|
83
|
-
tmp
|
84
|
-
|
85
|
-
# Cookbooks #
|
86
|
-
#############
|
87
|
-
CONTRIBUTING*
|
88
|
-
CHANGELOG*
|
89
|
-
TESTING*
|
90
|
-
MAINTAINERS.toml
|
91
|
-
|
92
|
-
# Strainer #
|
93
|
-
############
|
94
|
-
Colanderfile
|
95
|
-
Strainerfile
|
96
|
-
.colander
|
97
|
-
.strainer
|
98
|
-
|
99
|
-
# Vagrant #
|
100
|
-
###########
|
101
|
-
.vagrant
|
102
|
-
Vagrantfile
|
@@ -1,69 +0,0 @@
|
|
1
|
-
#
|
2
|
-
# Cookbook Name:: mock-data
|
3
|
-
# Recipe:: default
|
4
|
-
#
|
5
|
-
# Copyright (c) 2016 The Authors, All Rights Reserved.
|
6
|
-
|
7
|
-
require 'cheffish'
|
8
|
-
Chef::Config.ssl_verify_mode :verify_none
|
9
|
-
|
10
|
-
config = {
|
11
|
-
:chef_server_url => 'https://chef',
|
12
|
-
:options => {
|
13
|
-
:client_name => 'pivotal',
|
14
|
-
:signing_key_filename => '/etc/opscode/pivotal.pem'
|
15
|
-
}
|
16
|
-
}
|
17
|
-
|
18
|
-
#taken from cheffish
|
19
|
-
chef_user 'automate' do
|
20
|
-
chef_server config
|
21
|
-
admin true
|
22
|
-
display_name 'automate'
|
23
|
-
email 'chefeval@chef.io'
|
24
|
-
password 'automate'
|
25
|
-
source_key_path '/tmp/private.pem'
|
26
|
-
end
|
27
|
-
|
28
|
-
chef_user 'workstation' do
|
29
|
-
chef_server config
|
30
|
-
admin true
|
31
|
-
display_name 'workstation'
|
32
|
-
email 'workstation@chef.io'
|
33
|
-
password 'workstation'
|
34
|
-
source_key_path '/tmp/private.pem'
|
35
|
-
end
|
36
|
-
|
37
|
-
chef_organization "#{ENV['ORG']}" do
|
38
|
-
members ['automate', 'workstation']
|
39
|
-
chef_server config
|
40
|
-
end
|
41
|
-
|
42
|
-
conf_with_org = config.merge({
|
43
|
-
:chef_server_url => "#{config[:chef_server_url]}/organizations/#{ENV['ORG']}"
|
44
|
-
})
|
45
|
-
|
46
|
-
build_nodes = []
|
47
|
-
num = ENV['BUILD_NODES'].to_i
|
48
|
-
|
49
|
-
1.upto(num) do |i|
|
50
|
-
build_nodes << "build-node-#{i}"
|
51
|
-
end
|
52
|
-
|
53
|
-
build_nodes.each do |node_name|
|
54
|
-
chef_node node_name do
|
55
|
-
tag 'delivery-build-node'
|
56
|
-
chef_server conf_with_org
|
57
|
-
end
|
58
|
-
|
59
|
-
chef_client node_name do
|
60
|
-
source_key_path '/tmp/private.pem'
|
61
|
-
chef_server conf_with_org
|
62
|
-
end
|
63
|
-
end
|
64
|
-
|
65
|
-
chef_acl "" do
|
66
|
-
rights :all, users: %w(automate workstation), clients: build_nodes
|
67
|
-
recursive true
|
68
|
-
chef_server conf_with_org
|
69
|
-
end
|
@@ -1,20 +0,0 @@
|
|
1
|
-
#
|
2
|
-
# Cookbook Name:: mock-data
|
3
|
-
# Spec:: default
|
4
|
-
#
|
5
|
-
# Copyright (c) 2016 The Authors, All Rights Reserved.
|
6
|
-
|
7
|
-
require 'spec_helper'
|
8
|
-
|
9
|
-
describe 'mock-data::default' do
|
10
|
-
context 'When all attributes are default, on an unspecified platform' do
|
11
|
-
let(:chef_run) do
|
12
|
-
runner = ChefSpec::ServerRunner.new
|
13
|
-
runner.converge(described_recipe)
|
14
|
-
end
|
15
|
-
|
16
|
-
it 'converges successfully' do
|
17
|
-
expect { chef_run }.to_not raise_error
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|