mirror of https://github.com/kubevela/kubevela.git
40 lines
738 B
Bash
40 lines
738 B
Bash
#!/bin/bash
|
|
|
|
BEGIN=${BEGIN:-1}
|
|
SIZE=${SIZE:-1000}
|
|
WORKER=${WORKER:-6}
|
|
VERSION=${VERSION:-1}
|
|
CLUSTER=${CLUSTER:-4}
|
|
QPS=${QPS:-1}
|
|
|
|
SHARD=${SHARD:-3}
|
|
|
|
TEMPLATE=${TEMPLATE:-"light"}
|
|
|
|
END=$(expr $BEGIN + $SIZE - 1)
|
|
|
|
waitTime=$(expr 1000 / $QPS)e-3
|
|
|
|
run() {
|
|
for i in $(seq $1 $3 $2); do
|
|
sid=$(expr $i % $SHARD)
|
|
v=${VERSION}
|
|
c=$(expr $i % $CLUSTER)
|
|
cat ./app-templates/$TEMPLATE.yaml | \
|
|
sed 's/ID/'$i'/g' | \
|
|
sed 's/SHARD/'$sid'/g' | \
|
|
sed 's/VERSION/'$v'/g' | \
|
|
sed 's/CLUSTER/'$c'/g' | \
|
|
kubectl apply -f -
|
|
echo "worker $4: apply app $i to $sid"
|
|
sleep $waitTime
|
|
done
|
|
echo "worker $4: done"
|
|
}
|
|
|
|
for i in $(seq 1 $WORKER); do
|
|
run $(expr $BEGIN + $i - 1) $END $WORKER $i &
|
|
done
|
|
|
|
wait
|