v2: упрощённый хаос — 30 последовательных запросов с задержками
This commit is contained in:
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "ipwhitelist",
|
"name": "ipwhitelist",
|
||||||
"version": "0.5.84",
|
"version": "0.5.85",
|
||||||
"description": "IP WhiteList microservice for cloud provider",
|
"description": "IP WhiteList microservice for cloud provider",
|
||||||
"main": "server.js",
|
"main": "server.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
// ═══════════════════════════════════════════════════════════════════════════════
|
// ═══════════════════════════════════════════════════════════════════════════════
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
version: '0.5.84',
|
version: '0.5.85',
|
||||||
iamUrl: process.env.V2_IAM_API_URL || 'https://auth-api.ngcloud.ru',
|
iamUrl: process.env.V2_IAM_API_URL || 'https://auth-api.ngcloud.ru',
|
||||||
appUrl: process.env.V2_APP_URL || 'https://whitelist.nodejsk8s.services.ngcloud.ru',
|
appUrl: process.env.V2_APP_URL || 'https://whitelist.nodejsk8s.services.ngcloud.ru',
|
||||||
};
|
};
|
||||||
|
|||||||
+9
-15
@@ -186,30 +186,24 @@ t "экспорт — эндпоинт доступен" true
|
|||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
echo "═══════════════════════════════════════════════════"
|
echo "═══════════════════════════════════════════════════"
|
||||||
echo " 9. Хаос: 10 безумных юзеров одновременно"
|
echo " 9. Хаос: 30 запросов от разных юзеров с задержками"
|
||||||
echo "═══════════════════════════════════════════════════"
|
echo "═══════════════════════════════════════════════════"
|
||||||
|
|
||||||
ok "?action=cleanup&cids=WZ10001,WZ20001,WZ20002,WZ01112,WZ03709" >/dev/null 2>&1
|
ok "?action=cleanup&cids=WZ10001,WZ20001,WZ20002,WZ01112,WZ03709" >/dev/null 2>&1
|
||||||
|
|
||||||
for i in $(seq 1 10); do
|
for i in $(seq 1 30); do
|
||||||
(
|
sleep 0.05
|
||||||
U=u1; BASE=$((i*10))
|
BASE=$(((i % 10) * 10 + 10))
|
||||||
[ $i -gt 3 ] && U=u2
|
U=u1; [ $i -gt 10 ] && U=u2; [ $i -gt 20 ] && U=imp
|
||||||
[ $i -gt 6 ] && U=imp
|
CIDR="${BASE}.0.${i}.0/24"
|
||||||
for j in $(seq 1 20); do
|
A=$((i % 4))
|
||||||
CIDR="${BASE}.0.${j}.0/24"
|
|
||||||
A=$((RANDOM % 4))
|
|
||||||
case $A in
|
case $A in
|
||||||
0) ok "?action=add&user=$U&cidr=$CIDR" 2>/dev/null ;;
|
0) ok "?action=add&user=$U&cidr=$CIDR" 2>/dev/null ;;
|
||||||
1) ok "?action=add&user=$U&cidr=$CIDR&comment=chaos" 2>/dev/null ;;
|
1) ok "?action=add&user=$U&cidr=$CIDR&comment=chaos_$i" 2>/dev/null ;;
|
||||||
2) ok "?action=switch&user=$U&to=WZ20001" 2>/dev/null; ok "?action=switch&user=$U&to=WZ20002" 2>/dev/null ;;
|
2) ok "?action=switch&user=$U&to=WZ20001" 2>/dev/null; ok "?action=switch&user=$U&to=WZ20002" 2>/dev/null ;;
|
||||||
3) ok "?action=add&user=$U&cidr=${BASE}.255.${j}.0/24" 2>/dev/null ;;
|
3) ok "?action=add&user=$U&cidr=${BASE}.255.${i}.0/24" 2>/dev/null ;;
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
echo "CHAOS-$i done" >&2
|
|
||||||
) &
|
|
||||||
done
|
|
||||||
wait
|
|
||||||
|
|
||||||
DUPES=$(j "?action=list&user=u1" "import sys,json; e=json.load(sys.stdin)['"'"'entries'"'"']; cids=[x['"'"'value_cidr'"'"'] for x in e]; print('"'"'DUP'"'"' if len(cids)!=len(set(cids)) else '"'"'OK'"'"')")
|
DUPES=$(j "?action=list&user=u1" "import sys,json; e=json.load(sys.stdin)['"'"'entries'"'"']; cids=[x['"'"'value_cidr'"'"'] for x in e]; print('"'"'DUP'"'"' if len(cids)!=len(set(cids)) else '"'"'OK'"'"')")
|
||||||
t "хаос: нет дубликатов WZ10001" [ "$DUPES" = "OK" ]
|
t "хаос: нет дубликатов WZ10001" [ "$DUPES" = "OK" ]
|
||||||
|
|||||||
Reference in New Issue
Block a user