Skip to content

Commit 57bb96c

Browse files
FiseCocoFiseCoco
FiseCoco
authored and
FiseCoco
committed
add node js code
1 parent 66f58de commit 57bb96c

File tree

17 files changed

+193
-1010
lines changed

17 files changed

+193
-1010
lines changed

js-polling/NASRecipe/app.js

Lines changed: 8 additions & 172 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
const request = require('request');
22
const requestPromise = require('request-promise');
33

4-
const url = 'http://172.20.12.129:8080/zstack/v1/accounts/login';
4+
55
const ipAddress = 'http://172.20.12.129:8080/zstack';
6-
const ipAddressT = "172.20.12.129";
76
const loginView = {
87
"logInByAccount": {
98
"password": "b109f3bbbc244eb82441917ed06d618b9008dd09b3befd1b5e07394c706a8bb980b1d7785e5976ec049b46df5f1326af5a2ea6d103fd07c95385ffab0cacbc86",
@@ -15,7 +14,7 @@ const accountName = "admin";
1514

1615
var sessionUuid = "mession";
1716
var zoneInventory, clusterInventory;;
18-
const server = '172.20.12.129:8080';
17+
1918
var allInventor = {
2019
zone: "",
2120
cluster: "",
@@ -33,20 +32,15 @@ var allInventor = {
3332
vMInstance: "",
3433
instanceOffering: "",
3534
attachNetworkServiceToL3Network: "",
36-
l3PrivateNetworkDns: "",
37-
l3PrivateNetworkIpRange: "",
38-
l3PrivateNetwork: "",
3935
attachL2NetworkToCluster: "",
40-
l2VlanNetwork: "",
4136
publicL3NetworkDns: "",
4237
attachL2NoVlanNetworkToCluster: "",
4338
networkServiceProvider: ""
4439
};
4540

4641
var polling = (responsed, sessionUuid, inventory, callback = "") => {
47-
console.log("statusCode:" + responsed.statusCode);
4842
if (responsed.statusCode == 202) {
49-
var url = responsed.body.location.replace(/[0-9]+(?:\.[0-9]+){3}:[0-9]+/, server);
43+
var url = responsed.body.location.replace(/[0-9]+(?:\.[0-9]+){3}:[0-9]+/, '172.20.12.129:8080');
5044
let interval = setInterval(() => {
5145
requestPromise({
5246
method: 'GET',
@@ -95,7 +89,6 @@ var login = (ipAddress, password, accountName) => {
9589

9690
login(ipAddress, password, accountName)
9791
.then((parsedBody) => {
98-
console.log(parsedBody.inventory.uuid);
9992
sessionUuid = parsedBody.inventory.uuid;
10093
createZone(ipAddress, sessionUuid);
10194
})
@@ -124,8 +117,6 @@ var createZone = (ipAddress, sessionUuid) => {
124117
};
125118

126119
var createCluster = (ipAddress, sessionUuid) => {
127-
console.log("come in");
128-
console.log("allInventor.zone:" + JSON.stringify(allInventor.zone));
129120
requestPromise({
130121
method: 'POST',
131122
url: ipAddress + '/v1/clusters',
@@ -158,7 +149,7 @@ var addKvmHost = (ipAddress, sessionUuid) => {
158149
"params": {
159150
"name": "HostTest",
160151
"clusterUuid": allInventor.cluster.uuid,
161-
"managementIp": ipAddressT,
152+
"managementIp": "10.0.198.19",
162153
"username": "root",
163154
"password": "password",
164155
"sshPort": 22.0
@@ -183,7 +174,7 @@ var addNfsPrimaryStorage = (ipAddress, sessionUuid) => {
183174
url: ipAddress + '/v1/primary-storage/nfs',
184175
body: {
185176
"params": {
186-
"url": ipAddressT + ":/nfs_root",
177+
"url": "172.20.12.129" + ":/nfs_root",
187178
"zoneUuid": allInventor.zone.uuid,
188179
"name": "PS1",
189180
"type": "NFS"
@@ -226,7 +217,7 @@ var addSftpBackupStorage = (ipAddress, sessionUuid) => {
226217
url: ipAddress + "/v1/backup-storage/sftp",
227218
body: {
228219
"params": {
229-
"hostname": "10.0.38.145",
220+
"hostname": "10.0.198.19",
230221
"username": "root",
231222
"password": "password",
232223
"sshPort": 22.0,
@@ -401,162 +392,7 @@ var addDnsToPublicL3Network = (ipAddress, sessionUuid) => {
401392
json: true
402393
})
403394
.then((response) => {
404-
polling(response, sessionUuid, "publicL3NetworkDns", createL2VlanNetwork);
405-
})
406-
}
407-
408-
var createL2VlanNetwork = (ipAddress, sessionUuid) => {
409-
requestPromise({
410-
method: "POST",
411-
url: ipAddress + "/v1/l2-networks/vlan",
412-
body: {
413-
"params": {
414-
"vlan": 10.0,
415-
"name": "Test-Net",
416-
"description": "Test",
417-
"zoneUuid": allInventor.zone.uuid,
418-
"physicalInterface": "eth0"
419-
},
420-
"systemTags": [],
421-
"userTags": []
422-
},
423-
headers: {
424-
'Authorization': 'OAuth ' + sessionUuid
425-
},
426-
resolveWithFullResponse: true,
427-
json: true
428-
})
429-
.then((response) => {
430-
polling(response, sessionUuid, "l2VlanNetwork", attachL2VlanNetworkToCluster);
431-
})
432-
}
433-
434-
var attachL2VlanNetworkToCluster = (ipAddress, sessionUuid) => {
435-
requestPromise({
436-
method: "POST",
437-
url: ipAddress + "/v1/l2-networks/" + allInventor.l2VlanNetwork.uuid + "/clusters/" + allInventor.cluster.uuid,
438-
headers: {
439-
'Authorization': 'OAuth ' + sessionUuid
440-
},
441-
resolveWithFullResponse: true,
442-
json: true
443-
})
444-
.then((response) => {
445-
polling(response, sessionUuid, "attachL2NetworkToCluster", createL3PrivateNetwork);
446-
})
447-
}
448-
449-
var createL3PrivateNetwork = (ipAddress, sessionUuid) => {
450-
requestPromise({
451-
method: "POST",
452-
url: ipAddress + "/v1/l3-networks",
453-
body: {
454-
"params": {
455-
"name": "Test-L3PrivateNetwork",
456-
"type": "L3BasicNetwork",
457-
"l2NetworkUuid": allInventor.l2VlanNetwork.uuid,
458-
"system": false
459-
},
460-
"systemTags": [],
461-
"userTags": []
462-
},
463-
headers: {
464-
'Authorization': 'OAuth ' + sessionUuid
465-
},
466-
resolveWithFullResponse: true,
467-
json: true
468-
})
469-
.then((response) => {
470-
polling(response, sessionUuid, "l3PrivateNetwork", addPrivateIpRange);
471-
});
472-
}
473-
474-
var addPrivateIpRange = (ipAddress, sessionUuid) => {
475-
requestPromise({
476-
method: "POST",
477-
url: ipAddress + "/v1/l3-networks/" + allInventor.l3PrivateNetwork.uuid + "/ip-ranges/by-cidr",
478-
body: {
479-
"params": {
480-
"name": "Test-IP-Range",
481-
"networkCidr": "192.168.10.0/24"
482-
},
483-
"systemTags": [],
484-
"userTags": []
485-
},
486-
headers: {
487-
'Authorization': 'OAuth ' + sessionUuid
488-
},
489-
resolveWithFullResponse: true,
490-
json: true
491-
})
492-
.then((response) => {
493-
polling(response, sessionUuid, "l3PrivateNetworkIpRange", addDnsToL3PrivateNetwork);
494-
})
495-
}
496-
497-
var addDnsToL3PrivateNetwork = (ipAddress, sessionUuid) => {
498-
requestPromise({
499-
method: "POST",
500-
url: ipAddress + "/v1/l3-networks/" + allInventor.l3PrivateNetwork.uuid + "/dns",
501-
body: {
502-
"params": {
503-
"dns": "8.8.8.8"
504-
},
505-
"systemTags": [],
506-
"userTags": []
507-
},
508-
headers: {
509-
'Authorization': 'OAuth ' + sessionUuid
510-
},
511-
resolveWithFullResponse: true,
512-
json: true
513-
})
514-
.then((response) => {
515-
polling(response, sessionUuid, "l3PrivateNetworkDns", queryNetworkServiveProvider);
516-
});
517-
}
518-
519-
var queryNetworkServiveProvider = (ipAddress, sessionUuid) => {
520-
requestPromise({
521-
method: "GET",
522-
url: ipAddress + "/v1/network-services/providers",
523-
headers: {
524-
'Authorization': 'OAuth ' + sessionUuid
525-
},
526-
resolveWithFullResponse: true,
527-
json: true
528-
})
529-
.then((response) => {
530-
polling(response, sessionUuid, "networkServiceProvider", attachNetworkServiceToL3Network);
531-
})
532-
}
533-
534-
var attachNetworkServiceToL3Network = (ipAddress, sessionUuid) => {
535-
let networkServiceProviderUuid = allInventor.networkServiceProvider.find((value, index, arr) => {
536-
return value.name =="Flat Network Service Provider";
537-
})
538-
requestPromise({
539-
method: "POST",
540-
url: ipAddress + "/v1/l3-networks/" + allInventor.l3PrivateNetwork.uuid + "/network-services",
541-
body: {
542-
"params": {
543-
"networkServices": {
544-
[networkServiceProviderUuid.uuid]: [
545-
"Eip", "DHCP"
546-
]
547-
}
548-
},
549-
"systemTags": [],
550-
"userTags": []
551-
},
552-
headers: {
553-
'Authorization': 'OAuth ' + sessionUuid
554-
},
555-
resolveWithFullResponse: true,
556-
json: true
557-
})
558-
.then((response) => {
559-
polling(response, sessionUuid, "attachNetworkServiceToL3Network", createInstanceOffering);
395+
polling(response, sessionUuid, "publicL3NetworkDns", createInstanceOffering);
560396
})
561397
}
562398

@@ -596,7 +432,7 @@ var createVmInstance = (ipAddress, sessionUuid) => {
596432
"instanceOfferingUuid": allInventor.instanceOffering.uuid,
597433
"imageUuid": allInventor.image.uuid,
598434
"l3NetworkUuids": [
599-
allInventor.l3PrivateNetwork.uuid
435+
allInventor.l3PublicNetwork.uuid
600436
],
601437
"clusterUuid": allInventor.cluster.uuid,
602438
"description": "this is a vm"

js-polling/ZStackVPCRecipe/app.js

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,7 @@
11
const request = require('request');
22
const requestPromise = require('request-promise');
33

4-
5-
6-
const url = 'http://172.20.12.229:8080/zstack/v1/accounts/login';
7-
const ipAddress = 'http://172.20.12.229:8080/zstack';
8-
const ipAddressT = "172.20.12.229";
4+
const ipAddress = 'http://172.20.12.213:8080/zstack';
95
const loginView = {
106
"logInByAccount": {
117
"password": "b109f3bbbc244eb82441917ed06d618b9008dd09b3befd1b5e07394c706a8bb980b1d7785e5976ec049b46df5f1326af5a2ea6d103fd07c95385ffab0cacbc86",
@@ -17,7 +13,7 @@ const accountName = "admin";
1713

1814
var sessionUuid = "mession";
1915
var zoneInventory, clusterInventory;;
20-
const server = '172.20.12.229:8080';
16+
2117
var allInventor = {
2218
zone: "",
2319
cluster: "",
@@ -49,7 +45,7 @@ var allInventor = {
4945

5046
var polling = (responsed, sessionUuid, inventory, callback = "") => {
5147
if (responsed.statusCode == 202) {
52-
var url = responsed.body.location.replace(/[0-9]+(?:\.[0-9]+){3}:[0-9]+/, server);
48+
var url = responsed.body.location.replace(/[0-9]+(?:\.[0-9]+){3}:[0-9]+/, '172.20.12.213:8080');
5349
let interval = setInterval(() => {
5450
requestPromise({
5551
method: 'GET',
@@ -62,6 +58,7 @@ var polling = (responsed, sessionUuid, inventory, callback = "") => {
6258
})
6359
.then((response) => {
6460
if (response.statusCode == 200) {
61+
console.log(inventory);
6562
allInventor[inventory] = response.body.inventory;
6663
if (callback)
6764
callback(ipAddress, sessionUuid);
@@ -156,7 +153,7 @@ var addKvmHost = (ipAddress, sessionUuid) => {
156153
"params": {
157154
"name": "HostTest",
158155
"clusterUuid": allInventor.cluster.uuid,
159-
"managementIp": ipAddressT,
156+
"managementIp": "10.0.58.28",
160157
"username": "root",
161158
"password": "password",
162159
"sshPort": 22.0
@@ -220,7 +217,7 @@ var addSftpBackupStorage = (ipAddress, sessionUuid) => {
220217
url: ipAddress + "/v1/backup-storage/sftp",
221218
body: {
222219
"params": {
223-
"hostname": ipAddressT,
220+
"hostname": "10.0.58.28",
224221
"username": "root",
225222
"password": "password",
226223
"sshPort": 22.0,

0 commit comments

Comments
 (0)