mirror of https://github.com/rancher/ui.git
220 lines
7.3 KiB
Handlebars
220 lines
7.3 KiB
Handlebars
{{#unless isSidekick}}
|
|
<section class="header">
|
|
<h1>{{headerLabel}}</h1>
|
|
</section>
|
|
|
|
{{#if isService}}
|
|
<section class="horizontal-form container-fluid well">
|
|
{{#if isUpgrade}}
|
|
{{form-upgrade
|
|
switch=(action 'selectLaunchConfig')
|
|
optionsChanged=(action 'setUpgrade')
|
|
choices=launchConfigChoices
|
|
index=launchConfigIndex
|
|
}}
|
|
{{/if}}
|
|
|
|
{{form-scale
|
|
initialLabels=launchConfig.labels
|
|
initialScale=service.scale
|
|
isGlobal=isGlobal
|
|
errors=scaleErrors
|
|
setLabels=(action 'setLabels' 'scale')
|
|
setGlobal=(action 'setGlobal')
|
|
setScale=(action 'setScale')
|
|
isVm=isVm
|
|
classNames=(if isUpgrade 'hide')
|
|
}}
|
|
|
|
{{form-launch-config-switch
|
|
index=launchConfigIndex
|
|
choices=launchConfigChoices
|
|
add=(action 'addSidekick')
|
|
switch=(action 'selectLaunchConfig')
|
|
showAdd=(not isUpgrade)
|
|
}}
|
|
</section>
|
|
{{/if}}
|
|
|
|
{{/unless}}
|
|
|
|
{{#if noLaunchConfigsEnabled}}
|
|
<div class="text-muted text-center">{{t 'newContainer.selectUpgrade'}}</div>
|
|
{{/if}}
|
|
|
|
<div data-launchindex="{{if isSidekick '' '-1'}}">
|
|
<section class="horizontal-form container-fluid well">
|
|
<div>
|
|
{{#unless isUpgrade}}
|
|
{{form-name-description
|
|
model=primaryResource
|
|
namePlaceholder="newContainer.name.placeholder"
|
|
descriptionPlaceholder="newContainer.description.placeholder"
|
|
}}
|
|
{{/unless}}
|
|
</div>
|
|
<div class="row r-ml15 r-mr15">
|
|
{{form-image
|
|
isVm=isVm
|
|
initialValue=launchConfig.imageUuid
|
|
errors=imageErrors
|
|
changed=(action 'setImage')
|
|
initialLabels=launchConfig.labels
|
|
setLabels=(action 'setLabels' 'image')
|
|
}}
|
|
|
|
{{#if isVm}}
|
|
{{form-virtualmachine launchConfig=launchConfig}}
|
|
{{/if}}
|
|
</div>
|
|
|
|
{{form-ports
|
|
initialPorts=launchConfig.ports
|
|
errors=portErrors
|
|
changedStr=(action (mut launchConfig.ports))
|
|
portsAsStrArray=launchConfig.ports
|
|
}}
|
|
|
|
{{#if (and isService (not isSidekick))}}
|
|
|
|
{{form-service-links
|
|
service=service
|
|
allServices=allServices
|
|
changed=(action 'setServiceLinks')
|
|
}}
|
|
{{/if}}
|
|
</section>
|
|
|
|
<section>
|
|
<ul class="nav nav-tabs nav-tabs-well shadowed" style="display: inline-block" role="tablist">
|
|
{{#if isVm}}
|
|
<li role="tab" aria-controls="panel" class="tab" data-section="disks" {{action "selectTab" "disks"}}><a href="#">{{t 'newContainer.tabs.disks'}}</a></li>
|
|
<li role="tab" aria-controls="panel" class="tab" data-section="userdata" {{action "selectTab" "userdata"}}><a href="#">{{t 'newContainer.tabs.userData'}}</a></li>
|
|
{{else}}
|
|
<li role="tab" aria-controls="panel" class="tab" data-section="command" {{action "selectTab" "command"}}><a href="#">{{t 'newContainer.tabs.command'}}</a></li>
|
|
<li role="tab" aria-controls="panel" class="tab" data-section="volumes" {{action "selectTab" "volumes"}}><a href="#">{{t 'newContainer.tabs.volumes'}}
|
|
</a></li>
|
|
<li role="tab" aria-controls="panel" class="tab" data-section="network" {{action "selectTab" "network"}}><a href="#">{{t 'newContainer.tabs.networking'}}</a></li>
|
|
<li role="tab" aria-controls="panel" class="tab" data-section="security" {{action "selectTab" "security"}}><a href="#">{{t 'newContainer.tabs.security'}}</a></li>
|
|
{{/if}}
|
|
|
|
<li role="tab" aria-controls="panel" class="tab" data-section="healthcheck" {{action "selectTab" "healthcheck"}}><a href="#">{{t 'newContainer.tabs.healthCheck'}}</a></li>
|
|
<li role="tab" aria-controls="panel" class="tab" data-section="labels" {{action "selectTab" "labels"}}><a href="#">{{t 'newContainer.tabs.labels'}}</a></li>
|
|
<li role="tab" aria-controls="panel" class="tab" data-section="scheduling" {{action "selectTab" "scheduling"}}><a href="#">{{t 'newContainer.tabs.scheduling'}}</a></li>
|
|
</ul>
|
|
|
|
<div class="horizontal-form well" role="tabpanel">
|
|
{{#if isVm}}
|
|
<div class="section container-fluid" data-section="disks">
|
|
{{form-disks instance=launchConfig availableDrivers=storageDriverChoices errors=diskErrors}}
|
|
</div>
|
|
|
|
<div class="section container-fluid" data-section="userdata">
|
|
{{form-userdata instance=launchConfig}}
|
|
</div>
|
|
{{else}}
|
|
<div class="section container-fluid" data-section="command">
|
|
{{form-command
|
|
instance=launchConfig
|
|
initialLabels=launchConfig.labels
|
|
errors=commandErrors
|
|
isService=isService
|
|
setLabels=(action 'setLabels' 'command')
|
|
}}
|
|
</div>
|
|
|
|
<div class="section container-fluid" data-section="volumes">
|
|
{{form-volumes
|
|
instance=launchConfig
|
|
isService=isService
|
|
service=service
|
|
primaryService=primaryService
|
|
launchConfigIndex=launchConfigIndex
|
|
errors=volumeErrors
|
|
allHosts=allHosts}}
|
|
</div>
|
|
|
|
<div class="section container-fluid" data-section="network">
|
|
{{form-networking
|
|
editing=true
|
|
instance=launchConfig
|
|
errors=networkingErrors
|
|
allHosts=allHosts
|
|
service=service
|
|
isService=isService
|
|
initialLabels=launchConfig.labels
|
|
setLabels=(action 'setLabels' 'networking')
|
|
}}
|
|
</div>
|
|
|
|
<div class="section" data-section="security">
|
|
{{form-security instance=launchConfig errors=securityErrors editing=true}}
|
|
</div>
|
|
{{/if}}
|
|
|
|
<div class="section container-fluid" data-section="healthcheck">
|
|
{{form-healthcheck
|
|
isService=isService
|
|
healthCheck=launchConfig.healthCheck
|
|
errors=healthCheckErrors
|
|
editing=true}}
|
|
</div>
|
|
|
|
<div class="section" data-section="labels">
|
|
{{form-user-labels
|
|
initialLabels=launchConfig.labels
|
|
setLabels=(action 'setLabels' 'user')
|
|
}}
|
|
</div>
|
|
|
|
<div class="section" data-section="scheduling">
|
|
{{form-scheduling
|
|
isService=isService
|
|
isGlobal=isGlobal
|
|
isVm=isVm
|
|
initialHostId=launchConfig.requestedHostId
|
|
initialLabels=launchConfig.labels
|
|
errors=schedulingErrors
|
|
editing=true
|
|
allHosts=allHosts
|
|
setLabels=(action 'setLabels' 'scheduling')
|
|
setGlobal=(action 'setGlobal')
|
|
setRequestedHost=(action 'setRequestedHostId')
|
|
}}
|
|
</div>
|
|
|
|
</div>
|
|
</section>
|
|
</div>
|
|
|
|
{{#if (and isService (not isSidekick))}}
|
|
{{#each service.secondaryLaunchConfigs as |slc index|}}
|
|
<div data-launchindex="{{index}}" class="hide">
|
|
{{new-container
|
|
isService=true
|
|
isSidekick=true
|
|
isUpgrade=isUpgrade
|
|
isVm=(eq slc.kind 'virtualMachine')
|
|
launchConfig=slc
|
|
service=slc
|
|
primaryResource=slc
|
|
primaryService=primaryService
|
|
launchConfigIndex=index
|
|
allHosts=allHosts
|
|
allServices=allServices
|
|
allStoragePools=allStoragePools
|
|
}}
|
|
</div>
|
|
{{/each}}
|
|
{{/if}}
|
|
|
|
|
|
{{#unless isSidekick}}
|
|
{{top-errors errors=errors}}
|
|
{{#save-cancel saveDisabled=noLaunchConfigsEnabled createLabel=(if isUpgrade 'newContainer.saveUpgrade' 'newContainer.saveNew') save="save" cancel="cancel"}}
|
|
{{#if (and (not isUpgrade) (not-eq launchConfigIndex -1))}}
|
|
<button class="btn btn-default" {{action "removeSidekick"}}>{{t 'newContainer.removeSidekick'}}</button>
|
|
{{/if}}
|
|
{{/save-cancel}}
|
|
{{/unless}}
|