Skip to content

Commit 4deab96

Browse files
authored
Release 3.8.0 (#163)
1 parent 4399477 commit 4deab96

File tree

13 files changed

+347
-184
lines changed

13 files changed

+347
-184
lines changed

.github/workflows/build-test.yml

Lines changed: 79 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ jobs:
1010
deploy:
1111
name: K8s QuickStart CI test
1212
runs-on: ubuntu-latest
13-
timeout-minutes: 30
13+
timeout-minutes: 40
1414

1515
steps:
1616
- name: Set env and tools
@@ -173,6 +173,84 @@ jobs:
173173
kubectl delete secret test-tls
174174
kubectl delete pvc --all
175175
176+
- name: Test Comprehensive Vertical Scaling
177+
run: |
178+
REPO=solace/solace-pubsub-standard
179+
TAG=latest
180+
181+
# Deploy broker with specific scaling parameters
182+
183+
echo "Installing broker with comprehensive vertical scaling parameters"
184+
helm install scaling-test pubsubplus \
185+
--set solace.systemScaling.maxConnections=1000 \
186+
--set solace.systemScaling.maxQueueMessages=100 \
187+
--set solace.systemScaling.maxSpoolUsage=1500 \
188+
--set solace.systemScaling.cpu=2 \
189+
--set solace.systemScaling.memory=6410Mi \
190+
--set solace.systemScaling.maxKafkaBridgeCount=10 \
191+
--set solace.systemScaling.maxKafkaBrokerConnectionCount=300 \
192+
--set solace.systemScaling.maxBridgeCount=25 \
193+
--set solace.systemScaling.maxSubscriptionCount=50000 \
194+
--set solace.systemScaling.maxGuaranteedMessageSize=30 \
195+
--set solace.usernameAdminPassword=admin
196+
197+
kubectl get statefulset,svc,pods,pvc,pv --show-labels
198+
199+
# Wait for broker to become active
200+
echo "Waiting for broker to become active"
201+
sleep 60
202+
until kubectl get pods --show-labels | grep scaling-test-pubsubplus-0 | grep -m 1 -E '1/1'; do sleep 10; done
203+
until kubectl get pods --show-labels | grep scaling-test-pubsubplus- | grep -m 1 -E 'active=true'; do sleep 10; done
204+
205+
# Verify environment variables are set correctly in the pod
206+
echo "Verifying environment variables..."
207+
kubectl exec scaling-test-pubsubplus-0 -- env | grep SYSTEM_SCALING_MAXKAFKABRIDGECOUNT | grep "10"
208+
kubectl exec scaling-test-pubsubplus-0 -- env | grep SYSTEM_SCALING_MAXKAFKABROKERCONNECTIONCOUNT | grep "300"
209+
kubectl exec scaling-test-pubsubplus-0 -- env | grep SYSTEM_SCALING_MAXBRIDGECOUNT | grep "25"
210+
kubectl exec scaling-test-pubsubplus-0 -- env | grep SYSTEM_SCALING_MAXSUBSCRIPTIONCOUNT | grep "50000"
211+
kubectl exec scaling-test-pubsubplus-0 -- env | grep SYSTEM_SCALING_MAXGUARANTEEDMESSAGESIZE | grep "30"
212+
213+
214+
# Verify the broker configuration through SEMP API
215+
echo "Verifying broker configuration through SEMP API..."
216+
export url="$(kubectl get svc scaling-test-pubsubplus -o jsonpath='{.status.loadBalancer.ingress[0].ip}')"
217+
echo "Broker URL: $url"
218+
219+
# Wait for SEMP API to be available
220+
sleep 30
221+
222+
# Test basic connectivity
223+
curl -s -u admin:admin http://$url:8080/SEMP -d "<rpc><show><version></version></show></rpc>"
224+
225+
# Test Sytem configuration
226+
curl -s -u admin:admin http://$url:8080/SEMP -d "<rpc><show><system></system></show></rpc>"
227+
228+
# Check Kafka Bridge Count through SEMP
229+
echo "Checking max Kafka Bridge Count through SEMP..."
230+
result=$(curl -s -u admin:admin "http://$url:8080/SEMP" -d "<rpc><show><system></system></show></rpc>" | grep "<max-kafka-bridges>10</max-kafka-bridges>")
231+
if [ -z "$result" ]; then
232+
echo "Expected value not found!"
233+
exit 1
234+
else
235+
echo
236+
echo "PASSED: Found: $result"
237+
fi
238+
239+
# Check max bridge Count through SEMP
240+
echo "Checking max Bridge Count through SEMP..."
241+
result=$(curl -s -u admin:admin "http://$url:8080/SEMP" -d "<rpc><show><system></system></show></rpc>" | grep "<max-bridges>25</max-bridges>")
242+
if [ -z "$result" ]; then
243+
echo "Expected value not found!"
244+
exit 1
245+
else
246+
echo
247+
echo "PASSED: Found: $result"
248+
fi
249+
250+
# Clean up
251+
helm delete scaling-test
252+
kubectl delete pvc --all
253+
176254
- name: Create chart variants
177255
run: |
178256
bash docs/helm-charts/create-chart-variants.sh; # Create chart variants

README.md

Lines changed: 36 additions & 36 deletions
Large diffs are not rendered by default.

docs/PubSubPlusK8SDeployment.md

Lines changed: 67 additions & 67 deletions
Large diffs are not rendered by default.

docs/helm-charts/create-chart-variants.sh

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@
66

77
# Customize pubsubplus-ha
88
cp -r pubsubplus/ pubsubplus-ha/
9-
sed -i 's/description:.*$/description: Deploy an HA redundancy group of Solace PubSub+ Event Broker Software onto a Kubernetes Cluster/g' pubsubplus-ha/Chart.yaml
10-
sed -i '/charts.openshift.io\/name:/ [email protected]/name.*@charts.openshift.io/name: PubSub+ Event Broker, HA@g' pubsubplus-ha/Chart.yaml
9+
sed -i 's/description:.*$/description: Deploy an HA redundancy group of Solace Event Broker Software onto a Kubernetes Cluster/g' pubsubplus-ha/Chart.yaml
10+
sed -i '/charts.openshift.io\/name:/ [email protected]/name.*@charts.openshift.io/name: Solace Event Broker, HA@g' pubsubplus-ha/Chart.yaml
1111
sed -i '/name:/ s/pubsubplus/pubsubplus-ha/g' pubsubplus-ha/Chart.yaml
1212
# no need to update solace.size and storage.size
1313
sed -i 's/redundancy:.*$/redundancy: true/g' pubsubplus-ha/values.yaml
@@ -18,21 +18,21 @@ helm package pubsubplus-ha
1818

1919
# Customize pubsubplus-dev
2020
cp -r pubsubplus/ pubsubplus-dev/
21-
sed -i 's/description:.*$/description: Deploy a minimum footprint single-node non-HA Solace PubSub+ Event Broker Software onto a Kubernetes Cluster for development purposes/g' pubsubplus-dev/Chart.yaml
22-
sed -i '/charts.openshift.io\/name:/ [email protected]/name.*@charts.openshift.io/name: PubSub+ Event Broker for Developers@g' pubsubplus-dev/Chart.yaml
21+
sed -i 's/description:.*$/description: Deploy a minimum footprint single-node non-HA Solace Event Broker Software onto a Kubernetes Cluster for development purposes/g' pubsubplus-dev/Chart.yaml
22+
sed -i '/charts.openshift.io\/name:/ [email protected]/name.*@charts.openshift.io/name: Solace Event Broker for Developers@g' pubsubplus-dev/Chart.yaml
2323
sed -i '/name:/ s/pubsubplus/pubsubplus-dev/g' pubsubplus-dev/Chart.yaml
2424
sed -i 's/size: prod.*$/size: dev/g' pubsubplus-dev/values.yaml
2525
sed -i 's/size: .*Gi/size: 10Gi/g' pubsubplus-dev/values.yaml
26-
sed -i 's/# Solace PubSub+ Message Broker Helm Chart/# Solace PubSub+ Message Broker Helm Chart for Developers/g' pubsubplus-dev/README.md
26+
sed -i 's/# Solace Event Broker Software Helm Chart/# Solace Event Broker Software Helm Chart for Developers/g' pubsubplus-dev/README.md
2727
sed -i 's/This chart bootstraps a single-node or HA deployment/This chart bootstraps minimum single-node deployment for Developers/g' pubsubplus-dev/README.md
2828
sed -i 's@solacecharts/pubsubplus@solacecharts/pubsubplus-dev@g' pubsubplus-dev/README.md
2929
sed -i '/`solace.size`/ s/| `prod.*` |/| `dev` |/g' pubsubplus-dev/README.md
3030
sed -i '/`storage.size`/ s/| `..Gi` |/| `10Gi` |/g' pubsubplus-dev/README.md
3131
helm package pubsubplus-dev
3232

3333
# Customize pubsubplus
34-
sed -i 's/description:.*$/description: Deploy a single-node non-HA Solace PubSub+ Event Broker Software onto a Kubernetes Cluster/g' pubsubplus/Chart.yaml
35-
sed -i '/charts.openshift.io\/name:/ [email protected]/name.*@charts.openshift.io/name: PubSub+ Event Broker, non-HA@g' pubsubplus/Chart.yaml
34+
sed -i 's/description:.*$/description: Deploy a single-node non-HA Solace Event Broker Software onto a Kubernetes Cluster/g' pubsubplus/Chart.yaml
35+
sed -i '/charts.openshift.io\/name:/ [email protected]/name.*@charts.openshift.io/name: Solace Event Broker, non-HA@g' pubsubplus/Chart.yaml
3636
# no need to update Chart.yaml name
3737
# no need to update values.yaml solace.redundancy, solace.size and storage.size
3838
sed -i 's/This chart bootstraps a single-node or HA deployment/This chart bootstraps a single-node deployment/g' pubsubplus/README.md
@@ -48,7 +48,7 @@ for variant in '' '-dev' '-ha' ;
4848
sed -i '/name:/ s/pubsubplus/pubsubplus-openshift/g' pubsubplus-openshift"$variant"/Chart.yaml
4949
sed -i '/securityContext/,/enabled: true/ s/enabled: true/enabled: false/' pubsubplus-openshift"$variant"/values.yaml
5050
sed -i 's@solace/[email protected]/solace/pubsubplus-standard@g' pubsubplus-openshift"$variant"/values.yaml
51-
sed -i 's%\[Solace PubSub+ Software Event Broker on Kubernetes Documentation\].*[.]%[Solace PubSub+ Software Event Broker on OpenShift Documentation](https://github.com/SolaceProducts/pubsubplus-openshift-quickstart/blob/master/docs/PubSubPlusOpenShiftDeployment.md).%g' pubsubplus-openshift"$variant"/README.md
51+
sed -i 's%\[Solace Event Broker on Kubernetes Documentation\].*[.]%[Solace Event Broker on OpenShift Documentation](https://github.com/SolaceProducts/pubsubplus-openshift-quickstart/blob/master/docs/PubSubPlusOpenShiftDeployment.md).%g' pubsubplus-openshift"$variant"/README.md
5252
sed -i '/`securityContext.enabled`/ s/| `true` meaning.* |/| `false` |/g' pubsubplus-openshift"$variant"/README.md
5353
sed -i 's%helm repo add.*%helm repo add openshift-helm-charts https://charts.openshift.io%g' pubsubplus-openshift"$variant"/README.md
5454
sed -i 's%solacecharts/pubsubplus%openshift-helm-charts/pubsubplus-openshift%g' pubsubplus-openshift"$variant"/README.md

pubsubplus/Chart.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
apiVersion: v2
2-
description: Deploy Solace PubSub+ Event Broker Singleton or HA redundancy group onto a Kubernetes Cluster
2+
description: Deploy Solace Event Broker Singleton or HA redundancy group onto a Kubernetes Cluster
33
name: pubsubplus
4-
version: 3.7.0
5-
icon: https://solaceproducts.github.io/pubsubplus-kubernetes-helm-quickstart/images/PubSubPlus.png
4+
version: 3.8.0
5+
icon: https://solaceproducts.github.io/pubsubplus-kubernetes-helm-quickstart/images/solace.png
66
kubeVersion: '>= 1.10.0-0'
77
maintainers:
88
- name: Solace Community Forum
@@ -26,4 +26,4 @@ keywords:
2626
- event integration
2727
- middleware
2828
annotations:
29-
charts.openshift.io/name: PubSub+ Event Broker
29+
charts.openshift.io/name: Solace Event Broker

0 commit comments

Comments
 (0)