ui/app/workload/template.hbs

239 lines
7.0 KiB
Handlebars

<section class="header clearfix">
<div class="pull-left">
<h1 class="vertical-middle">
{{t 'servicePage.header' name=service.displayName}}
</h1>
{{#if (and false service.canHaveContainers (not service.isSelector))}}
<div class="vertical-middle" style="height: 30px;">
{{info-multi-stats model=service largeTargetId="largeStats"}}
</div>
{{/if}}
</div>
<div class="right-buttons">
{{badge-state model=service}}
{{action-menu model=service showPrimary=false classNames="ml-10 pull-right" size="sm"}}
</div>
</section>
<div id="largeStats">
</div>
{{#if service.description}}
{{banner-message color='bg-secondary mb-0 mt-10' message=(linkify service.description)}}
{{/if}}
{{#if service.showTransitioningMessage}}
<div class="{{service.stateColor}}"><p>{{uc-first service.transitioningMessage}}</p></div>
{{/if}}
<section>
<div class="row banner bg-info basics">
{{#if service.externalIpAddresses}}
<div class="vertical-middle">
<label class="acc-label vertical-middle p-0">{{t 'servicePage.external.externalIp' count=service.externalIpAddresses.length}}</label>
{{join-array service.externalIpAddresses}}
</div>
{{else if service.hostname}}
<div class="vertical-middle">
<label class="acc-label vertical-middle p-0">{{t 'servicePage.external.externalHostname'}} </label> {{service.hostname}}
</div>
{{else if service.selector}}
<div class="vertical-middle">
<label class="acc-label vertical-middle p-0">{{t 'servicePage.selector.label'}} </label> {{service.selector}}
</div>
{{/if}}
{{#if service.hasImage}}
<div class="vertical-middle">
<label class="acc-label vertical-middle p-0">{{t 'servicePage.multistat.image'}}</label>
{{fixedLaunchConfig.image}} {{copy-to-clipboard clipboardText=fixedLaunchConfig.image size="small"}}
</div>
{{/if}}
{{#if service.canScale}}
<div class="vertical-middle">
<label class="acc-label vertical-middle p-0">{{t 'servicePage.multistat.scale'}}</label>
<span class="pr-5">
{{service.displayScale}}
</span>
<div class="btn-group btn-group-xs p-0">
<button class="btn btn-xs bg-primary" {{action "scaleDown" target=service}} disabled={{not service.canScaleDown}}><i class="icon icon-minus icon-fw"/></button>
<button style="margin-left: -1px;" class="btn btn-xs bg-primary" {{action "scaleUp" target=service}} disabled={{not service.canScaleUp}}><i class="icon icon-plus icon-fw"/></button>
</div>
</div>
{{/if}}
</div>
</section>
<section>
<div class="row banner bg-info basics">
<div class="vertical-middle">
<label class="acc-label vertical-middle p-0">{{t 'servicePage.multistat.namesapce'}}</label>
{{service.namespace.displayName}}
</div>
<div class="vertical-middle">
<label class="acc-label vertical-middle p-0">{{t 'servicePage.multistat.type'}}</label>
{{service.type}}
</div>
<div class="vertical-middle">
<label class="acc-label vertical-middle p-0">{{t 'servicePage.multistat.created'}}</label>
{{date-calendar service.created}}
</div>
</div>
</section>
<section>
{{#accordion-list as |al expandFn|}}
{{#if service.canHaveEnvironment}}
{{form-env-var
model=displayEnvironmentVars
expandAll=al.expandAll
expandFn=expandFn
}}
{{/if}}
{{#if service.isReal}}
{{#accordion-list-item
title=(t 'containerPage.portsTab.header')
detail=(t 'containerPage.portsTab.detail')
expandAll=al.expandAll
expand=(action expandFn)
}}
{{container/form-ports
initialPorts=service.launchConfig.ports
editing=false
}}
{{/accordion-list-item}}
{{container/form-scheduling
initialHostId=model.workload.nodeId
service=service
scheduling=service.scheduling
editing=false
expandAll=al.expandAll
expandFn=expandFn
classNames="accordion"
}}
{{/if}}
{{#if service.canHaveHealthCheck}}
{{#accordion-list-item
title=(t 'formHealthCheck.title')
detail=(t 'formHealthCheck.detail')
expandAll=al.expandAll
expand=(action expandFn)
}}
<div class="row">
<div class="col span-6 mt-0 mb-0">
<label class="acc-label">{{t 'formHealthCheck.readiness'}}</label>
</div>
<div class="col span-6 mt-0 mb-0">
{{#if service.launchConfig.healthcheck}}
<label class="acc-label">{{t 'formHealthCheck.liveness'}}</label>
{{/if}}
</div>
</div>
<div class="row">
<div class="col {{if service.launchConfig.livenessProbe 'span-6' 'span-12'}}">
{{form-healthcheck
initialCheck=service.launchConfig.readinessProbe
editing=false
}}
</div>
{{#if service.launchConfig.livenessProbe}}
<div class="col span-6">
{{form-healthcheck
initialCheck=service.launchConfig.livenessProbe
editing=true
}}
</div>
{{/if}}
</div>
{{/accordion-list-item}}
{{/if}}
{{container/form-upgrade
workload=service
scaleMode=service.type
editing=false
expandAll=al.expandAll
expandFn=expandFn
}}
{{container/form-volumes
launchConfig=activeLaunchConfig
service=service
editing=false
expandAll=al.expandAll
expandFn=expandFn
}}
{{#if service.isReal}}
{{container/form-command
tagName=''
instance=activeLaunchConfig
service=model.workload
initialLabels=activeLaunchConfig.labels
editing=false
expandAll=al.expandAll
expandFn=expandFn
}}
{{/if}}
{{container/form-networking
classNames="accordion-wrapper"
instance=activeLaunchConfig
service=service
editing=false
expandAll=al.expandAll
expandFn=expandFn
}}
{{#if service.canHaveLabels}}
{{labels-section
model=service
expandAll=al.expandAll
expandFn=expandFn
}}
{{/if}}
{{form-annotations
classNames="accordion-wrapper"
model=service
editing=false
expandAll=al.expandAll
expandFn=expandFn
}}
{{#if service.canHaveSecrets}}
{{#accordion-list-item
title=(t 'formSecrets.title')
detail=(t 'formSecrets.detail')
expandAll=al.expandAll
expand=(action expandFn)
}}
{{container/form-secrets
instance=activeLaunchConfig
editing=false
expandAll=al.expandAll
expandFn=expandFn
classNames="accordion"
}}
{{/accordion-list-item}}
{{/if}}
{{#if service.canChangeSecurity}}
{{container/form-security
instance=activeLaunchConfig
editing=false
expandAll=al.expandAll
expandFn=expandFn
}}
{{/if}}
{{/accordion-list}}
</section>