- @no_container = true
- page_title "#{@build.name} (##{@build.id})", "Builds"
- trace_with_state = @build.trace_with_state
= render "projects/pipelines/head", build_subnav: true

%div{ class: container_class }
  .build-page
    = render "header"

    - if @build.stuck?
      - unless @build.any_runners_online?
        .bs-callout.bs-callout-warning
          %p
            - if no_runners_for_project?(@build.project)
              This build is stuck, because the project doesn't have any runners online assigned to it.
            - elsif @build.tags.any?
              This build is stuck, because you don't have any active runners online with any of these tags assigned to them:
              - @build.tags.each do |tag|
                %span.label.label-primary
                  = tag
            - else
              This build is stuck, because you don't have any active runners that can run this build.

            %br
            Go to
            = link_to namespace_project_runners_path(@build.project.namespace, @build.project) do
              Runners page

    - if @build.starts_environment?
      .prepend-top-default
        .environment-information
          - if @build.outdated_deployment?
            = ci_icon_for_status('success_with_warnings')
          - else
            = ci_icon_for_status(@build.status)

          - environment = environment_for_build(@build.project, @build)
          - if @build.success? && @build.last_deployment.present?
            - if @build.last_deployment.last?
              This build is the most recent deployment to #{environment_link_for_build(@build.project, @build)}.
            - else
              This build is an out-of-date deployment to #{environment_link_for_build(@build.project, @build)}.
              View the most recent deployment #{deployment_link(environment.last_deployment)}.
          - elsif @build.complete? && !@build.success?
            The deployment of this build to #{environment_link_for_build(@build.project, @build)} did not succeed.
          - else
            This build is creating a deployment to #{environment_link_for_build(@build.project, @build)}
            - if environment.try(:last_deployment)
              and will overwrite the #{deployment_link(environment.last_deployment, text: 'latest deployment')}

    .prepend-top-default
      - if @build.erased?
        .erased.alert.alert-warning
          - erased_by = "by #{link_to @build.erased_by.name, user_path(@build.erased_by)}" if @build.erased_by
          Build has been erased #{erased_by.html_safe} #{time_ago_with_tooltip(@build.erased_at)}
      - else
        #js-build-scroll.scroll-controls
          .scroll-step
            = link_to '#build-trace', class: 'btn' do
              %i.fa.fa-angle-up
            = link_to '#down-build-trace', class: 'btn' do
              %i.fa.fa-angle-down
          - if @build.active?
            .autoscroll-container
              %button.btn.btn-sm#autoscroll-button{:type => "button", :data => {:state => 'disabled'}}
                Enable autoscroll
        %pre.build-trace#build-trace
          %code.bash.js-build-output
          = icon("refresh spin", class: "js-build-refresh")

        #down-build-trace

  = render "sidebar"

.js-build-options{ data: javascript_build_options }
