kite 1.0.6 → 1.0.10
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/Dockerfile +5 -3
- data/lib/kite/core.rb +1 -1
- data/lib/kite/generate.rb +1 -1
- data/lib/kite/helpers.rb +8 -2
- data/lib/kite/module.rb +2 -2
- data/lib/kite/terraform.rb +3 -0
- data/lib/kite/version.rb +1 -1
- data/tpl/skel/Rakefile.tt +7 -0
- data/tpl/skel/lib/tasks/git.rake +26 -0
- metadata +5 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ae6d1e9376c8edcf74e30027c1f56d47e6b76f72c67e5350e03a4d734f1fd1a1
|
4
|
+
data.tar.gz: 5c6422da9834fe7d836faf6776d4aebfa51f92672aff4b48c964b8c6f45b962b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 359dc979574e1eb9022121663e6bd0bb5e64bce5b9c0e7bbd2e13997a043dbbb1dabbdb397f437df1d7cff6d7892a63d5d5aff4dfe21b8b71b3b2fd0919bbbe6
|
7
|
+
data.tar.gz: 48f6a76936e0f1b22fdf02e3568a32bb53cfff4dbe3d3c42f1fddbe85a1af9e782352114d2cc12956df4ae9a2b272aaec1832a5b765544a7acfa8b85f8723ab6
|
data/Dockerfile
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
FROM ruby:2.4-stretch
|
2
2
|
|
3
|
-
RUN apt-get update &&
|
3
|
+
RUN apt-get update && \
|
4
|
+
apt-get upgrade -qqy && \
|
5
|
+
apt-get install -y zip curl wget vim
|
4
6
|
|
5
7
|
ARG TERRAFORM_VERSION=0.11.6
|
6
8
|
ARG BOSH_VERSION=2.0.48
|
@@ -8,8 +10,8 @@ ARG GCLOUD_VERSION=196.0.0
|
|
8
10
|
|
9
11
|
# Install Terraform
|
10
12
|
RUN curl -Ls https://releases.hashicorp.com/terraform/${TERRAFORM_VERSION}/terraform_${TERRAFORM_VERSION}_linux_amd64.zip -o terraform.zip \
|
11
|
-
&& unzip terraform
|
12
|
-
&&
|
13
|
+
&& unzip terraform.zip \
|
14
|
+
&& mv terraform /usr/local/bin/terraform \
|
13
15
|
&& rm -f terraform.zip
|
14
16
|
|
15
17
|
# Install BOSH v2
|
data/lib/kite/core.rb
CHANGED
@@ -19,7 +19,7 @@ module Kite
|
|
19
19
|
desc 'terraform', 'Run Terraform-related commands with environment variables loaded from module vars'
|
20
20
|
method_option :env, type: :string, desc: "Environment", required: true, default: ENV['KITE_ENV']
|
21
21
|
def terraform(command, *args)
|
22
|
-
Kite::Terraform.new(self, options).run(command, *args)
|
22
|
+
Kernel.exit Kite::Terraform.new(self, options).run(command, *args)
|
23
23
|
end
|
24
24
|
|
25
25
|
desc "version", "Return kite version"
|
data/lib/kite/generate.rb
CHANGED
@@ -42,7 +42,7 @@ module Kite
|
|
42
42
|
append_to_file 'config/cloud.yml', "\n#{name}:\n <<: *default\n"
|
43
43
|
end
|
44
44
|
|
45
|
-
@cloud = parse_cloud_config
|
45
|
+
@cloud = parse_cloud_config(name)
|
46
46
|
@env_name = name
|
47
47
|
|
48
48
|
directory("#{options[:provider]}/environment", "config/environments/#{name}")
|
data/lib/kite/helpers.rb
CHANGED
@@ -5,10 +5,16 @@ module Kite::Helpers
|
|
5
5
|
end
|
6
6
|
|
7
7
|
# Parse config/cloud.yml, returning the output hash
|
8
|
-
def parse_cloud_config
|
8
|
+
def parse_cloud_config(env = nil)
|
9
9
|
cloud_config = YAML.load(File.read('config/cloud.yml'))
|
10
10
|
check_cloud_config(cloud_config)
|
11
11
|
|
12
|
-
|
12
|
+
if env
|
13
|
+
unless cloud_config[env]
|
14
|
+
fail "Environement `#{env}` missing in config/cloud.yml"
|
15
|
+
end
|
16
|
+
return cloud_config[env]
|
17
|
+
end
|
18
|
+
return cloud_config
|
13
19
|
end
|
14
20
|
end
|
data/lib/kite/module.rb
CHANGED
@@ -9,7 +9,7 @@ module Kite
|
|
9
9
|
@env = options[:env]
|
10
10
|
@path = path
|
11
11
|
@name = path.gsub(/(.*:|.git)/, '').split('/').last
|
12
|
-
@cloud = parse_cloud_config
|
12
|
+
@cloud = parse_cloud_config(@env)
|
13
13
|
@version = options[:version]
|
14
14
|
|
15
15
|
unless File.exist? path
|
@@ -36,7 +36,7 @@ module Kite
|
|
36
36
|
@name = @path.split('/').last
|
37
37
|
@env = options[:env]
|
38
38
|
@vars = load_vars
|
39
|
-
@cloud = parse_cloud_config
|
39
|
+
@cloud = parse_cloud_config(@env)
|
40
40
|
|
41
41
|
say "Rendering files"
|
42
42
|
render_templates
|
data/lib/kite/terraform.rb
CHANGED
@@ -7,6 +7,7 @@ module Kite
|
|
7
7
|
end
|
8
8
|
|
9
9
|
def run(command, *args)
|
10
|
+
exit_status = 0
|
10
11
|
STDERR.puts "Loading env"
|
11
12
|
load_env
|
12
13
|
script = "terraform #{command} #{args.join " "}"
|
@@ -14,7 +15,9 @@ module Kite
|
|
14
15
|
|
15
16
|
Dir.chdir("config/environments/#{@env_name}") do
|
16
17
|
system(script)
|
18
|
+
exit_status = $?.exitstatus
|
17
19
|
end
|
20
|
+
exit_status
|
18
21
|
end
|
19
22
|
|
20
23
|
def load_env
|
data/lib/kite/version.rb
CHANGED
@@ -0,0 +1,26 @@
|
|
1
|
+
|
2
|
+
def for_each_submodule &block
|
3
|
+
status = %x{git submodule status}
|
4
|
+
status.each {|line| yield line.split()[1] }
|
5
|
+
end
|
6
|
+
|
7
|
+
def for_each_submodule_dir &block
|
8
|
+
for_each_submodule { |dir| Dir.chdir(dir) { yield dir } }
|
9
|
+
end
|
10
|
+
|
11
|
+
def get_branch(status = `git status`)
|
12
|
+
branch = nil
|
13
|
+
if match = Regexp.new("^# On branch (.*)").match(status)
|
14
|
+
branch = match[1]
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
namespace :git do
|
19
|
+
|
20
|
+
desc "Update submodules"
|
21
|
+
task :update do
|
22
|
+
%x{git submodule init}
|
23
|
+
%x{git submodule update}
|
24
|
+
end
|
25
|
+
|
26
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kite
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Louis Bellet
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-04-
|
11
|
+
date: 2018-04-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|
@@ -191,9 +191,11 @@ files:
|
|
191
191
|
- tpl/service/docs/service.md
|
192
192
|
- tpl/skel/Gemfile.tt
|
193
193
|
- tpl/skel/README.md.tt
|
194
|
+
- tpl/skel/Rakefile.tt
|
194
195
|
- tpl/skel/bin/kite
|
195
196
|
- tpl/skel/config/cloud.yml
|
196
197
|
- tpl/skel/lib/tasks/.keep
|
198
|
+
- tpl/skel/lib/tasks/git.rake
|
197
199
|
- tpl/skel/log/.keep
|
198
200
|
- tpl/skel/tmp/.keep
|
199
201
|
homepage: http://www.heliostech.fr
|
@@ -215,7 +217,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
215
217
|
version: '0'
|
216
218
|
requirements: []
|
217
219
|
rubyforge_project:
|
218
|
-
rubygems_version: 2.7.
|
220
|
+
rubygems_version: 2.7.3
|
219
221
|
signing_key:
|
220
222
|
specification_version: 4
|
221
223
|
summary: Command line tool for devops scaffolding.
|