fig2coreos 0.1.3 → 0.1.4
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/bin/fig2coreos +9 -5
- data/lib/fig2coreos.rb +19 -7
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 944247b3ed3f3f5e0dd8792cdb5e3f944b610dd9
|
4
|
+
data.tar.gz: dff72cbe3a9ced91a1e81d5c4f8dd8afad59afb9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b510c97c08d9b97fc925df10b1e31d64d3f39100ae7e98170fbd9fd21cfb8108c4f73c351a7e9917825b80e7060882796b775a85dc4c192ac1c5d930c71ea350
|
7
|
+
data.tar.gz: bd08a816eac64b32db8fb087dc7b9921dc4f74985a90801ef6c16c2f9fccd59bcb9e294a38fc075556d9e76039767c95005625d1c12ab7a7c81c1009bb6f2aba
|
data/bin/fig2coreos
CHANGED
@@ -4,15 +4,21 @@ require File.expand_path(File.join(File.dirname(__FILE__), "..", "lib", "fig2cor
|
|
4
4
|
|
5
5
|
FIG2COREOS_BANNER = "Usage: fig2coreos [options] APP_NAME FIG_YAML OUTPUT_DIRECTORY"
|
6
6
|
|
7
|
-
options = {type: "
|
7
|
+
options = {type: "fleet"}
|
8
|
+
|
8
9
|
OptionParser.new do |opts|
|
9
10
|
opts.banner = FIG2COREOS_BANNER
|
10
11
|
|
11
|
-
opts.on("-t", "--type TYPE", "Output type:
|
12
|
+
opts.on("-t", "--type TYPE", "Output type: fllet (default) or vagrant (generate a Vagrantfile)") do |type|
|
12
13
|
options[:type] = type
|
13
14
|
end
|
14
15
|
end.parse!
|
15
16
|
|
17
|
+
if ARGV[0].to_s.include?("-t")
|
18
|
+
ARGV.shift
|
19
|
+
ARGV.shift
|
20
|
+
end
|
21
|
+
|
16
22
|
if ARGV[0].nil?
|
17
23
|
puts "[ERROR] APP_NAME required"
|
18
24
|
puts FIG2COREOS_BANNER
|
@@ -33,9 +39,7 @@ if !ARGV[2] || !File.directory?(File.expand_path(ARGV[2].to_s))
|
|
33
39
|
end
|
34
40
|
end
|
35
41
|
|
36
|
-
|
37
|
-
|
38
|
-
if options[:type] == "vagrant" && Gem::Version.new(vagrant_version) < Gem::Version.new("1.4.3")
|
42
|
+
if options[:type] == "vagrant" && Gem::Version.new(`vagrant --version`.split.last) < Gem::Version.new("1.4.3")
|
39
43
|
puts "[ERROR] Your version of vagrant (#{vagrant_version}) is out of date, please upgrade to at least 1.4.3 at http://www.vagrantup.com/downloads.html or change the --type"
|
40
44
|
exit -1
|
41
45
|
end
|
data/lib/fig2coreos.rb
CHANGED
@@ -1,3 +1,6 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'bundler/setup'
|
3
|
+
|
1
4
|
require 'yaml'
|
2
5
|
require 'fileutils'
|
3
6
|
|
@@ -10,17 +13,20 @@ class Fig2CoreOS
|
|
10
13
|
@app_name = app_name
|
11
14
|
@fig = YAML.load_file(fig_file.to_s)
|
12
15
|
@output_dir = File.expand_path(output_dir.to_s)
|
16
|
+
@vagrant = (options[:type] == "vagrant")
|
13
17
|
|
14
18
|
# clean and setup directory structure
|
19
|
+
FileUtils.rm_rf(Dir[File.join(@output_dir, "*.service")])
|
15
20
|
FileUtils.rm_rf(File.join(@output_dir, "media"))
|
16
21
|
FileUtils.rm_rf(File.join(@output_dir, "setup-coreos.sh"))
|
17
22
|
FileUtils.rm_rf(File.join(@output_dir, "Vagrantfile"))
|
18
|
-
|
19
|
-
|
23
|
+
|
24
|
+
if @vagrant
|
25
|
+
FileUtils.mkdir_p(File.join(@output_dir, "media", "state", "units"))
|
26
|
+
create_vagrant_file
|
27
|
+
end
|
28
|
+
|
20
29
|
create_service_files
|
21
|
-
|
22
|
-
create_vagrant_file if options[:type] == "vagrant"
|
23
|
-
|
24
30
|
exit 0
|
25
31
|
end
|
26
32
|
|
@@ -40,7 +46,13 @@ class Fig2CoreOS
|
|
40
46
|
"docker"
|
41
47
|
end
|
42
48
|
|
43
|
-
|
49
|
+
if @vagrant
|
50
|
+
base_path = File.join(@output_dir, "media", "state", "units")
|
51
|
+
else
|
52
|
+
base_path = @output_dir
|
53
|
+
end
|
54
|
+
|
55
|
+
File.open(File.join(base_path, "#{service_name}.1.service") , "w") do |file|
|
44
56
|
file << <<-eof
|
45
57
|
[Unit]
|
46
58
|
Description=Run #{service_name}_1
|
@@ -61,7 +73,7 @@ WantedBy=local.target
|
|
61
73
|
eof
|
62
74
|
end
|
63
75
|
|
64
|
-
File.open(File.join(
|
76
|
+
File.open(File.join(base_path, "#{service_name}-discovery.1.service"), "w") do |file|
|
65
77
|
file << <<-eof
|
66
78
|
[Unit]
|
67
79
|
Description=Announce #{service_name}_1
|