Subversion Repositories qbpwcf-lib(archive)

Rev

Rev 615 | Rev 671 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 615 Rev 668
Line 52... Line 52...
52
	echo "--dbPass MariaDb service password, default is output of uuid command".PHP_EOL;
52
	echo "--dbPass MariaDb service password, default is output of uuid command".PHP_EOL;
53
	echo "--dbName MariaDb service database name, default is test".PHP_EOL;
53
	echo "--dbName MariaDb service database name, default is test".PHP_EOL;
54
	echo "--dbPort MariaDb service port, default is 3306".PHP_EOL;
54
	echo "--dbPort MariaDb service port, default is 3306".PHP_EOL;
55
	echo "--sshAddrAndPort ssh service address, example: 0.0.0.0:22".PHP_EOL;
55
	echo "--sshAddrAndPort ssh service address, example: 0.0.0.0:22".PHP_EOL;
56
	echo "--headless true/false, default is false. If true, it means link allInOneForCI.php to allInOne.php".PHP_EOL;
56
	echo "--headless true/false, default is false. If true, it means link allInOneForCI.php to allInOne.php".PHP_EOL;
-
 
57
	echo "--whiteIp, outsite ip which will not auto block forever".PHP_EOL;
57
	exit;
58
	exit;
58
 
59
 
59
	}#function help end
60
	}#function help end
60
 
61
 
61
#函式說明:
62
#函式說明:
Line 214... Line 215...
214
$sshAddrAndPort=array();
215
$sshAddrAndPort=array();
215
 
216
 
216
#預設要有自動輸出的內容
217
#預設要有自動輸出的內容
217
$headless="false";
218
$headless="false";
218
 
219
 
-
 
220
#預設的白名單ip清單
-
 
221
$whiteIp=array();
-
 
222
 
219
#檢查參數
223
#檢查參數
220
#函式說明:
224
#函式說明:
221
#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容.
225
#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容.
222
#回傳結果:
226
#回傳結果:
223
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
227
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
Line 247... Line 251...
247
#$conf["canNotBeEmpty"],字串陣列,哪些必填參數的內容不得為空字串或空陣列,僅當$conf["canBeEmptyString"]為"true"時會生效.
251
#$conf["canNotBeEmpty"],字串陣列,哪些必填參數的內容不得為空字串或空陣列,僅當$conf["canBeEmptyString"]為"true"時會生效.
248
#$conf["canNotBeEmpty"]=array();
252
#$conf["canNotBeEmpty"]=array();
249
#$conf["canBeEmpty"],字串陣列,哪些必填參數的內容可為空字串或空陣列,僅當$conf["canBeEmptyString"]為"false"時會生效.
253
#$conf["canBeEmpty"],字串陣列,哪些必填參數的內容可為空字串或空陣列,僅當$conf["canBeEmptyString"]為"false"時會生效.
250
#$conf["canBeEmpty"]=array();
254
#$conf["canBeEmpty"]=array();
251
#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或空陣列.
255
#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或空陣列.
252
$conf["skipableVariableCanNotBeEmpty"]=array("rootPath","name","mode","configUrl","getIpUrl","ip","dbAcct","dbPass","dbName","dbAddr","dbPort","sshAddrAndPort","headless");
256
$conf["skipableVariableCanNotBeEmpty"]=array("rootPath","name","mode","configUrl","getIpUrl","ip","dbAcct","dbPass","dbName","dbAddr","dbPort","sshAddrAndPort","headless","whiteIp");
253
#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
257
#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
254
$conf["skipableVariableName"]=array("rootPath","name","mode","configUrl","getIpUrl","ip","dbAcct","dbPass","dbName","dbAddr","dbPort","sshAddrAndPort","headless");
258
$conf["skipableVariableName"]=array("rootPath","name","mode","configUrl","getIpUrl","ip","dbAcct","dbPass","dbName","dbAddr","dbPort","sshAddrAndPort","headless","whiteIp");
255
#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
259
#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
256
$conf["skipableVariableType"]=array("array","array","array","array","array","array","array","array","array","array","array","array","array");
260
$conf["skipableVariableType"]=array("array","array","array","array","array","array","array","array","array","array","array","array","array","array");
257
#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
261
#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
258
$conf["skipableVarDefaultValue"]=array(null,null,null,null,null,null,null,null,null,null,null,null,null);
262
$conf["skipableVarDefaultValue"]=array(null,null,null,null,null,null,null,null,null,null,null,null,null);
259
#$conf["disallowAllSkipableVarIsEmpty"],字串,是否允許每個可省略參數都為空字串,預設為"true"允許,反之為"false".
263
#$conf["disallowAllSkipableVarIsEmpty"],字串,是否允許每個可省略參數都為空字串,預設為"true"允許,反之為"false".
260
#$conf["disallowAllSkipableVarIsEmpty"]="";
264
#$conf["disallowAllSkipableVarIsEmpty"]="";
261
#$conf["disallowAllSkipableVarIsEmptyArray"],字串,是否允許每個可省略參數都為空陣列,預設為"true"允許,反之為"false".
265
#$conf["disallowAllSkipableVarIsEmptyArray"],字串,是否允許每個可省略參數都為空陣列,預設為"true"允許,反之為"false".
Line 438... Line 442...
438
			$headless=$parseArgu["content"]["headless"][0];
442
			$headless=$parseArgu["content"]["headless"][0];
439
		
443
		
440
			}#if end
444
			}#if end
441
	
445
	
442
		}#if end
446
		}#if end
-
 
447
	
-
 
448
	#如果有 whiteIp 參數
-
 
449
	if(isset($parseArgu["content"]["whiteIp"])){
-
 
450
	
-
 
451
		#針對每個白名單ip
-
 
452
		foreach($parseArgu["content"]["whiteIp"] as $ip){
-
 
453
		
-
 
454
			#儲存起來
-
 
455
			$whiteIp[]=$ip;
-
 
456
		
-
 
457
			}#foreach end
-
 
458
	
-
 
459
		}#if end
443
 
460
 
444
	}#if end
461
	}#if end
445
 
462
 
446
#如果要使用不自動輸出內容的 allInOneForCI.php 檔案
463
#如果要使用不自動輸出內容的 allInOneForCI.php 檔案
447
if($headless==="true"){
464
if($headless==="true"){
Line 1507... Line 1524...
1507
	#異常結束執行
1524
	#異常結束執行
1508
	exit(1);
1525
	exit(1);
1509
 
1526
 
1510
	}#if end
1527
	}#if end
1511
 
1528
 
-
 
1529
#如果 $whiteIp 不為空
-
 
1530
if(count($whiteIp)>0){
-
 
1531
 
-
 
1532
	#如果有 ip-blockerd.service 存在
-
 
1533
	
-
 
1534
	#設置白名單ip
-
 
1535
 
-
 
1536
	}#if end
-
 
1537
 
1512
#於 /etc/systemd/system 底下建立 $rootPath.$name."/usr/lib/systemd/system" 底下所有服務檔案的軟連結.
1538
#於 /etc/systemd/system 底下建立 $rootPath.$name."/usr/lib/systemd/system" 底下所有服務檔案的軟連結.
1513
#函式說明:
1539
#函式說明:
1514
#針對特定目錄下的內容建立軟連結.
1540
#針對特定目錄下的內容建立軟連結.
1515
#回傳結果:
1541
#回傳結果:
1516
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
1542
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.