Merge pull request #666 from vincent99/i18n

i18n fixes
This commit is contained in:
Vincent Fiduccia 2016-05-17 12:12:24 -07:00
commit 850fdac1d3
11 changed files with 322 additions and 226 deletions

View File

@ -24,7 +24,7 @@
<h2>{{t 'waitingPage.hosts.header'}}</h2> <h2>{{t 'waitingPage.hosts.header'}}</h2>
<p> <p>
{{t 'waitingPage.hosts.content' appName=settings.appName}} {{t 'waitingPage.hosts.content' appName=settings.appName minVersion=settings.minDockerVersion}}
{{#if settings.isRancher}}<a href="{{settings.docsBase}}/rancher-ui/infrastructure/hosts/" target="_blank">{{t 'waitingPage.hosts.contentLink'}}</a>{{/if}} {{#if settings.isRancher}}<a href="{{settings.docsBase}}/rancher-ui/infrastructure/hosts/" target="_blank">{{t 'waitingPage.hosts.contentLink'}}</a>{{/if}}
</p> </p>
{{#link-to "hosts.new" (query-params backTo="waiting") class="btn btn-primary"}}{{t 'waitingPage.hosts.linkToHost'}}{{/link-to}} {{#link-to "hosts.new" (query-params backTo="waiting") class="btn btn-primary"}}{{t 'waitingPage.hosts.linkToHost'}}{{/link-to}}

View File

@ -161,10 +161,11 @@
{{/each}} {{/each}}
</select> </select>
<p style="margin: 10px 0 0 0;">{{t 'machine.driverAmazon.needs.label' appName=settings.appName}}</p> <p style="r-m0 r-mt10">{{t 'machine.driverAmazon.needs.label' appName=settings.appName}}</p>
<ul> <ul>
<li>{{format-html-message 'machine.driverAmazon.needs.item1' appName=settings.appName}}</li> <li>{{format-html-message 'machine.driverAmazon.needs.item1' appName=settings.appName}}</li>
<li>{{format-html-message 'machine.driverAmazon.needs.item2' appName=settings.appName}}</li> <li>{{format-html-message 'machine.driverAmazon.needs.item2' appName=settings.appName}}</li>
<li>{{format-html-message 'machine.driverAmazon.needs.item3' appName=settings.appName}}</li>
</ul> </ul>
{{/if}} {{/if}}
{{else}} {{else}}
@ -189,9 +190,9 @@
<div class="text-center"> <div class="text-center">
<i class="icon icon-spinner icon-spin"></i> <i class="icon icon-spinner icon-spin"></i>
{{#if defaultSecurityGroup}} {{#if defaultSecurityGroup}}
{{t 'machine.driverAmazon.securityGroupDot.updating'}} {{t 'machine.driverAmazon.securityGroup.updating'}}
{{else}} {{else}}
{{t 'machine.driverAmazon.securityGroupDot.creating'}} {{t 'machine.driverAmazon.securityGroup.creating'}}
{{/if}} {{/if}}
</div> </div>
</section> </section>

View File

@ -3,55 +3,55 @@
{{partial "host/add-common"}} {{partial "host/add-common"}}
<div class="over-hr r-mt20 r-mb20"> <div class="over-hr r-mt20 r-mb20">
<span>{{t 'machine.driverAzure.accountAccessSpan'}}</span> <span>{{t 'machine.driverAzure.accountAccessSection'}}</span>
</div> </div>
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverAzure.username'}}</label> <label class="form-control-static">{{t 'machine.driverAzure.username.label'}}</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
{{input type="text" value=azureConfig.username classNames="form-control" placeholder="Your Azure account username"}} {{input type="text" value=azureConfig.username classNames="form-control" placeholder=(t 'machine.driverAzure.username.placeholder')}}
</div> </div>
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverAzure.password'}}</label> <label class="form-control-static">{{t 'machine.driverAzure.password.label'}}</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
{{input type="password" value=azureConfig.password classNames="form-control" placeholder="Your Azure account password"}} {{input type="password" value=azureConfig.password classNames="form-control" placeholder=(t 'machine.driverAzure.password.placeholder')}}
</div> </div>
</div> </div>
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverAzure.subscriptionId'}}</label> <label class="form-control-static">{{t 'machine.driverAzure.subscriptionId.label'}}*</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
{{input type="text" value=azureConfig.subscriptionId classNames="form-control" placeholder="Your Azure subscription id"}} {{input type="text" value=azureConfig.subscriptionId classNames="form-control" placeholder=(t 'machine.driverAzure.subscriptionId.placeholder')}}
</div> </div>
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverAzure.subscriptionCert'}}</label> <label class="form-control-static">{{t 'machine.driverAzure.subscriptionCert.label'}}*</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
{{input-text-file {{input-text-file
value=subscriptionCert value=subscriptionCert
placeholder="machine.driverAzure.accountAccess.subscriptionCert.placeholder" placeholder="machine.driverAzure.subscriptionCert.placeholder"
accept="text/*, .cer" accept="text/*, .cer"
}} }}
</div> </div>
</div> </div>
<div class="over-hr r-mt20 r-mb20"> <div class="over-hr r-mt20 r-mb20">
<span>{{t 'machine.driverAzure.instanceLabel'}}</span> <span>{{t 'machine.driverAzure.instanceSection'}}</span>
</div> </div>
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverAzure.image'}}</label> <label class="form-control-static">{{t 'machine.driverAzure.image.label'}}</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
{{input type="text" value=azureConfig.image classNames="form-control" placeholder="Ubuntu 15.10 x64"}} {{input type="text" value=azureConfig.image classNames="form-control" placeholder=(t 'machine.driverAzure.image.placeholder')}}
</div> </div>
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverAzure.size'}}</label> <label class="form-control-static">{{t 'machine.driverAzure.size.label'}}</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
{{new-select {{new-select
@ -65,25 +65,25 @@
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverAzure.sshPort'}}</label> <label class="form-control-static">{{t 'machine.driverAzure.sshPort.label'}}</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
{{input type="text" value=azureConfig.sshPort classNames="form-control" placeholder="22"}} {{input type="text" value=azureConfig.sshPort classNames="form-control" placeholder=(t 'machine.driverAzure.sshPort.placeholder')}}
</div> </div>
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverAzure.dockerPort'}}</label> <label class="form-control-static">{{t 'machine.driverAzure.dockerPort.label'}}</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
{{input type="text" value=azureConfig.dockerPort classNames="form-control" placeholder="2376"}} {{input type="text" value=azureConfig.dockerPort classNames="form-control" placeholder=(t 'machine.driverAzure.dockerPort.placeholder')}}
</div> </div>
</div> </div>
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverAzure.dockerSwarm:'}}</label> <label class="form-control-static">{{t 'machine.driverAzure.dockerSwarm.label'}}</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
{{input type="text" value=azureConfig.dockerSwarmMasterPort classNames="form-control" placeholder="3376"}} {{input type="text" value=azureConfig.dockerSwarmMasterPort classNames="form-control" placeholder=(t 'machine.driverAzure.dockerSwarm.placeholder')}}
</div> </div>
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverAzure.publishSettings'}}</label> <label class="form-control-static">{{t 'machine.driverAzure.publishSettings'}}</label>
@ -91,19 +91,19 @@
<div class="col-md-4"> <div class="col-md-4">
{{input-text-file {{input-text-file
value=azureConfig.publishSettingsFile value=azureConfig.publishSettingsFile
placeholder="machine.driverAzure.instance.publishSettingsFile.placeholder" placeholder="machine.driverAzure.publishSettingsFile.placeholder"
accept="text/*, .publishsettings" accept="text/*, .publishsettings"
}} }}
</div> </div>
</div> </div>
<div class="over-hr r-mt20 r-mb20"> <div class="over-hr r-mt20 r-mb20">
<span>{{t 'machine.driverAzure.region'}}</span> <span>{{t 'machine.driverAzure.regionSection'}}</span>
</div> </div>
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverAzure.region'}}</label> <label class="form-control-static">{{t 'machine.driverAzure.region.label'}}</label>
</div> </div>
<div class="col-md-10"> <div class="col-md-10">
{{new-select {{new-select

View File

@ -3,26 +3,26 @@
{{partial "host/add-common"}} {{partial "host/add-common"}}
<div class="over-hr r-mt20 r-mb20"> <div class="over-hr r-mt20 r-mb20">
<span>{{t 'machine.driverDigitalOcean.accountAccess'}}</span> <span>{{t 'machine.driverDigitalocean.accountSection'}}</span>
</div> </div>
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverDigitalOcean.accessToken'}}</label> <label class="form-control-static">{{t 'machine.driverDigitalocean.accessToken.label'}}</label>
</div> </div>
<div class="col-md-10"> <div class="col-md-10">
{{input type="password" value=digitaloceanConfig.accessToken classNames="form-control" placeholder="Your DigitalOcean API access token"}} {{input type="password" value=digitaloceanConfig.accessToken classNames="form-control" placeholder=(t 'machine.driverDigitalocean.accessToken.placeholder')}}
{{format-html-message 'machine.driverDigitalOcean.helpBlock'}} <p class="help-block">{{format-html-message 'machine.driverDigitalocean.accessToken.help'}}</p>
</div> </div>
</div> </div>
<div class="over-hr r-mt20 r-mb20"> <div class="over-hr r-mt20 r-mb20">
<span>{{t 'machine.driverDigitalOcean.instance'}}</span> <span>{{t 'machine.driverDigitalocean.instanceSection'}}</span>
</div> </div>
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverDigitalOcean.image'}}</label> <label class="form-control-static">{{t 'machine.driverDigitalocean.image.label'}}</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
<select class="form-control" onchange={{action (mut digitaloceanConfig.image) value="target.value"}}> <select class="form-control" onchange={{action (mut digitaloceanConfig.image) value="target.value"}}>
@ -32,7 +32,7 @@
</select> </select>
</div> </div>
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverDigitalOcean.size'}}</label> <label class="form-control-static">{{t 'machine.driverDigitalocean.size.label'}}</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
<select class="form-control" onchange={{action (mut digitaloceanConfig.size) value="target.value"}}> <select class="form-control" onchange={{action (mut digitaloceanConfig.size) value="target.value"}}>
@ -46,12 +46,12 @@
</div> </div>
<div class="over-hr r-mt20 r-mb20"> <div class="over-hr r-mt20 r-mb20">
<span>{{t 'machine.driverDigitalOcean.region'}}</span> <span>{{t 'machine.driverDigitalocean.regionSection'}}</span>
</div> </div>
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverDigitalOcean.region'}}</label> <label class="form-control-static">{{t 'machine.driverDigitalocean.region.label'}}</label>
</div> </div>
<div class="col-md-10"> <div class="col-md-10">
<select class="form-control" onchange={{action (mut digitaloceanConfig.region) value="target.value"}}> <select class="form-control" onchange={{action (mut digitaloceanConfig.region) value="target.value"}}>
@ -63,24 +63,24 @@
</div> </div>
<div class="over-hr r-mt20 r-mb20"> <div class="over-hr r-mt20 r-mb20">
<span>{{t 'machine.driverDigitalOcean.options'}}</span> <span>{{t 'machine.driverDigitalocean.optionsSection'}}</span>
</div> </div>
<table style="margin: 0 auto;"> <table style="margin: 0 auto;">
<tr> <tr>
<td style="padding: 0 10px;"> <td style="padding: 0 10px;">
<div class="form-label checkbox"> <div class="form-label checkbox">
<label>{{input type="checkbox" checked=digitaloceanConfig.backups}} {{t 'machine.driverDigitalOcean.enableBackups'}}</label> <label>{{input type="checkbox" checked=digitaloceanConfig.backups}} {{t 'machine.driverDigitalocean.backups.label'}}</label>
</div> </div>
</td> </td>
<td style="padding: 0 10px;"> <td style="padding: 0 10px;">
<div class="form-label checkbox"> <div class="form-label checkbox">
<label>{{input type="checkbox" checked=digitaloceanConfig.ipv6}} {{t 'machine.driverDigitalOcean.enableIPv6'}}</label> <label>{{input type="checkbox" checked=digitaloceanConfig.ipv6}} {{t 'machine.driverDigitalocean.ipv6.label'}}</label>
</div> </div>
</td> </td>
<td style="padding: 0 10px;"> <td style="padding: 0 10px;">
<div class="form-label checkbox"> <div class="form-label checkbox">
<label>{{input type="checkbox" checked=digitaloceanConfig.privateNetworking}} {{t 'machine.driverDigitalOcean.enablePrivate Networking'}}</label> <label>{{input type="checkbox" checked=digitaloceanConfig.privateNetworking}} {{t 'machine.driverDigitalocean.privateNetworking.label'}}</label>
</div> </div>
</td> </td>
</tr> </tr>

View File

@ -2,16 +2,16 @@
<form> <form>
<div class="container-fluid"> <div class="container-fluid">
<div class="over-hr r-mt20 r-mb20"> <div class="over-hr r-mt20 r-mb20">
<span>{{t 'machine.driverExoscale.accountAccess'}}</span> <span>{{t 'machine.driverExoscale.accountSection'}}</span>
</div> </div>
<div class="row {{if isStep1 'form-group'}}"> <div class="row {{if isStep1 'form-group'}}">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverExoscale.aPIKey'}}</label> <label class="form-control-static">{{t 'machine.driverExoscale.apiKey.label'}}</label>
</div> </div>
<div class="col-md-10"> <div class="col-md-10">
{{#if isStep1}} {{#if isStep1}}
{{input type="text" name="username" classNames="form-control" placeholder="Your Exoscale API key" value=exoscaleConfig.apiKey}} {{input type="text" name="username" classNames="form-control" placeholder=(t 'machine.driverExoscale.apiKey.placeholder') value=exoscaleConfig.apiKey}}
{{else}} {{else}}
<div class="form-control-static">{{exoscaleConfig.apiKey}}</div> <div class="form-control-static">{{exoscaleConfig.apiKey}}</div>
{{/if}} {{/if}}
@ -19,16 +19,16 @@
</div> </div>
<div class="row {{if isStep1 'form-group'}}"> <div class="row {{if isStep1 'form-group'}}">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverExoscale.secretKey'}}</label> <label class="form-control-static">{{t 'machine.driverExoscale.secretKey.label'}}</label>
</div> </div>
<div class="col-md-10"> <div class="col-md-10">
{{#if isStep1}} {{#if isStep1}}
{{input type="password" name="password" classNames="form-control" placeholder="Your Exoscale secret key" value=exoscaleConfig.apiSecretKey}} {{input type="password" name="password" classNames="form-control" placeholder=(t 'machine.driverExoscale.secretKey.placeholder') value=exoscaleConfig.apiSecretKey}}
{{else}} {{else}}
<div class="form-control-static text-muted text-italic">{{t 'machine.driverExoscale.provided'}}</div> <div class="form-control-static text-muted text-italic">{{t 'machine.driverExoscale.secretKey.provided'}}</div>
{{/if}} {{/if}}
{{#if isStep1}} {{#if isStep1}}
<p class="help-block">{{t 'machine.driverExoscale.paste'}}</p> <p class="help-block">{{t 'machine.driverExoscale.accountHelp'}}</p>
{{/if}} {{/if}}
</div> </div>
</div> </div>
@ -37,45 +37,45 @@
{{top-errors errors=errors}} {{top-errors errors=errors}}
<div class="footer-actions"> <div class="footer-actions">
<button {{action "exoscaleLogin"}} name="submit" class="btn btn-primary">{{t 'machine.driverExoscale.next'}}</button> <button {{action "exoscaleLogin"}} name="submit" class="btn btn-primary">{{t 'machine.driverExoscale.loginAction'}}</button>
<button {{action "cancel"}} class="btn btn-link">{{t 'machine.driverExoscale.Cancel'}}</button> <button {{action "cancel"}} class="btn btn-link">{{t 'generic.cancel'}}</button>
</div> </div>
{{/if}} {{/if}}
</form> </form>
</section> </section>
<section class="horizontal-form {{unless isStep2 'hide'}}" style="padding-top: 0"> <section class="horizontal-form r-pt0 {{unless isStep2 'hide'}}">
<div class="text-center"> <div class="text-center">
<i class="icon icon-spinner icon-spin"></i> {{t 'machine.driverExoscale.loadingSecurity'}} <i class="icon icon-spinner icon-spin"></i> {{t 'machine.driverExoscale.loadingSecurity'}}
</div> </div>
</section> </section>
<section class="horizontal-form {{unless isGteStep3 'hide'}}" style="padding-top: 0"> <section class="horizontal-form r-pt0 {{unless isGteStep3 'hide'}}">
<div class="container-fluid"> <div class="container-fluid">
<div class="over-hr r-mt20 r-mb20"> <div class="over-hr r-mt20 r-mb20">
<span>Security Group</span> <span>{{t 'machine.driverExoscale.securityGroupSection'}}</span>
</div> </div>
<div class="row {{if isStep3 'form-group'}}"> <div class="row {{if isStep3 'form-group'}}">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverExoscale.securityGroup'}}</label> <label class="form-control-static">{{t 'machine.driverExoscale.securityGroup.label'}}</label>
</div> </div>
<div class="col-md-10"> <div class="col-md-10">
{{#if isStep3}} {{#if isStep3}}
<div class="radio r-pt10"><label> <div class="radio r-pt10"><label>
{{radio-button selection=whichSecurityGroup value="default"}} {{t 'machine.driverExoscale.standard'}} {{radio-button selection=whichSecurityGroup value="default"}}
{{#if defaultSecurityGroup}} {{#if defaultSecurityGroup}}
{{t 'machine.driverExoscale.existing'}} <code>{{defaultSecurityGroupName}}</code> {{t 'machine.driverExoscale.group'}} {{format-html-message 'machine.driverExoscale.securityGroup.defaultExisting' groupName=defaultSecurityGroupName}}
{{else}} {{else}}
{{t 'machine.driverExoscale.autoCreate'}} <code>{{defaultSecurityGroupName}}</code> {{t 'machine.driverExoscale.group'}} {{format-html-message 'machine.driverExoscale.securityGroup.defaultCreate' groupName=defaultSecurityGroupName}}
{{/if}} {{/if}}
</label></div> </label></div>
{{#if (and settings.isRancher (not isCustomSecurityGroup))}} {{#if (and settings.isRancher (not isCustomSecurityGroup))}}
<p class="help-block r-ml20"><a href="{{settings.docsBase}}/rancher-ui/infrastructure/hosts/exoscale/#required-ports-for-rancher-to-work" target="_blank">Learn more</a> about the ports that will be opened.</p> <p class="help-block r-ml20"><a href="{{settings.docsBase}}/rancher-ui/infrastructure/hosts/exoscale/#required-ports-for-rancher-to-work" target="_blank">{{t 'machine.driverExoscale.portHelp.link'}}</a> {{t 'machine.driverExoscale.portHelp.text'}}</p>
{{/if}} {{/if}}
<div class="radio"><label>{{radio-button selection=whichSecurityGroup value="custom"}} Custom: Choose an existing group{{#if isCustomSecurityGroup}}:{{/if}}</label></div> <div class="radio"><label>{{radio-button selection=whichSecurityGroup value="custom"}} {{t 'machine.driverExoscale.securityGroup.custom'}}</label></div>
{{#if isCustomSecurityGroup}} {{#if isCustomSecurityGroup}}
<select class="form-control" onchange={{action (mut selectedSecurityGroup) value="target.value"}}> <select class="form-control" onchange={{action (mut selectedSecurityGroup) value="target.value"}}>
{{#each allSecurityGroups as |choice|}} {{#each allSecurityGroups as |choice|}}
@ -83,12 +83,12 @@
{{/each}} {{/each}}
</select> </select>
<p style="margin: 10px 0 0 0;">For {{settings.appName}} to work correctly your security group will need to allow traffic:</p> <p style="r-m0 r-mt10">{{t 'machine.driverExoscale.needs.label' appName=settings.appName}}</p>
<ul> <ul>
<li>From the {{settings.appName}} server to <code>TCP</code> port <code>22</code> <span class="text-muted">(SSH to install and configure Docker)</span> and <code>TCP</code> port <code>2376</code> <span class="text-muted">(access to Docker daemon)</span></li> <li>{{format-html-message 'machine.driverExoscale.needs.item1' appName=settings.appName}}</li>
<li>From and To all other hosts on <code>UDP</code> ports <code>500</code> and <code>4500</code> <span class="text-muted">(for IPsec networking)</span></li> <li>{{format-html-message 'machine.driverExoscale.needs.item2' appName=settings.appName}}</li>
<li>{{format-html-message 'machine.driverExoscale.needs.item3' appName=settings.appName}}</li>
</ul> </ul>
<p style="margin: 0;">These rules will <b>not</b> be added automatically.</p>
{{/if}} {{/if}}
{{else}} {{else}}
<div class="form-control-static"> <div class="form-control-static">
@ -102,7 +102,7 @@
{{top-errors errors=errors}} {{top-errors errors=errors}}
<div class="footer-actions"> <div class="footer-actions">
<button {{action "selectSecurityGroup"}} class="btn btn-primary">Next: Set Instance options</button> <button {{action "selectSecurityGroup"}} class="btn btn-primary">{{t 'machine.driverExoscale.selectSecurityGroupAction'}}</button>
<button {{action "cancel"}} class="btn btn-link">Cancel</button> <button {{action "cancel"}} class="btn btn-link">Cancel</button>
</div> </div>
{{/if}} {{/if}}
@ -110,27 +110,32 @@
<section class="horizontal-form {{unless isStep4 'hide'}}" style="padding-top: 0"> <section class="horizontal-form {{unless isStep4 'hide'}}" style="padding-top: 0">
<div class="text-center"> <div class="text-center">
<i class="icon icon-spinner icon-spin"></i> {{#if defaultSecurityGroup}}Updating{{else}}Creating{{/if}} Security Group... <i class="icon icon-spinner icon-spin"></i>
{{#if defaultSecurityGroup}}
{{t 'machine.driverExoscale.securityGroup.updating'}}
{{else}}
{{t 'machine.driverExoscale.securityGroup.creating'}}
{{/if}}
</div> </div>
</section> </section>
<section class="horizontal-form {{unless isStep5 'hide'}}" style="padding-top: 0"> <section class="horizontal-form r-pt0 {{unless isStep5 'hide'}}">
<div class="text-center"> <div class="text-center">
<i class="icon icon-spinner icon-spin"></i> Fetching available Instance settings... <i class="icon icon-spinner icon-spin"></i> {{t 'machine.driverExoscale.loadingInstance'}}
</div> </div>
</section> </section>
<section class="horizontal-form {{unless isGteStep6 'hide'}}" style="padding-top: 0;"> <section class="horizontal-form r-pt0 {{unless isGteStep6 'hide'}}">
<div class="container-fluid"> <div class="container-fluid">
<div class="over-hr r-mt20 r-mb20"> <div class="over-hr r-mt20 r-mb20">
<span>Instance</span> <span>{{t 'machine.driverExoscale.instanceSection'}}</span>
</div> </div>
{{partial "host/add-common"}} {{partial "host/add-common"}}
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">Instance Profile</label> <label class="form-control-static">{{t 'machine.driverExoscale.instanceProfile.label'}}</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
<select class="form-control" onchange={{action (mut exoscaleConfig.instanceProfile) value="target.value"}}> <select class="form-control" onchange={{action (mut exoscaleConfig.instanceProfile) value="target.value"}}>
@ -140,7 +145,7 @@
</select> </select>
</div> </div>
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">Root Size</label> <label class="form-control-static">{{t 'machine.driverExoscale.diskSize.label'}}</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
<select class="form-control" onchange={{action (mut exoscaleConfig.diskSize) value="target.value"}}> <select class="form-control" onchange={{action (mut exoscaleConfig.diskSize) value="target.value"}}>

View File

@ -4,12 +4,12 @@
{{partial "host/add-common"}} {{partial "host/add-common"}}
<div class="over-hr r-mt20 r-mb20"> <div class="over-hr r-mt20 r-mb20">
<span>{{t 'machine.driverOther.driver'}}</span> <span>{{t 'machine.driverOther.driverSection'}}</span>
</div> </div>
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverOther.driverNote'}}</label> <label class="form-control-static">{{t 'machine.driverOther.driver.label'}}*</label>
</div> </div>
<div class="col-md-8"> <div class="col-md-8">
{{#if model}} {{#if model}}
@ -23,7 +23,7 @@
</div> </div>
<div class="over-hr r-mt20 r-mb20"> <div class="over-hr r-mt20 r-mb20">
<span>{{str-replace driver match="Config" with=""}} {{t 'machine.driverOther.options'}}</span> <span>{{t 'machine.driverOther.optionsSection' driverName=(str-replace driver match="Config" with="")}}</span>
</div> </div>
{{#each fieldNames as |fieldName|}} {{#each fieldNames as |fieldName|}}

View File

@ -4,35 +4,35 @@
{{partial "host/add-common"}} {{partial "host/add-common"}}
<div class="over-hr r-mt20 r-mb20"> <div class="over-hr r-mt20 r-mb20">
<span>{{t 'machine.driverPacket.accountAccess'}}</span> <span>{{t 'machine.driverPacket.accountSection'}}</span>
</div> </div>
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverPacket.project'}}</label> <label class="form-control-static">{{t 'machine.driverPacket.projectId.label'}}*</label>
</div> </div>
<div class="col-md-10"> <div class="col-md-10">
{{input type="text" name="username" value=packetConfig.projectId classNames="form-control" placeholder="Your Packet project ID"}} {{input type="text" name="username" value=packetConfig.projectId classNames="form-control" placeholder=(t 'machine.driverPacket.projectId.placeholder')}}
</div> </div>
</div> </div>
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverPacket.apiKey'}}</label> <label class="form-control-static">{{t 'machine.driverPacket.apiKey.label'}}*</label>
</div> </div>
<div class="col-md-10"> <div class="col-md-10">
{{input type="password" name="password" value=packetConfig.apiKey classNames="form-control" placeholder="Your Packet API key"}} {{input type="password" name="password" value=packetConfig.apiKey classNames="form-control" placeholder=(t 'machine.driverPacket.apiKey.placeholder')}}
<p class="help-block">{{format-html-message 'machine.driverPacket.packet'}}</p> <p class="help-block">{{format-html-message 'machine.driverPacket.apiKeyHelp'}}</p>
</div> </div>
</div> </div>
<div class="over-hr r-mt20 r-mb20"> <div class="over-hr r-mt20 r-mb20">
<span>{{t 'machine.driverPacket.instance'}}</span> <span>{{t 'machine.driverPacket.instanceSection'}}</span>
</div> </div>
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverPacket.image'}}</label> <label class="form-control-static">{{t 'machine.driverPacket.image.label'}}</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
<select class="form-control" onchange={{action (mut packetConfig.os) value="target.value"}}> <select class="form-control" onchange={{action (mut packetConfig.os) value="target.value"}}>
@ -42,7 +42,7 @@
</select> </select>
</div> </div>
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverPacket.size'}}</label> <label class="form-control-static">{{t 'machine.driverPacket.size.label'}}</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
<select class="form-control" onchange={{action (mut packetConfig.plan) value="target.value"}}> <select class="form-control" onchange={{action (mut packetConfig.plan) value="target.value"}}>
@ -54,12 +54,12 @@
</div> </div>
<div class="over-hr r-mt20 r-mb20"> <div class="over-hr r-mt20 r-mb20">
<span>{{t 'machine.driverPacket.region'}}</span> <span>{{t 'machine.driverPacket.regionSection'}}</span>
</div> </div>
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverPacket.region'}}</label> <label class="form-control-static">{{t 'machine.driverPacket.region.label'}}</label>
</div> </div>
<div class="col-md-10"> <div class="col-md-10">
<select class="form-control" onchange={{action (mut packetConfig.facility) value="target.value"}}> <select class="form-control" onchange={{action (mut packetConfig.facility) value="target.value"}}>

View File

@ -5,35 +5,35 @@
{{partial "host/add-common"}} {{partial "host/add-common"}}
<div class="over-hr r-mt20 r-mb20"> <div class="over-hr r-mt20 r-mb20">
<span>{{t 'machine.driverRackspac.accountAccess'}}</span> <span>{{t 'machine.driverRackspace.accountSection'}}</span>
</div> </div>
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverRackspac.username'}}</label> <label class="form-control-static">{{t 'machine.driverRackspace.username.label'}}*</label>
</div> </div>
<div class="col-md-10"> <div class="col-md-10">
{{input type="text" value=rackspaceConfig.username classNames="form-control" placeholder="Your RackSpace username"}} {{input type="text" value=rackspaceConfig.username classNames="form-control" placeholder=(t 'machine.driverRackspace.username.placeholder')}}
</div> </div>
</div> </div>
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverRackspac.apiKey'}}</label> <label class="form-control-static">{{t 'machine.driverRackspace.apiKey.label'}}*</label>
</div> </div>
<div class="col-md-10"> <div class="col-md-10">
{{input type="password" value=rackspaceConfig.apiKey classNames="form-control" placeholder="Your RackSpace API key"}} {{input type="password" value=rackspaceConfig.apiKey classNames="form-control" placeholder=(t 'machine.driverRackspace.apiKey.placeholder')}}
<p class="help-block">{{t 'machine.driverRackspac.settings'}}</p> <p class="help-block">{{t 'machine.driverRackspace.accountHelp'}}</p>
</div> </div>
</div> </div>
<div class="over-hr r-mt20 r-mb20"> <div class="over-hr r-mt20 r-mb20">
<span>{{t 'machine.driverRackspac.region'}}</span> <span>{{t 'machine.driverRackspace.regionSection'}}</span>
</div> </div>
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverRackspac.region'}}</label> <label class="form-control-static">{{t 'machine.driverRackspace.region.label'}}</label>
</div> </div>
<div class="col-md-10"> <div class="col-md-10">
<select class="form-control" onchange={{action (mut rackspaceConfig.region) value="target.value"}}> <select class="form-control" onchange={{action (mut rackspaceConfig.region) value="target.value"}}>
@ -45,12 +45,12 @@
</div> </div>
<div class="over-hr r-mt20 r-mb20"> <div class="over-hr r-mt20 r-mb20">
<span>{{t 'machine.driverRackspac.instance'}}</span> <span>{{t 'machine.driverRackspace.instanceSection'}}</span>
</div> </div>
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverRackspac.flavor'}}</label> <label class="form-control-static">{{t 'machine.driverRackspace.flavor.label'}}</label>
</div> </div>
<div class="col-md-10"> <div class="col-md-10">
<select class="form-control" onchange={{action (mut rackspaceConfig.flavorId) value="target.value"}}> <select class="form-control" onchange={{action (mut rackspaceConfig.flavorId) value="target.value"}}>

View File

@ -2,16 +2,16 @@
<form name="login"> <form name="login">
<div class="container-fluid"> <div class="container-fluid">
<div class="over-hr r-mt20 r-mb20"> <div class="over-hr r-mt20 r-mb20">
<span>{{t 'machine.driverUbiquity.accountAccess'}}</span> <span>{{t 'machine.driverUbiquity.accountSection'}}</span>
</div> </div>
<div class="row {{if isStep1 'form-group'}}"> <div class="row {{if isStep1 'form-group'}}">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverUbiquity.resellerID'}}</label> <label class="form-control-static">{{t 'machine.driverUbiquity.clientId.label'}}</label>
</div> </div>
<div class="col-md-10"> <div class="col-md-10">
{{#if isStep1}} {{#if isStep1}}
{{input type="text" name="clientId" classNames="form-control" placeholder="Your Ubiquity Hosting API Reseller ID" value=ubiquityConfig.clientId}} {{input type="text" name="clientId" classNames="form-control" placeholder=(t 'machine.driverUbiquity.clientId.placeholder') value=ubiquityConfig.clientId}}
{{else}} {{else}}
<div class="form-control-static">{{ubiquityConfig.clientId}}</div> <div class="form-control-static">{{ubiquityConfig.clientId}}</div>
{{/if}} {{/if}}
@ -19,11 +19,11 @@
</div> </div>
<div class="row {{if isStep1 'form-group'}}"> <div class="row {{if isStep1 'form-group'}}">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverUbiquity.remoteID'}}</label> <label class="form-control-static">{{t 'machine.driverUbiquity.apiUsername.label'}}</label>
</div> </div>
<div class="col-md-10"> <div class="col-md-10">
{{#if isStep1}} {{#if isStep1}}
{{input type="text" name="apiUsername" classNames="form-control" placeholder="Your Ubiquity Hosting Remote ID" value=ubiquityConfig.apiUsername}} {{input type="text" name="apiUsername" classNames="form-control" placeholder=(t 'machine.driverUbiquity.apiUsername.placeholder') value=ubiquityConfig.apiUsername}}
{{else}} {{else}}
<div class="form-control-static">{{ubiquityConfig.apiUsername}}</div> <div class="form-control-static">{{ubiquityConfig.apiUsername}}</div>
{{/if}} {{/if}}
@ -31,16 +31,16 @@
</div> </div>
<div class="row {{if isStep1 'form-group'}}"> <div class="row {{if isStep1 'form-group'}}">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverUbiquity.accessKey'}}</label> <label class="form-control-static">{{t 'machine.driverUbiquity.apiToken.label'}}</label>
</div> </div>
<div class="col-md-10"> <div class="col-md-10">
{{#if isStep1}} {{#if isStep1}}
{{input type="password" name="apiToken" classNames="form-control" placeholder="Your Ubiquity Hosting Access Key" value=ubiquityConfig.apiToken}} {{input type="password" name="apiToken" classNames="form-control" placeholder=(t 'machine.driverUbiquity.apiToken.placeholder') value=ubiquityConfig.apiToken}}
{{else}} {{else}}
<div class="form-control-static text-muted text-italic">{{t 'machine.driverUbiquity.provided'}}</div> <div class="form-control-static text-muted text-italic">{{t 'machine.driverUbiquity.apiToken.provided'}}</div>
{{/if}} {{/if}}
{{#if isStep1}} {{#if isStep1}}
<p class="help-block">{{format-html-message 'machine.driverUbiquity.helpBlock'}}</p> <p class="help-block">{{format-html-message 'machine.driverUbiquity.accountHelp'}}</p>
{{/if}} {{/if}}
</div> </div>
</div> </div>
@ -48,34 +48,34 @@
{{#if isStep1}} {{#if isStep1}}
{{top-errors errors=errors}} {{top-errors errors=errors}}
<div class="footer-actions"> <div class="footer-actions">
<button {{action "ubiLogin"}} name="submit" class="btn btn-primary">{{t 'machine.driverUbiquity.button'}}</button> <button {{action "ubiLogin"}} name="submit" class="btn btn-primary">{{t 'machine.driverUbiquity.loginAction'}}</button>
<button {{action "cancel"}} class="btn btn-link">{{t 'machine.driverUbiquity.cancel'}}</button> <button {{action "cancel"}} class="btn btn-link">{{t 'generic.cancel'}}</button>
</div> </div>
{{/if}} {{/if}}
</form> </form>
</section> </section>
<section class="horizontal-form {{unless isStep2 'hide'}}" style="padding-top: 0"> <section class="horizontal-form r-pt0 {{unless isStep2 'hide'}}">
<div class="text-center"> <div class="text-center">
<i class="icon icon-spinner icon-spin"></i> {{t 'machine.driverUbiquity.loading'}} <i class="icon icon-spinner icon-spin"></i> {{t 'machine.driverUbiquity.loadingInstance'}}
</div> </div>
</section> </section>
<section class="horizontal-form {{unless isGteStep3 'hide'}}" style="padding-top: 0;"> <section class="horizontal-form r-pt0 {{unless isGteStep3 'hide'}}">
<div class="container-fluid"> <div class="container-fluid">
<div class="over-hr r-mt20 r-mb20"> <div class="over-hr r-mt20 r-mb20">
<span>{{t 'machine.driverUbiquity.instance'}}</span> <span>{{t 'machine.driverUbiquity.instanceSection'}}</span>
</div> </div>
{{partial "host/add-common"}} {{partial "host/add-common"}}
<div class="over-hr r-mt20 r-mb20"> <div class="over-hr r-mt20 r-mb20">
<span>{{t 'machine.driverUbiquity.region'}}</span> <span>{{t 'machine.driverUbiquity.regionSection'}}</span>
</div> </div>
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverUbiquity.region'}}</label> <label class="form-control-static">{{t 'machine.driverUbiquity.region.label'}}</label>
</div> </div>
<div class="col-md-10"> <div class="col-md-10">
<select class="form-control" onchange={{action "setZone" target.value}}> <select class="form-control" onchange={{action "setZone" target.value}}>
@ -88,7 +88,7 @@
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverUbiquity.image'}}</label> <label class="form-control-static">{{t 'machine.driverUbiquity.image.label'}}</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
<select class="form-control" onchange={{action (mut ubiquityConfig.imageId) value="target.value"}}> <select class="form-control" onchange={{action (mut ubiquityConfig.imageId) value="target.value"}}>
@ -98,7 +98,7 @@
</select> </select>
</div> </div>
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverUbiquity.flavor'}}</label> <label class="form-control-static">{{t 'machine.driverUbiquity.flavor.label'}}</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
<select class="form-control" onchange={{action (mut ubiquityConfig.flavorId) value="target.value"}}> <select class="form-control" onchange={{action (mut ubiquityConfig.flavorId) value="target.value"}}>

View File

@ -5,18 +5,18 @@
{{partial "host/add-common"}} {{partial "host/add-common"}}
<div class="over-hr r-mt20 r-mb20"> <div class="over-hr r-mt20 r-mb20">
<span>{{t 'machine.driverVsphere.accountAccess'}}</span> <span>{{t 'machine.driverVsphere.accountSection'}}</span>
</div> </div>
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverVsphere.vCenterHost'}}</label> <label class="form-control-static">{{t 'machine.driverVsphere.vcenter.label'}}*</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
{{input type="text" class="form-control" value=config.vcenter placeholder="vCenter or ESXi hostname/IP"}} {{input type="text" class="form-control" value=config.vcenter placeholder=(t 'machine.driverVsphere.vcenter.placeholder')}}
</div> </div>
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverVsphere.vCenterPort'}}</label> <label class="form-control-static">{{t 'machine.driverVsphere.vcenterPort.label'}}*</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
{{input type="number" min=1 max=65535 class="form-control" value=config.vcenterPort}} {{input type="number" min=1 max=65535 class="form-control" value=config.vcenterPort}}
@ -25,14 +25,14 @@
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverVsphere.username'}}</label> <label class="form-control-static">{{t 'machine.driverVsphere.username.label'}}*</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
{{input type="text" value=config.username classNames="form-control"}} {{input type="text" value=config.username classNames="form-control"}}
</div> </div>
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverVsphere.password'}}</label> <label class="form-control-static">{{t 'machine.driverVsphere.password.label'}}*</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
{{input type="password" value=config.password classNames="form-control"}} {{input type="password" value=config.password classNames="form-control"}}
@ -40,12 +40,12 @@
</div> </div>
<div class="over-hr r-mt20 r-mb20"> <div class="over-hr r-mt20 r-mb20">
<span>{{t 'machine.driverVsphere.instance'}}</span> <span>{{t 'machine.driverVsphere.instanceSection'}}</span>
</div> </div>
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverVsphere.cpus'}}</label> <label class="form-control-static">{{t 'machine.driverVsphere.cpuCount.label'}}</label>
</div> </div>
<div class="col-sm-2 col-md-1 form-control-static"> <div class="col-sm-2 col-md-1 form-control-static">
@ -56,72 +56,72 @@
</div> </div>
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverVsphere.memory'}}</label> <label class="form-control-static">{{t 'machine.driverVsphere.memorySize.label'}}</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
<div class="input-group"> <div class="input-group">
{{input type="number" min=1 value=config.memorySize classNames="form-control"}} {{input type="number" min=1 value=config.memorySize classNames="form-control"}}
<div class="input-group-addon">{{t 'machine.driverVsphere.mb'}}</div> <div class="input-group-addon">{{t 'machine.driverVsphere.memorySize.unit'}}</div>
</div> </div>
</div> </div>
</div> </div>
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverVsphere.disk'}}</label> <label class="form-control-static">{{t 'machine.driverVsphere.diskSize.label'}}</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
<div class="input-group"> <div class="input-group">
{{input type="number" min=1 value=config.diskSize classNames="form-control"}} {{input type="number" min=1 value=config.diskSize classNames="form-control"}}
<div class="input-group-addon">{{t 'machine.driverVsphere.mb'}}</div> <div class="input-group-addon">{{t 'machine.driverVsphere.diskSize.unit'}}</div>
</div> </div>
</div> </div>
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverVsphere.os'}}</label> <label class="form-control-static">{{t 'machine.driverVsphere.boot2dockerUrl.label'}}</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
{{input type="text" value=config.boot2dockerUrl classNames="form-control" placeholder="Default: Latest boot2docker image"}} {{input type="text" value=config.boot2dockerUrl classNames="form-control" placeholder=(t 'machine.driverVsphere.boot2dockerUrl.placeholder')}}
</div> </div>
</div> </div>
<div class="over-hr r-mt20 r-mb20"> <div class="over-hr r-mt20 r-mb20">
<span>{{t 'machine.driverVsphere.scheduling'}}</span> <span>{{t 'machine.driverVsphere.schedulingSection'}}</span>
</div> </div>
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverVsphere.dataCenter'}}</label> <label class="form-control-static">{{t 'machine.driverVsphere.dataCenter.label'}}</label>
</div> </div>
<div class="col-md-2"> <div class="col-md-2">
{{input type="text" value=config.datacenter classNames="form-control"}} {{input type="text" value=config.datacenter classNames="form-control"}}
</div> </div>
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverVsphere.pool'}}</label> <label class="form-control-static">{{t 'machine.driverVsphere.pool.label'}}</label>
</div> </div>
<div class="col-md-2"> <div class="col-md-2">
{{input type="text" value=config.pool classNames="form-control"}} {{input type="text" value=config.pool classNames="form-control"}}
</div> </div>
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverVsphere.host'}}</label> <label class="form-control-static">{{t 'machine.driverVsphere.host.label'}}</label>
</div> </div>
<div class="col-md-2"> <div class="col-md-2">
{{input type="text" value=config.hostsystem classNames="form-control" placeholder="Use '/' if using a cluster"}} {{input type="text" value=config.hostsystem classNames="form-control" placeholder=(t 'machine.driverVsphere.host.placeholder')}}
</div> </div>
</div> </div>
<div class="row form-group"> <div class="row form-group">
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverVsphere.network'}}</label> <label class="form-control-static">{{t 'machine.driverVsphere.network.label'}}</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
{{input type="text" value=config.network classNames="form-control"}} {{input type="text" value=config.network classNames="form-control"}}
</div> </div>
<div class="col-md-2 form-label"> <div class="col-md-2 form-label">
<label class="form-control-static">{{t 'machine.driverVsphere.dataStore'}}</label> <label class="form-control-static">{{t 'machine.driverVsphere.dataStore.label'}}</label>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
{{input type="text" value=config.datastore classNames="form-control"}} {{input type="text" value=config.datastore classNames="form-control"}}

View File

@ -945,7 +945,7 @@ waitingPage:
contentBanner: | contentBanner: |
Before adding your first service or launching a container Before adding your first service or launching a container
content: | content: |
Before adding your first service or launching a container, you must add at least a single Linux host that supports Docker 1.9.1+ and be able to reach the {appName} server via HTTP. Before adding your first service or launching a container, you must add at least a single Linux host that supports Docker {minVersion} or higher and be able to reach the {appName} server via HTTP.
{appName} supports adding Linux hosts in the form of a virtual or physical machine from any public cloud providers, privately hosted clouds, or even bare metal servers. {appName} supports adding Linux hosts in the form of a virtual or physical machine from any public cloud providers, privately hosted clouds, or even bare metal servers.
contentLink: Learn More contentLink: Learn More
linkToHost: Add Host linkToHost: Add Host
@ -1814,9 +1814,10 @@ machine:
label: "For {appName} to work correctly your security group will need to allow traffic:" label: "For {appName} to work correctly your security group will need to allow traffic:"
item1: From the {appName} server to <code>TCP</code> port <code>22</code> <span class="text-muted">(SSH to install and configure Docker)</span> item1: From the {appName} server to <code>TCP</code> port <code>22</code> <span class="text-muted">(SSH to install and configure Docker)</span>
item2: From and To all other hosts on <code>UDP</code> ports <code>500</code> and <code>4500</code> <span class="text-muted">(for IPsec networking)</span></li> item2: From and To all other hosts on <code>UDP</code> ports <code>500</code> and <code>4500</code> <span class="text-muted">(for IPsec networking)</span></li>
item3: These rules will <b>not</b> be added automatically.
setInstanceAction: "Next: Set Instance options" setInstanceAction: "Next: Set Instance options"
instanceSection: Instance instanceSection: Instance
instanceOptions: Instance Options instanceOptionsSection: Instance Options
instanceType: instanceType:
label: Instance Type label: Instance Type
rootSize: rootSize:
@ -1837,25 +1838,39 @@ machine:
label: Use only private IP address label: Use only private IP address
driverAzure: driverAzure:
accountAccess: accountAccessSection: Account Access
subscriptionCert: username:
placeholder: Your Azure subscription certificate label: Username
instance: placeholder: Your Azure account username
publishSettingsFile: password:
placeholder: Your Publish Settings file label: Password
accountAccessSpan: Account Access placeholder: Your Azure account password
username: Username subscriptionId:
password: Password label: Subscription ID
subscriptionId: Subscription Id* placeholder: Your Azure subscription ID
subscriptionCert: Subscription Cert* subscriptionCert:
instanceLabel: Instance label: Subscription Cert
image: Image placeholder: Your Azure subscription certificate
size: Size instanceSection: Instance
sshPort: SSH Port image:
dockerPort: Docker Port label: Image
dockerSwarm: Docker Swarm Master Port placeholder: Ubuntu 15.10 x64
publishSettings: Publish Settings File size:
region: Region label: Size
sshPort:
label: SSH Port
placeholder: e.g. 22
dockerPort:
label: Docker Port
placeholder: e.g. 2376
dockerSwarm:
label: Docker Swarm Master Port
placeholder: e.g. 3376
publishSettingsFile:
placeholder: Your Publish Settings file
regionSection: Region
region:
label: Region
driverCustom: driverCustom:
step1: Start up a Linux machine somewhere and install the latest version of <a href="http://www.docker.com/" target="_blank">Docker</a> on it. step1: Start up a Linux machine somewhere and install the latest version of <a href="http://www.docker.com/" target="_blank">Docker</a> on it.
@ -1871,91 +1886,166 @@ machine:
part2: screen within a minute. part2: screen within a minute.
close: Close close: Close
driverDigitalOcean: driverDigitalocean:
accountAccess: Account Access accountSection: Account Access
accessToken: Access Token* accessToken:
helpBlock: <p class="help-block">A Personal Access Token from the DigitalOcean <a href="https://cloud.digitalocean.com/settings/applications" target="_blank">Apps & API</a> screen</p> label: Access Token*
instance: Instance placeholder: Your DigitalOcean API access token
image: Image help: |
size: Size A Personal Access Token from the DigitalOcean
region: Region <a href="https://cloud.digitalocean.com/settings/applications" target="_blank">Apps & API</a> screen
options: Options instanceSection: Instance
enableBackups: Enable Backups image:
enableIPv6: Enable IPv6 label: Image
enablePrivate Networking: Enable Private Networking size:
label: Size
regionSection: Region
region:
label: Region
optionsSection: Options
backups:
label: Enable Backups
ipv6:
label: Enable IPv6
privateNetworking:
label: Enable Private Networking
driverExoscale: driverExoscale:
accountAccess: Account Access accountSection: Account Access
aPIKey: API Key apiKey:
secretKey: Secret Key label: API Key
provided: Provided placeholder: Your Exoscale API Key
paste: Paste in your Exoscale key pair here. We'll use this key to create your new Instances. secretKey:
next: "Next: Authenticate & select a Security Group" label: Secret Key
Cancel: Cancel placeholder: Your Exoscale secret key
provided: Provided
accountHelp: Paste in your Exoscale key pair here. We'll use this key to create your new Instances.
loginAction: "Next: Authenticate & select a Security Group"
loadingSecurity: Loading security group info from Exoscale... loadingSecurity: Loading security group info from Exoscale...
securityGroup: Security Group securityGroupSection: Security Group
standard: "Standard:" securityGroup:
existing: Use the existing label: Security Group
group: group defaultExisting: "Standard: Use the existing <code>{groupName}</code> group"
autoCreate: Automatically create a defaultCreate: "Standard: Automatically create a <code>{groupName}</code> group"
custom: "Custom: Choose an existing group"
updating: Updating Security Group...
creating: Creating Security Group...
portHelp:
link: Learn more
text: about the ports that will be opened.
needs:
label: "For {appName} to work correctly your security group will need to allow traffic:"
item1: From the {appName} server to <code>TCP</code> port <code>22</code> <span class="text-muted">(SSH to install and configure Docker)</span>
item2: From and To all other hosts on <code>UDP</code> ports <code>500</code> and <code>4500</code> <span class="text-muted">(for IPsec networking)</span></li>
item3: These rules will <b>not</b> be added automatically.
selectSecurityGroupAction: "Next: Set Instance options"
loadingInstance: Fetching available Instance settings...
instanceSection: Instance
instanceProfile:
label: Instance Profile
diskSize:
label: Root Size
driverOther: driverOther:
driver: Driver driverSection: Driver
driverNote: Driver* driver:
options: Options label: Driver
optionsSection: "{driverName} Options"
driverPacket: driverPacket:
accountAccess: Account Access accountSection: Account Access
project: Project* projectId:
apiKey: API Key* label: Project
packet: From the Packet <a href="https://app.packet.net/portal#/api-keys" target="_blank">API Keys</a> screen placeholder: Your Packet project ID
instance: Instance apiKey:
image: Image label: API Key
size: Size placeholder: Your Packet API key
region: Region apiKeyHelp: From the Packet <a href="https://app.packet.net/portal#/api-keys" target="_blank">API Keys</a> screen
instanceSection: Instance
image:
label: Image
size:
label: Size
regionSection: Region
region:
label: Region
driverRackspace: driverRackspace:
accountAccess: Account Access accountSection: Account Access
username: Username* username:
apiKey: API Key* label: Username
settings: From the Account Settings screen of the RackSpace control panel placeholder: Your RackSpace username
region: Region apiKey:
instance: Instance label: API Key
flavor: Flavor placeholder: Your RackSpace API key
accountHelp: From the Account Settings screen of the RackSpace control panel
regionSection: Region
region:
label: Region
instanceSection: Instance
flavor:
label: Flavor
driverUbiquity: driverUbiquity:
accountAccess: Account Access accountSection: Account Access
resellerID: Reseller ID clientId:
remoteID: Remote ID label: Reseller ID
accessKey: Access Key placeholder: Your Ubiquity Hosting API Reseller ID
provided: Provided apiUsername:
helpBlock: You can find your Ubiquity Hosting API credentials <a href="https://motion.ubiquityhosting.com/api">here</a>. Don't have an account? Learn more about <a href="http://www.ubiquityhosting.com/">Ubiquity Hosting</a> today! label: Remote ID
button: "Next: Authenticate & Create a New Cloud Instance" placeholder: Your Ubiquity Hosting Remote ID
cancel: Cancel apiToken:
loading: Loading cloud instance creation details... label: Access Key
instance: Instance placeholder: Your Ubiquity Hosting Access Key
region: Region provided: Provided
image: Image accountHelp: You can find your Ubiquity Hosting API credentials <a href="https://motion.ubiquityhosting.com/api">here</a>. Don't have an account? Learn more about <a href="http://www.ubiquityhosting.com/">Ubiquity Hosting</a> today!
flavor: Flavor loginAction: "Next: Authenticate & Create a New Cloud Instance"
loadingInstance: Loading cloud instance creation details...
instanceSection: Instance
regionSection: Region
region:
label: Region
image:
label: Image
flavor:
label: Flavor
driverVsphere: driverVsphere:
accountAccess: Account Access accountSection: Account Access
vCenterHost: vCenter Host* vcenter:
vCenterPort: vCenter Port* label: vCenter Host
username: Username* placeholder: vCenter or ESXi hostname/IP
password: Password* vcenterPort:
instance: Instance label: vCenter Port
cpus: CPUs username:
memory: Memory label: Username
mb: MB password:
disk: Disk label: Password
os: OS ISO URL instanceSection: Instance
scheduling: Scheduling cpuCount:
dataCenter: Data Center label: CPUs
pool: Pool memorySize:
host: Host label: Memory
network: Network unit: MB
dataStore: Data Store diskSize:
label: Disk
unit: MB
boot2dockerUrl:
label: OS ISO URL
placeholder: "Default: Latest boot2docker image"
schedulingSection: Scheduling
dataCenter:
label: Data Center
pool:
label: Pool
host:
label: Host
placeholder: "Use '/' if using a cluster"
network:
label: Network
dataStore:
label: Data Store
modalAboutComponent: modalAboutComponent:
component: Component component: Component