Class: Egads::Release

Inherits:
Group
  • Object
show all
Includes:
Thor::Actions
Defined in:
lib/egads/command/release.rb

Instance Method Summary collapse

Methods inherited from Group

exit_on_failure?

Instance Method Details

#restartObject



26
27
28
29
30
31
32
33
# File 'lib/egads/command/release.rb', line 26

def restart
  return unless should_release?

  inside release_to do
    # Restart services
    run_with_code(RemoteConfig.restart_command, stream: true)
  end
end

#run_after_release_hooksObject



35
36
37
38
39
# File 'lib/egads/command/release.rb', line 35

def run_after_release_hooks
  inside release_to do
    run_hooks_for(:release, :after)
  end
end

#run_before_release_hooksObject



16
17
18
19
# File 'lib/egads/command/release.rb', line 16

def run_before_release_hooks
  return unless should_release?
  inside(dir) { run_hooks_for(:release, :before) }
end

#setup_environmentObject



8
9
10
# File 'lib/egads/command/release.rb', line 8

def setup_environment
  RemoteConfig.setup_environment
end

#stageObject



12
13
14
# File 'lib/egads/command/release.rb', line 12

def stage
  invoke(Egads::Stage, [sha], options)
end


21
22
23
24
# File 'lib/egads/command/release.rb', line 21

def symlink_release
  return unless should_release?
  atomic_symlink(dir, release_to)
end

#trimObject



41
42
43
44
# File 'lib/egads/command/release.rb', line 41

def trim
  FileUtils.touch(dir) # Ensure this release isn't trimmed
  invoke(Egads::Trim, [4], {})
end