Skip to content

Commit 52a7b8e

Browse files
authored
Merge pull request #21 from namusyaka/support-ha
support high availability, add inspec integration
2 parents fc17c3f + 0728123 commit 52a7b8e

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

61 files changed

+3618
-18
lines changed

Gemfile

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
source "https://rubygems.org/"
2+
3+
gem "kitchen-terraform", "~> 4.0"
4+
gem "test-kitchen"
5+
gem 'kitchen-inspec'

Gemfile.lock

Lines changed: 260 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,260 @@
1+
GEM
2+
remote: https://rubygems.org/
3+
specs:
4+
addressable (2.5.2)
5+
public_suffix (>= 2.0.2, < 4.0)
6+
aws-sdk (2.11.169)
7+
aws-sdk-resources (= 2.11.169)
8+
aws-sdk-core (2.11.169)
9+
aws-sigv4 (~> 1.0)
10+
jmespath (~> 1.0)
11+
aws-sdk-resources (2.11.169)
12+
aws-sdk-core (= 2.11.169)
13+
aws-sigv4 (1.0.3)
14+
azure_graph_rbac (0.17.0)
15+
ms_rest_azure (~> 0.11.0)
16+
azure_mgmt_key_vault (0.17.2)
17+
ms_rest_azure (~> 0.11.0)
18+
azure_mgmt_resources (0.17.2)
19+
ms_rest_azure (~> 0.11.0)
20+
builder (3.2.3)
21+
coderay (1.1.2)
22+
concurrent-ruby (1.1.3)
23+
declarative (0.0.10)
24+
declarative-option (0.1.0)
25+
diff-lcs (1.3)
26+
docker-api (1.34.2)
27+
excon (>= 0.47.0)
28+
multi_json
29+
domain_name (0.5.20180417)
30+
unf (>= 0.0.5, < 1.0.0)
31+
dry-configurable (0.7.0)
32+
concurrent-ruby (~> 1.0)
33+
dry-container (0.6.0)
34+
concurrent-ruby (~> 1.0)
35+
dry-configurable (~> 0.1, >= 0.1.3)
36+
dry-core (0.4.7)
37+
concurrent-ruby (~> 1.0)
38+
dry-equalizer (0.2.1)
39+
dry-inflector (0.1.2)
40+
dry-logic (0.4.2)
41+
dry-container (~> 0.2, >= 0.2.6)
42+
dry-core (~> 0.2)
43+
dry-equalizer (~> 0.2)
44+
dry-types (0.13.2)
45+
concurrent-ruby (~> 1.0)
46+
dry-container (~> 0.3)
47+
dry-core (~> 0.4, >= 0.4.4)
48+
dry-equalizer (~> 0.2)
49+
dry-inflector (~> 0.1, >= 0.1.2)
50+
dry-logic (~> 0.4, >= 0.4.2)
51+
dry-validation (0.12.2)
52+
concurrent-ruby (~> 1.0)
53+
dry-configurable (~> 0.1, >= 0.1.3)
54+
dry-core (~> 0.2, >= 0.2.1)
55+
dry-equalizer (~> 0.2)
56+
dry-logic (~> 0.4, >= 0.4.0)
57+
dry-types (~> 0.13.1)
58+
erubis (2.7.0)
59+
excon (0.62.0)
60+
faraday (0.15.3)
61+
multipart-post (>= 1.2, < 3)
62+
faraday-cookie_jar (0.0.6)
63+
faraday (>= 0.7.4)
64+
http-cookie (~> 1.0.0)
65+
faraday_middleware (0.12.2)
66+
faraday (>= 0.7.4, < 1.0)
67+
ffi (1.9.25)
68+
google-api-client (0.23.9)
69+
addressable (~> 2.5, >= 2.5.1)
70+
googleauth (>= 0.5, < 0.7.0)
71+
httpclient (>= 2.8.1, < 3.0)
72+
mime-types (~> 3.0)
73+
representable (~> 3.0)
74+
retriable (>= 2.0, < 4.0)
75+
signet (~> 0.9)
76+
googleauth (0.6.7)
77+
faraday (~> 0.12)
78+
jwt (>= 1.4, < 3.0)
79+
memoist (~> 0.16)
80+
multi_json (~> 1.11)
81+
os (>= 0.9, < 2.0)
82+
signet (~> 0.7)
83+
gssapi (1.2.0)
84+
ffi (>= 1.0.1)
85+
gyoku (1.3.1)
86+
builder (>= 2.1.2)
87+
hashie (3.6.0)
88+
htmlentities (4.3.4)
89+
http-cookie (1.0.3)
90+
domain_name (~> 0.5)
91+
httpclient (2.8.3)
92+
inifile (3.0.0)
93+
inspec (2.3.24)
94+
addressable (~> 2.4)
95+
faraday (>= 0.9.0)
96+
faraday_middleware (~> 0.12.2)
97+
hashie (~> 3.4)
98+
htmlentities
99+
json (>= 1.8, < 3.0)
100+
method_source (~> 0.8)
101+
mixlib-log
102+
multipart-post
103+
parallel (~> 1.9)
104+
parslet (~> 1.5)
105+
pry (~> 0)
106+
rspec (~> 3)
107+
rspec-its (~> 1.2)
108+
rubyzip (~> 1.2, >= 1.2.2)
109+
semverse
110+
sslshake (~> 1.2)
111+
term-ansicolor
112+
thor (~> 0.20)
113+
tomlrb (~> 1.2)
114+
train (~> 1.5)
115+
jmespath (1.4.0)
116+
json (2.1.0)
117+
jwt (2.1.0)
118+
kitchen-inspec (0.25.0)
119+
hashie (~> 3.4)
120+
inspec (>= 0.34.0, < 4.0.0)
121+
test-kitchen (~> 1.6)
122+
kitchen-terraform (4.0.3)
123+
dry-types (~> 0.9)
124+
dry-validation (~> 0.10)
125+
inspec (~> 2.2, != 2.3.5, != 2.3.4, != 2.2.112, != 2.2.102, != 2.2.101)
126+
mixlib-shellout (~> 2.2)
127+
test-kitchen (~> 1.23)
128+
little-plugger (1.1.4)
129+
logging (2.2.2)
130+
little-plugger (~> 1.1)
131+
multi_json (~> 1.10)
132+
memoist (0.16.0)
133+
method_source (0.9.2)
134+
mime-types (3.2.2)
135+
mime-types-data (~> 3.2015)
136+
mime-types-data (3.2018.0812)
137+
mixlib-install (3.11.5)
138+
mixlib-shellout
139+
mixlib-versioning
140+
thor
141+
mixlib-log (2.0.4)
142+
mixlib-shellout (2.4.0)
143+
mixlib-versioning (1.2.2)
144+
ms_rest (0.7.3)
145+
concurrent-ruby (~> 1.0)
146+
faraday (~> 0.9)
147+
timeliness (~> 0.3)
148+
ms_rest_azure (0.11.0)
149+
concurrent-ruby (~> 1.0)
150+
faraday (~> 0.9)
151+
faraday-cookie_jar (~> 0.0.6)
152+
ms_rest (~> 0.7.2)
153+
multi_json (1.13.1)
154+
multipart-post (2.0.0)
155+
net-scp (1.2.1)
156+
net-ssh (>= 2.6.5)
157+
net-ssh (4.2.0)
158+
net-ssh-gateway (1.3.0)
159+
net-ssh (>= 2.6.5)
160+
nori (2.6.0)
161+
os (1.0.0)
162+
parallel (1.12.1)
163+
parslet (1.8.2)
164+
pry (0.12.2)
165+
coderay (~> 1.1.0)
166+
method_source (~> 0.9.0)
167+
public_suffix (3.0.3)
168+
representable (3.0.4)
169+
declarative (< 0.1.0)
170+
declarative-option (< 0.2.0)
171+
uber (< 0.2.0)
172+
retriable (3.1.2)
173+
rspec (3.8.0)
174+
rspec-core (~> 3.8.0)
175+
rspec-expectations (~> 3.8.0)
176+
rspec-mocks (~> 3.8.0)
177+
rspec-core (3.8.0)
178+
rspec-support (~> 3.8.0)
179+
rspec-expectations (3.8.2)
180+
diff-lcs (>= 1.2.0, < 2.0)
181+
rspec-support (~> 3.8.0)
182+
rspec-its (1.2.0)
183+
rspec-core (>= 3.0.0)
184+
rspec-expectations (>= 3.0.0)
185+
rspec-mocks (3.8.0)
186+
diff-lcs (>= 1.2.0, < 2.0)
187+
rspec-support (~> 3.8.0)
188+
rspec-support (3.8.0)
189+
rubyntlm (0.6.2)
190+
rubyzip (1.2.2)
191+
semverse (2.0.0)
192+
signet (0.11.0)
193+
addressable (~> 2.3)
194+
faraday (~> 0.9)
195+
jwt (>= 1.5, < 3.0)
196+
multi_json (~> 1.10)
197+
sslshake (1.2.0)
198+
term-ansicolor (1.7.0)
199+
tins (~> 1.0)
200+
test-kitchen (1.23.2)
201+
mixlib-install (~> 3.6)
202+
mixlib-shellout (>= 1.2, < 3.0)
203+
net-scp (~> 1.1)
204+
net-ssh (>= 2.9, < 5.0)
205+
net-ssh-gateway (~> 1.2)
206+
thor (~> 0.19)
207+
winrm (~> 2.0)
208+
winrm-elevated (~> 1.0)
209+
winrm-fs (~> 1.1)
210+
thor (0.20.3)
211+
timeliness (0.3.8)
212+
tins (1.19.0)
213+
tomlrb (1.2.7)
214+
train (1.5.6)
215+
aws-sdk (~> 2)
216+
azure_graph_rbac (~> 0.16)
217+
azure_mgmt_key_vault (~> 0.17)
218+
azure_mgmt_resources (~> 0.15)
219+
docker-api (~> 1.26)
220+
google-api-client (~> 0.23.9)
221+
googleauth (~> 0.6.6)
222+
inifile
223+
json (>= 1.8, < 3.0)
224+
mixlib-shellout (~> 2.0)
225+
net-scp (~> 1.2)
226+
net-ssh (>= 2.9, < 6.0)
227+
winrm (~> 2.0)
228+
winrm-fs (~> 1.0)
229+
uber (0.1.0)
230+
unf (0.1.4)
231+
unf_ext
232+
unf_ext (0.0.7.5)
233+
winrm (2.3.0)
234+
builder (>= 2.1.2)
235+
erubis (~> 2.7)
236+
gssapi (~> 1.2)
237+
gyoku (~> 1.0)
238+
httpclient (~> 2.2, >= 2.2.0.2)
239+
logging (>= 1.6.1, < 3.0)
240+
nori (~> 2.0)
241+
rubyntlm (~> 0.6.0, >= 0.6.1)
242+
winrm-elevated (1.1.0)
243+
winrm (~> 2.0)
244+
winrm-fs (~> 1.0)
245+
winrm-fs (1.3.1)
246+
erubis (~> 2.7)
247+
logging (>= 1.6.1, < 3.0)
248+
rubyzip (~> 1.1)
249+
winrm (~> 2.0)
250+
251+
PLATFORMS
252+
ruby
253+
254+
DEPENDENCIES
255+
kitchen-inspec
256+
kitchen-terraform (~> 4.0)
257+
test-kitchen
258+
259+
BUNDLED WITH
260+
1.16.6

