provisioning 0.0.1.alpha.1 → 0.0.1.alpha.2
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/lib/provisioning/cli.rb +17 -15
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cf03c84e2e8d34e1c1dfce24fc082dcd4398280b
|
4
|
+
data.tar.gz: '09f4199f5ed0a8ff641198ff0f415334044dc0ed'
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b53ad19a248e97f54ffbe212aab0576db04c53914744f2837a50e194299f7d5ed7990632424ff15ec3bdcd2d2ff68ec61271c1f79c892bd61b01f623c4db7248
|
7
|
+
data.tar.gz: 1450bb3d987f0e10badf8cfdaf515398c889bb73547107716d4f15f8692887f3ff91eba26be724f584019d8c162c46d423e0fb377eb6ca73bd7bb18d1ae33626
|
data/lib/provisioning/cli.rb
CHANGED
@@ -16,27 +16,29 @@ module Provisioning
|
|
16
16
|
end
|
17
17
|
|
18
18
|
def self.start(args, env)
|
19
|
-
|
19
|
+
json_file = args.shift || "manifest.json"
|
20
20
|
|
21
21
|
begin
|
22
|
-
|
22
|
+
json = JSON.parse(File.open(json_file).read)
|
23
23
|
rescue Errno::ENOENT, JSON::ParserError
|
24
|
-
Console.error("could not read
|
24
|
+
Console.error("could not read provisioning manifest file '#{json_file}'")
|
25
25
|
end
|
26
26
|
|
27
|
-
|
27
|
+
manifest = json["manifest"]
|
28
|
+
|
29
|
+
ssh_key_fingerprint = manifest["ssh"]["key"]["fingerprint"]
|
28
30
|
|
29
31
|
ssh_key = get_ssh_key(ssh_key_fingerprint)
|
30
32
|
puts
|
31
33
|
|
32
|
-
app_name =
|
33
|
-
domain =
|
34
|
-
platform =
|
34
|
+
app_name = manifest["app"]["name"]
|
35
|
+
domain = manifest["domain"]
|
36
|
+
platform = manifest["providers"]["platform"]
|
35
37
|
server_hostname = [platform, domain].join(".")
|
36
38
|
server_address = nil
|
37
39
|
|
38
|
-
if
|
39
|
-
digitalocean = DigitalOcean.new(
|
40
|
+
if manifest["providers"]["hosting"] == "digitalocean"
|
41
|
+
digitalocean = DigitalOcean.new(manifest["digitalocean"])
|
40
42
|
|
41
43
|
digitalocean.upload_ssh_key(ssh_key)
|
42
44
|
puts
|
@@ -49,8 +51,8 @@ module Provisioning
|
|
49
51
|
puts
|
50
52
|
end
|
51
53
|
|
52
|
-
if
|
53
|
-
digitalocean = DigitalOcean.new(
|
54
|
+
if manifest["providers"]["dns"] == "digitalocean"
|
55
|
+
digitalocean = DigitalOcean.new(manifest["digitalocean"])
|
54
56
|
|
55
57
|
digitalocean.create_domain(domain, server_address)
|
56
58
|
Console.success("Configue '#{domain}' with the following DNS servers:")
|
@@ -71,19 +73,19 @@ module Provisioning
|
|
71
73
|
name: app_name,
|
72
74
|
data: "#{server_hostname}."
|
73
75
|
)
|
74
|
-
|
76
|
+
manifest["app"]["domains"].each do |app_domain|
|
75
77
|
Console.success("Configue '#{app_domain}' to point to '#{server_hostname}'")
|
76
78
|
end
|
77
79
|
puts
|
78
80
|
end
|
79
81
|
|
80
|
-
if
|
81
|
-
dokku = Dokku.new(
|
82
|
+
if manifest["providers"]["platform"] == "dokku"
|
83
|
+
dokku = Dokku.new(manifest["dokku"])
|
82
84
|
dokku.setup(address: server_address, domain: domain)
|
83
85
|
Console.success("Run `gem install dokku-cli` to get dokku client on your machine")
|
84
86
|
puts
|
85
87
|
|
86
|
-
dokku.create_app(
|
88
|
+
dokku.create_app(manifest["app"])
|
87
89
|
puts
|
88
90
|
|
89
91
|
Console.info("Adding dokku to git remotes")
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: provisioning
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.1.alpha.
|
4
|
+
version: 0.0.1.alpha.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Vincent Ollivier
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-09-
|
11
|
+
date: 2017-09-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: git
|