jatai 1.0.0 → 1.1.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/lib/jatai/commands/init.rb +13 -4
- data/lib/jatai/commands/up.rb +17 -1
- data/lib/jatai/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 85dd80d5c12ea959ac8d685f7b8bc2a596faed4ba0c9f5a07f01293f99d90137
|
|
4
|
+
data.tar.gz: 818d739c662c5f9b7688ec043811b28c46f603d8946f77835ca3c031485aed76
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 537ffd3a1bdf4b72aca0b220b02018dbac604fb2ebc3ad875bd4b2bdc27e7d616e1a5410e2b1ae7e01fe2a793d6c283b1fa78bd11561ae3531cc60cb38fe47e4
|
|
7
|
+
data.tar.gz: a879c7f5503a474b9bf7f3ac654e83c0b9ed195558445a112aa4e86665e56e81eea9a0e46e307f36a0eaabc80204bd30b9638ead5f3548b9e204f32f212af4e4
|
data/lib/jatai/commands/init.rb
CHANGED
|
@@ -12,7 +12,12 @@ module Jatai
|
|
|
12
12
|
}.freeze
|
|
13
13
|
|
|
14
14
|
REGIONS = { "br-se1" => "São Paulo", "br-ne1" => "Nordeste" }.freeze
|
|
15
|
-
STACKS = {
|
|
15
|
+
STACKS = {
|
|
16
|
+
"rails" => "Rails",
|
|
17
|
+
"node" => "Node.js",
|
|
18
|
+
"static" => "Estático (HTML/CSS/JS, sem build)",
|
|
19
|
+
"docker" => "Docker (custom Dockerfile)"
|
|
20
|
+
}.freeze
|
|
16
21
|
DATABASE_TIERS = {
|
|
17
22
|
"mini" => "Mini — 512MB, 20 conexões (Grátis)",
|
|
18
23
|
"essencial" => "Essencial — 1GB, 50 conexões (R$ 19/mês)",
|
|
@@ -41,7 +46,8 @@ module Jatai
|
|
|
41
46
|
name = prompt.ask("Nome do app:") { |q| q.required true }
|
|
42
47
|
preset = prompt.select("Preset:", PRESETS.map { |k, v| { name: v, value: k } })
|
|
43
48
|
region = prompt.select("Região:", REGIONS.map { |k, v| { name: "#{v} (#{k})", value: k } })
|
|
44
|
-
|
|
49
|
+
# Sites estáticos não têm banco — não pergunta o tier.
|
|
50
|
+
db_tier = stack == "static" ? nil : prompt.select("Banco de dados:", DATABASE_TIERS.map { |k, v| { name: v, value: k } })
|
|
45
51
|
branch = detect_git_branch || "main"
|
|
46
52
|
|
|
47
53
|
config = {
|
|
@@ -49,9 +55,9 @@ module Jatai
|
|
|
49
55
|
"stack" => stack,
|
|
50
56
|
"preset" => preset,
|
|
51
57
|
"region" => region,
|
|
52
|
-
"branch" => branch
|
|
53
|
-
"database_tier" => db_tier
|
|
58
|
+
"branch" => branch
|
|
54
59
|
}
|
|
60
|
+
config["database_tier"] = db_tier if db_tier
|
|
55
61
|
|
|
56
62
|
File.write(config_path, YAML.dump(config))
|
|
57
63
|
success("Arquivo .jatai.yml criado com sucesso!")
|
|
@@ -71,6 +77,9 @@ module Jatai
|
|
|
71
77
|
|
|
72
78
|
return "docker" if File.exist?(File.join(Dir.pwd, "Dockerfile"))
|
|
73
79
|
|
|
80
|
+
# Site estático: index.html na raiz, sem Gemfile/package.json/Dockerfile.
|
|
81
|
+
return "static" if File.exist?(File.join(Dir.pwd, "index.html"))
|
|
82
|
+
|
|
74
83
|
nil
|
|
75
84
|
end
|
|
76
85
|
|
data/lib/jatai/commands/up.rb
CHANGED
|
@@ -94,7 +94,23 @@ module Jatai
|
|
|
94
94
|
|
|
95
95
|
def detect_git_remote
|
|
96
96
|
remote = `git remote get-url origin 2>/dev/null`.strip
|
|
97
|
-
|
|
97
|
+
return nil if remote.empty?
|
|
98
|
+
|
|
99
|
+
normalize_git_remote(remote)
|
|
100
|
+
end
|
|
101
|
+
|
|
102
|
+
# O servidor aceita repo_url só como https(s) (é metadado p/ integração GitHub;
|
|
103
|
+
# o deploy em si é por upload de source). Converte SSH → https e descarta o que
|
|
104
|
+
# não der pra normalizar (retorna nil → repo_url em branco, deploy segue normal).
|
|
105
|
+
def normalize_git_remote(url)
|
|
106
|
+
case url
|
|
107
|
+
when %r{\Agit@([^:]+):(.+?)(?:\.git)?\z} # git@github.com:user/repo.git
|
|
108
|
+
"https://#{Regexp.last_match(1)}/#{Regexp.last_match(2)}"
|
|
109
|
+
when %r{\Assh://git@([^/]+)/(.+?)(?:\.git)?\z} # ssh://git@github.com/user/repo.git
|
|
110
|
+
"https://#{Regexp.last_match(1)}/#{Regexp.last_match(2)}"
|
|
111
|
+
when %r{\Ahttps?://}
|
|
112
|
+
url.sub(/\.git\z/, "")
|
|
113
|
+
end
|
|
98
114
|
end
|
|
99
115
|
|
|
100
116
|
# ── WebSocket methods ──
|
data/lib/jatai/version.rb
CHANGED