249249 </a-form-item >
250250 </div >
251251 <div v-if =" this.providerSelected === 'PowerFlex'" >
252- <a-form-item :label =" $t('label.powerflex.gateway')" >
253- <a-input v-decorator =" ['powerflexGateway']" />
254- <a-form-item :label =" $t('label.powerflex.gateway.username')" >
255- <a-input v-decorator =" ['powerflexGatewayUsername']" />
252+ <a-form-item >
253+ <span slot =" label" >
254+ {{ $t('label.powerflex.gateway') }}
255+ <a-tooltip :title =" $t('label.powerflex.gateway')" >
256+ <a-icon type =" info-circle" style =" color : rgba (0 ,0 ,0 ,.45 )" />
257+ </a-tooltip >
258+ </span >
259+ <a-input v-decorator =" ['powerflexGateway', { rules: [{ required: true, message: `${$t('label.required')}` }] }]" />
256260 </a-form-item >
257- <a-form-item :label =" $t('label.powerflex.gateway.password')" >
258- <a-input v-decorator =" ['powerflexGatewayPassword']" />
261+ <a-form-item >
262+ <span slot =" label" >
263+ {{ $t('label.powerflex.gateway.username') }}
264+ <a-tooltip :title =" $t('label.powerflex.gateway.username')" >
265+ <a-icon type =" info-circle" style =" color : rgba (0 ,0 ,0 ,.45 )" />
266+ </a-tooltip >
267+ </span >
268+ <a-input v-decorator =" ['powerflexGatewayUsername', { rules: [{ required: true, message: `${$t('label.required')}` }] }]" />
269+ </a-form-item >
270+ <a-form-item >
271+ <span slot =" label" >
272+ {{ $t('label.powerflex.gateway.password') }}
273+ <a-tooltip :title =" $t('label.powerflex.gateway.password')" >
274+ <a-icon type =" info-circle" style =" color : rgba (0 ,0 ,0 ,.45 )" />
275+ </a-tooltip >
276+ </span >
277+ <a-input-password v-decorator =" ['powerflexGatewayPassword', { rules: [{ required: true, message: `${$t('label.required')}` }] }]" />
259278 </a-form-item >
260- </a-form-item ><a-form-item :label =" $t('label.powerflex.storage.pool')" >
261- <a-input v-decorator =" ['powerflexStoragePool']" />
279+ <a-form-item >
280+ <span slot =" label" >
281+ {{ $t('label.powerflex.storage.pool') }}
282+ <a-tooltip :title =" $t('label.powerflex.storage.pool')" >
283+ <a-icon type =" info-circle" style =" color : rgba (0 ,0 ,0 ,.45 )" />
284+ </a-tooltip >
285+ </span >
286+ <a-input v-decorator =" ['powerflexStoragePool', { rules: [{ required: true, message: `${$t('label.required')}` }] }]" />
262287 </a-form-item >
263288 </div >
264289 <div v-if =" this.protocolSelected === 'RBD'" >
@@ -570,6 +595,11 @@ export default {
570595 }
571596 return url
572597 },
598+ powerflexURL (gateway , username , password , pool ) {
599+ var url = ' powerflex://' + encodeURIComponent (username) + ' :' + encodeURIComponent (password) + ' @' +
600+ gateway + ' /' + encodeURIComponent (pool)
601+ return url
602+ },
573603 closeModal () {
574604 this .$parent .$parent .close ()
575605 },
@@ -662,7 +692,7 @@ export default {
662692 url = this .iscsiURL (server, iqn, lun)
663693 }
664694 params .url = url
665- if (values .provider !== ' DefaultPrimary' ) {
695+ if (values .provider !== ' DefaultPrimary' && values . provider !== ' PowerFlex ' ) {
666696 if (values .managed ) {
667697 params .managed = true
668698 } else {
@@ -678,11 +708,17 @@ export default {
678708 params .url = values .url
679709 }
680710 }
711+
712+ if (values .provider === ' PowerFlex' ) {
713+ params .url = this .powerflexURL (values .powerflexGateway , values .powerflexGatewayUsername ,
714+ values .powerflexGatewayPassword , values .powerflexStoragePool )
715+ }
716+
681717 if (this .selectedTags .length > 0 ) {
682718 params .tags = this .selectedTags .join ()
683719 }
684720 this .loading = true
685- api (' createStoragePool' , params).then (json => {
721+ api (' createStoragePool' , {}, ' POST ' , params).then (json => {
686722 this .$notification .success ({
687723 message: this .$t (' label.add.primary.storage' ),
688724 description: this .$t (' label.add.primary.storage' )
0 commit comments