mirror of https://github.com/apache/cloudstack.git
CLOUDSTACK-999: hyper-V: UI > Infrastructure > Secondary Storages > Add Secondary Storage > When provider is SMB, show SMB username/password/domain fields and send their value to url parameter of addImageStore API.
This commit is contained in:
parent
6f3688d13d
commit
f3d76dfa9e
|
|
@ -1230,6 +1230,17 @@ var addExtraPropertiesToUcsBladeObject = function(jsonObj) {
|
|||
return url;
|
||||
}
|
||||
|
||||
function smbURL(server, path, smbUsername, smbPassword, smbDomain) {
|
||||
var url = '';
|
||||
if (server.indexOf('://') == -1) {
|
||||
url += 'cifs://';
|
||||
}
|
||||
|
||||
url += (server + path + '?user=' + smbUsername + '&password=' + smbPassword + '&domain=' + smbDomain);
|
||||
|
||||
return url;
|
||||
}
|
||||
|
||||
function presetupURL(server, path) {
|
||||
var url;
|
||||
if (server.indexOf("://") == -1)
|
||||
|
|
|
|||
|
|
@ -15016,7 +15016,8 @@
|
|||
},
|
||||
success: function(json) {
|
||||
var objs = json.liststorageprovidersresponse.dataStoreProvider;
|
||||
var items = [];
|
||||
//var items = [];
|
||||
var items = [{id: 'SMB', description: 'SMB'}]; //temporary, before Rajesh adds 'SMB' to listStorageProviders API response.
|
||||
if (objs != null) {
|
||||
for (var i = 0; i < objs.length; i++) {
|
||||
if (objs[i].name == 'NFS')
|
||||
|
|
@ -15038,11 +15039,16 @@
|
|||
args.$select.change(function() {
|
||||
var $form = $(this).closest('form');
|
||||
if ($(this).val() == "NFS") {
|
||||
//NFS
|
||||
//NFS, SMB
|
||||
$form.find('.form-item[rel=zoneid]').css('display', 'inline-block');
|
||||
$form.find('.form-item[rel=nfsServer]').css('display', 'inline-block');
|
||||
$form.find('.form-item[rel=path]').css('display', 'inline-block');
|
||||
|
||||
$form.find('.form-item[rel=path]').css('display', 'inline-block');
|
||||
|
||||
//SMB
|
||||
$form.find('.form-item[rel=smbUsername]').hide();
|
||||
$form.find('.form-item[rel=smbPassword]').hide();
|
||||
$form.find('.form-item[rel=smbDomain]').hide();
|
||||
|
||||
//S3
|
||||
$form.find('.form-item[rel=accesskey]').hide();
|
||||
$form.find('.form-item[rel=secretkey]').hide();
|
||||
|
|
@ -15063,13 +15069,50 @@
|
|||
$form.find('.form-item[rel=url]').hide();
|
||||
$form.find('.form-item[rel=account]').hide();
|
||||
$form.find('.form-item[rel=username]').hide();
|
||||
$form.find('.form-item[rel=key]').hide();
|
||||
$form.find('.form-item[rel=key]').hide();
|
||||
} else if ($(this).val() == "SMB") {
|
||||
//NFS, SMB
|
||||
$form.find('.form-item[rel=zoneid]').css('display', 'inline-block');
|
||||
$form.find('.form-item[rel=nfsServer]').css('display', 'inline-block');
|
||||
$form.find('.form-item[rel=path]').css('display', 'inline-block');
|
||||
|
||||
//SMB
|
||||
$form.find('.form-item[rel=smbUsername]').css('display', 'inline-block');
|
||||
$form.find('.form-item[rel=smbPassword]').css('display', 'inline-block');
|
||||
$form.find('.form-item[rel=smbDomain]').css('display', 'inline-block');
|
||||
|
||||
//S3
|
||||
$form.find('.form-item[rel=accesskey]').hide();
|
||||
$form.find('.form-item[rel=secretkey]').hide();
|
||||
$form.find('.form-item[rel=bucket]').hide();
|
||||
$form.find('.form-item[rel=endpoint]').hide();
|
||||
$form.find('.form-item[rel=usehttps]').hide();
|
||||
$form.find('.form-item[rel=connectiontimeout]').hide();
|
||||
$form.find('.form-item[rel=maxerrorretry]').hide();
|
||||
$form.find('.form-item[rel=sockettimeout]').hide();
|
||||
|
||||
$form.find('.form-item[rel=createNfsCache]').find('input').removeAttr('checked');
|
||||
$form.find('.form-item[rel=createNfsCache]').hide();
|
||||
$form.find('.form-item[rel=nfsCacheZoneid]').hide();
|
||||
$form.find('.form-item[rel=nfsCacheNfsServer]').hide();
|
||||
$form.find('.form-item[rel=nfsCachePath]').hide();
|
||||
|
||||
//Swift
|
||||
$form.find('.form-item[rel=url]').hide();
|
||||
$form.find('.form-item[rel=account]').hide();
|
||||
$form.find('.form-item[rel=username]').hide();
|
||||
$form.find('.form-item[rel=key]').hide();
|
||||
} else if ($(this).val() == "S3") {
|
||||
//NFS
|
||||
//NFS, SMB
|
||||
$form.find('.form-item[rel=zoneid]').hide();
|
||||
$form.find('.form-item[rel=nfsServer]').hide();
|
||||
$form.find('.form-item[rel=path]').hide();
|
||||
|
||||
$form.find('.form-item[rel=path]').hide();
|
||||
|
||||
//SMB
|
||||
$form.find('.form-item[rel=smbUsername]').hide();
|
||||
$form.find('.form-item[rel=smbPassword]').hide();
|
||||
$form.find('.form-item[rel=smbDomain]').hide();
|
||||
|
||||
//S3
|
||||
$form.find('.form-item[rel=accesskey]').css('display', 'inline-block');
|
||||
$form.find('.form-item[rel=secretkey]').css('display', 'inline-block');
|
||||
|
|
@ -15094,11 +15137,16 @@
|
|||
$form.find('.form-item[rel=username]').hide();
|
||||
$form.find('.form-item[rel=key]').hide();
|
||||
} else if ($(this).val() == "Swift") {
|
||||
//NFS
|
||||
//NFS, SMB
|
||||
$form.find('.form-item[rel=zoneid]').hide();
|
||||
$form.find('.form-item[rel=nfsServer]').hide();
|
||||
$form.find('.form-item[rel=path]').hide();
|
||||
|
||||
$form.find('.form-item[rel=path]').hide();
|
||||
|
||||
//SMB
|
||||
$form.find('.form-item[rel=smbUsername]').hide();
|
||||
$form.find('.form-item[rel=smbPassword]').hide();
|
||||
$form.find('.form-item[rel=smbDomain]').hide();
|
||||
|
||||
//S3
|
||||
$form.find('.form-item[rel=accesskey]').hide();
|
||||
$form.find('.form-item[rel=secretkey]').hide();
|
||||
|
|
@ -15130,7 +15178,7 @@
|
|||
},
|
||||
|
||||
|
||||
//NFS (begin)
|
||||
//NFS, SMB (begin)
|
||||
zoneid: {
|
||||
label: 'Zone',
|
||||
docID: 'helpSecondaryStorageZone',
|
||||
|
|
@ -15177,8 +15225,31 @@
|
|||
validation: {
|
||||
required: true
|
||||
}
|
||||
},
|
||||
//NFS, SMB (end)
|
||||
|
||||
|
||||
//SMB (begin)
|
||||
smbUsername: {
|
||||
label: 'SMB Username',
|
||||
validation: {
|
||||
required: true
|
||||
}
|
||||
},
|
||||
//NFS (end)
|
||||
smbPassword: {
|
||||
label: 'SMB Password',
|
||||
isPassword: true,
|
||||
validation: {
|
||||
required: true
|
||||
}
|
||||
},
|
||||
smbDomain: {
|
||||
label: 'SMB Domain',
|
||||
validation: {
|
||||
required: true
|
||||
}
|
||||
},
|
||||
//SMB (end)
|
||||
|
||||
|
||||
//S3 (begin)
|
||||
|
|
@ -15337,7 +15408,33 @@
|
|||
var errorMsg = parseXMLHttpResponse(XMLHttpResponse);
|
||||
args.response.error(errorMsg);
|
||||
}
|
||||
});
|
||||
} else if (args.data.provider == 'SMB') {
|
||||
var zoneid = args.data.zoneid;
|
||||
var nfs_server = args.data.nfsServer;
|
||||
var path = args.data.path;
|
||||
var url = smbURL(nfs_server, path, args.data.smbUsername, args.data.smbPassword, args.data.smbDomain);
|
||||
|
||||
$.extend(data, {
|
||||
provider: args.data.provider,
|
||||
zoneid: zoneid,
|
||||
url: url
|
||||
});
|
||||
|
||||
$.ajax({
|
||||
url: createURL('addImageStore'),
|
||||
data: data,
|
||||
success: function(json) {
|
||||
var item = json.addimagestoreresponse.imagestore;
|
||||
args.response.success({
|
||||
data: item
|
||||
});
|
||||
},
|
||||
error: function(XMLHttpResponse) {
|
||||
var errorMsg = parseXMLHttpResponse(XMLHttpResponse);
|
||||
args.response.error(errorMsg);
|
||||
}
|
||||
});
|
||||
} else if (args.data.provider == 'S3') {
|
||||
$.extend(data, {
|
||||
provider: args.data.provider,
|
||||
|
|
|
|||
Loading…
Reference in New Issue