-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathRakefile
59 lines (42 loc) · 1.41 KB
/
Rakefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
require_relative 'bootstrap'
require 'faraday'
task :create do
app = LeanPokerHermes::HerokuGateway.instance.create
p "Name: #{app['name']}, Id: #{app['id']}"
end
task :list do
LeanPokerHermes::HerokuGateway.instance.list.each do |app|
puts app['name']
end
end
task :delete, :name do |_, args|
LeanPokerHermes::HerokuGateway.instance.delete(args.name)
end
task :deploy, :name, :archive_url, :commit do |_, args|
deploy = LeanPokerHermes::HerokuGateway.instance.deploy(args.name, args.archive_url, args.commit)
log_url = deploy['output_stream_url']
puts log_url
begin
sleep 2
print '.'
STDOUT.flush
info = LeanPokerHermes::HerokuGateway.instance.deployment_info(args.name,deploy['id'])
end while info["status"] == 'pending'
puts JSON.generate info["status"]
puts ' --- '
log_lines = Faraday.get(log_url).body
print log_lines
puts ' --- '
end
task :add_log_drain, :name, :url do |_, args|
p LeanPokerHermes::HerokuGateway.instance.add_log_drain(args.name, args.url)
end
task :delete_log_drain, :name, :id do |_, args|
LeanPokerHermes::HerokuGateway.instance.delete_log_drain(args.name, args.id)
end
task :get_config_vars, :name do |_, args|
p LeanPokerHermes::HerokuGateway.instance.get_config_vars(args.name)
end
task :set_config_vars, :name, :config_vars do |_, args|
LeanPokerHermes::HerokuGateway.instance.set_config_vars(args.name, JSON.parse(args.config_vars))
end