Class: Jatai::Commands::Base
- Inherits:
-
Object
- Object
- Jatai::Commands::Base
show all
- Defined in:
- lib/jatai/commands/base.rb
Direct Known Subclasses
DatabaseHelper, Deploy, Destroy, DomainsHelper, EnvHelper, Init, Login, Logs, LogsExport, LogsSearch, RedisHelper, Run, Scale, Status, Up
Instance Method Summary
collapse
Instance Method Details
#api ⇒ Object
11
12
13
|
# File 'lib/jatai/commands/base.rb', line 11
def api
@api ||= Api::Client.new
end
|
#app_name ⇒ Object
Nome legível. Arquivo novo traz name:; no antigo, o próprio app: era
o nome de exibição.
42
43
44
|
# File 'lib/jatai/commands/base.rb', line 42
def app_name
project_config[:name] || project_config[:app]
end
|
#app_slug ⇒ Object
SEMPRE slugifica o que veio do arquivo. Isso é o que dá
retrocompatibilidade com os .jatai.yml gerados antes de app: passar a
guardar o slug: lá dentro havia o nome de exibição cru ("Alves
Barbearia"), que ia direto para a URL e estourava no URI antes mesmo de
sair a requisição. Slugificar é idempotente, então arquivo novo — que já
traz o slug — atravessa sem alteração.
31
32
33
34
35
36
37
38
|
# File 'lib/jatai/commands/base.rb', line 31
def app_slug
raw = project_config[:app]
slug = Slug.from(raw)
return slug if slug
abort pastel.red("`app` inválido no .jatai.yml (#{raw.inspect}). " \
"Use letras, números e hífen, ou rode `jatai init` novamente.")
end
|
#error(msg) ⇒ Object
55
56
57
|
# File 'lib/jatai/commands/base.rb', line 55
def error(msg)
puts pastel.red(msg)
end
|
#info(msg) ⇒ Object
59
60
61
|
# File 'lib/jatai/commands/base.rb', line 59
def info(msg)
puts pastel.cyan(msg)
end
|
#pastel ⇒ Object
7
8
9
|
# File 'lib/jatai/commands/base.rb', line 7
def pastel
@pastel ||= Pastel.new
end
|
#project_config ⇒ Object
15
16
17
18
19
20
21
22
23
|
# File 'lib/jatai/commands/base.rb', line 15
def project_config
@project_config ||= begin
config_path = Config.project_file_path
unless File.exist?(config_path)
abort pastel.red("Arquivo .jatai.yml não encontrado. Execute `jatai init` primeiro.")
end
YAML.safe_load(File.read(config_path), symbolize_names: true)
end
end
|
#require_auth! ⇒ Object
46
47
48
49
|
# File 'lib/jatai/commands/base.rb', line 46
def require_auth!
return if Config.token
abort pastel.red("Não autenticado. Execute `jatai login` primeiro.")
end
|
#success(msg) ⇒ Object
51
52
53
|
# File 'lib/jatai/commands/base.rb', line 51
def success(msg)
puts pastel.green(msg)
end
|