Makefile

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
# Copyright 2018 Google LLC
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# https://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
# Make will use bash instead of sh
16+
SHELL := /usr/bin/env bash
17+
18+
# All is the first target in the file so it will get picked up when you just run 'make' on its own
19+
all: check_shell check_python check_golang check_terraform check_docker check_base_files check_trailing_whitespace generate_docs
20+
21+
# The .PHONY directive tells make that this isn't a real target and so
22+
# the presence of a file named 'check_shell' won't cause this target to stop
23+
# working
24+
.PHONY: check_shell
25+
check_shell:
26+
@source test/make.sh && check_shell
27+
28+
.PHONY: check_python
29+
check_python:
30+
@source test/make.sh && check_python
31+
32+
.PHONY: check_golang
33+
check_golang:
34+
@source test/make.sh && golang
35+
36+
.PHONY: check_terraform
37+
check_terraform:
38+
@source test/make.sh && check_terraform
39+
40+
.PHONY: check_docker
41+
check_docker:
42+
@source test/make.sh && docker
43+
44+
.PHONY: check_base_files
45+
check_base_files:
46+
@source test/make.sh && basefiles
47+
48+
.PHONY: check_shebangs
49+
check_shebangs:
50+
@source test/make.sh && check_bash
51+
52+
.PHONY: check_trailing_whitespace
53+
check_trailing_whitespace:
54+
@source test/make.sh && check_trailing_whitespace
55+
56+
.PHONY: test_check_headers
57+
test_check_headers:
58+
@python test/test_verify_boilerplate.py
59+
60+
.PHONY: check_headers
61+
check_headers:
62+
@python test/verify_boilerplate.py
63+
64+
.PHONY: generate_docs
65+
generate_docs:
66+
@source test/make.sh && generate_docs
67+
68+
.PHONY: test_integration
69+
test_integration:
70+
@source test/test.sh

0 commit comments

Comments
 (0)