Module: EnvironmentHelper

Defined in:
app/helpers/environment_helper.rb

Instance Method Summary collapse

Instance Method Details


25
26
27
28
29
30
31
# File 'app/helpers/environment_helper.rb', line 25

def deployment_link(deployment, text: nil)
  return unless deployment

  link_label = text || "##{deployment.iid}"

  link_to link_label, deployment_path(deployment)
end

#deployment_path(deployment) ⇒ Object


21
22
23
# File 'app/helpers/environment_helper.rb', line 21

def deployment_path(deployment)
  [deployment.project, deployment.deployable]
end

#environment_for_build(project, build) ⇒ Object

rubocop: disable CodeReuse/ActiveRecord


5
6
7
8
9
# File 'app/helpers/environment_helper.rb', line 5

def environment_for_build(project, build)
  return unless build.environment

  project.environments.find_by(name: build.expanded_environment_name)
end

rubocop: enable CodeReuse/ActiveRecord


12
13
14
15
16
17
18
19
# File 'app/helpers/environment_helper.rb', line 12

def environment_link_for_build(project, build)
  environment = environment_for_build(project, build)
  if environment
    link_to environment.name, project_environment_path(project, environment)
  else
     :span, build.expanded_environment_name
  end
end

33
34
35
36
37
38
# File 'app/helpers/environment_helper.rb', line 33

def last_deployment_link_for_environment_build(project, build)
  environment = environment_for_build(project, build)
  return unless environment

  deployment_link(environment.last_deployment)
end

#render_deployment_status(deployment) ⇒ Object


40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
# File 'app/helpers/environment_helper.rb', line 40

def render_deployment_status(deployment)
  status = deployment.status

  status_text =
    case status
    when 'created'
      s_('Deployment|created')
    when 'running'
      s_('Deployment|running')
    when 'success'
      s_('Deployment|success')
    when 'failed'
      s_('Deployment|failed')
    when 'canceled'
      s_('Deployment|canceled')
    end

  klass = "ci-status ci-#{status.dasherize}"
  text = "#{ci_icon_for_status(status)} #{status_text}".html_safe

  if deployment.deployable
    link_to(text, deployment_path(deployment), class: klass)
  else
    (:span, text, class: klass)
  end
end