Loading src/tests/mwc26-f5ga/deploy.sh +129 −35 Original line number Diff line number Diff line #!/bin/bash # Copyright 2022-2025 ETSI SDG TeraFlowSDN (TFS) (https://tfs.etsi.org/) # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. echo "Starting deployment of MWC26-F5GA test environment..." # Assuming the instances are named as: simap-server, tfs-e2e-ctrl, tfs-agg-ctrl, tfs-ip-ctrl # Get the current hostname HOSTNAME=$(hostname) echo "Deploying in ${HOSTNAME}..." case "$HOSTNAME" in simap-server) echo "Building SIMAP Server..." cd ~/tfs-ctrl/ docker buildx build -t simap-server:mock -f ./src/tests/tools/simap_server/Dockerfile . Loading @@ -24,7 +46,7 @@ docker rm --force nce-fan-ctrl docker rm --force nce-t-ctrl docker rm --force ai-engine # echo "Deploying support services..." echo "Deploying support services..." docker run --detach --name simap-server --publish 8080:8080 \ -e INFLUXDB_HOST=10.254.0.9 \ -e INFLUXDB_PORT=8181 \ Loading @@ -39,11 +61,83 @@ docker run --detach --name ai-engine --publish 8084:8080 \ --env SIMAP_SERVER_ADDRESS=172.17.0.1 --env SIMAP_SERVER_PORT=8080 \ --env SIMAP_SERVER_USERNAME=admin --env SIMAP_SERVER_PASSWORD=admin \ ai-engine:latest # NOTE: If testing, run client (src/tests/tools/simap_server/run_client.sh) to manually populate SIMAP Server with telemetry data. sleep 2 docker ps -a echo "Deployment complete." ;; tfs-e2e-ctrl) echo "Deploying TFS E2E Controller..." sed -i 's|\(<h2>ETSI TeraFlowSDN Controller\)</h2>|\1 (End-to-End)</h2>|' src/webui/service/templates/main/home.html source ~/tfs-ctrl/src/tests/ecoc25-f5ga-telemetry/deploy-specs-e2e.sh ./deploy/all.sh echo "Waiting for NATS connection..." while ! kubectl --namespace $TFS_K8S_NAMESPACE logs deployment/contextservice -c server 2>&1 | grep -q 'Subscriber is Ready? True'; do sleep 1; done kubectl --namespace $TFS_K8S_NAMESPACE logs deployment/contextservice -c server ;; tfs-agg-ctrl) echo "Deploying TFS Agg Controller..." sed -i 's|\(<h2>ETSI TeraFlowSDN Controller\)</h2>|\1 (Aggregation)</h2>|' src/webui/service/templates/main/home.html source ~/tfs-ctrl/src/tests/ecoc25-f5ga-telemetry/deploy-specs-agg.sh ./deploy/all.sh echo "Waiting for NATS connection..." while ! kubectl --namespace $TFS_K8S_NAMESPACE logs deployment/contextservice -c server 2>&1 | grep -q 'Subscriber is Ready? True'; do sleep 1; done kubectl --namespace $TFS_K8S_NAMESPACE logs deployment/contextservice -c server ;; tfs-ip-ctrl) echo "Deploying TFS IP Controller..." sed -i 's|\(<h2>ETSI TeraFlowSDN Controller\)</h2>|\1 (IP)</h2>|' src/webui/service/templates/main/home.html source ~/tfs-ctrl/src/tests/ecoc25-f5ga-telemetry/deploy-specs-ip.sh ./deploy/all.sh # echo "Waiting for NATS connection..." # while ! kubectl --namespace $TFS_K8S_NAMESPACE logs deployment/contextservice -c server 2>&1 | grep -q 'Subscriber is Ready? True'; do sleep 1; done # kubectl --namespace $TFS_K8S_NAMESPACE logs deployment/contextservice -c server ;; *) echo "Unknown host: $HOSTNAME" echo "No commands to run." ;; esac echo "Ready!" # echo "Starting deployment of MWC26-F5GA test environment..." # echo "Cleaning up..." # docker rm --force simap-server # docker rm --force nce-fan-ctrl # docker rm --force nce-t-ctrl # docker rm --force ai-engine # # echo "Deploying support services..." # docker run --detach --name simap-server --publish 8080:8080 \ # -e INFLUXDB_HOST=10.254.0.9 \ # -e INFLUXDB_PORT=8181 \ # simap-server:mock # docker run --detach --name nce-fan-ctrl --publish 8081:8080 --env SIMAP_ADDRESS=172.17.0.1 --env SIMAP_PORT=8080 nce-fan-ctrl:mock # docker run --detach --name nce-t-ctrl --publish 8082:8080 --env SIMAP_ADDRESS=172.17.0.1 --env SIMAP_PORT=8080 nce-t-ctrl:mock # echo "Deploying AI Analytics Engine..." # docker run --detach --name ai-engine --publish 8084:8080 \ # -e INFLUXDB_HOST=10.254.0.9 -e INFLUXDB_PORT=8181 \ # --env SIMAP_SERVER_ADDRESS=172.17.0.1 --env SIMAP_SERVER_PORT=8080 \ # --env SIMAP_SERVER_USERNAME=admin --env SIMAP_SERVER_PASSWORD=admin \ # ai-engine:latest # # NOTE: If testing, run client (src/tests/tools/simap_server/run_client.sh) to manually populate SIMAP Server with telemetry data. # sleep 2 # docker ps -a # echo "Deployment complete." Loading
src/tests/mwc26-f5ga/deploy.sh +129 −35 Original line number Diff line number Diff line #!/bin/bash # Copyright 2022-2025 ETSI SDG TeraFlowSDN (TFS) (https://tfs.etsi.org/) # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. echo "Starting deployment of MWC26-F5GA test environment..." # Assuming the instances are named as: simap-server, tfs-e2e-ctrl, tfs-agg-ctrl, tfs-ip-ctrl # Get the current hostname HOSTNAME=$(hostname) echo "Deploying in ${HOSTNAME}..." case "$HOSTNAME" in simap-server) echo "Building SIMAP Server..." cd ~/tfs-ctrl/ docker buildx build -t simap-server:mock -f ./src/tests/tools/simap_server/Dockerfile . Loading @@ -24,7 +46,7 @@ docker rm --force nce-fan-ctrl docker rm --force nce-t-ctrl docker rm --force ai-engine # echo "Deploying support services..." echo "Deploying support services..." docker run --detach --name simap-server --publish 8080:8080 \ -e INFLUXDB_HOST=10.254.0.9 \ -e INFLUXDB_PORT=8181 \ Loading @@ -39,11 +61,83 @@ docker run --detach --name ai-engine --publish 8084:8080 \ --env SIMAP_SERVER_ADDRESS=172.17.0.1 --env SIMAP_SERVER_PORT=8080 \ --env SIMAP_SERVER_USERNAME=admin --env SIMAP_SERVER_PASSWORD=admin \ ai-engine:latest # NOTE: If testing, run client (src/tests/tools/simap_server/run_client.sh) to manually populate SIMAP Server with telemetry data. sleep 2 docker ps -a echo "Deployment complete." ;; tfs-e2e-ctrl) echo "Deploying TFS E2E Controller..." sed -i 's|\(<h2>ETSI TeraFlowSDN Controller\)</h2>|\1 (End-to-End)</h2>|' src/webui/service/templates/main/home.html source ~/tfs-ctrl/src/tests/ecoc25-f5ga-telemetry/deploy-specs-e2e.sh ./deploy/all.sh echo "Waiting for NATS connection..." while ! kubectl --namespace $TFS_K8S_NAMESPACE logs deployment/contextservice -c server 2>&1 | grep -q 'Subscriber is Ready? True'; do sleep 1; done kubectl --namespace $TFS_K8S_NAMESPACE logs deployment/contextservice -c server ;; tfs-agg-ctrl) echo "Deploying TFS Agg Controller..." sed -i 's|\(<h2>ETSI TeraFlowSDN Controller\)</h2>|\1 (Aggregation)</h2>|' src/webui/service/templates/main/home.html source ~/tfs-ctrl/src/tests/ecoc25-f5ga-telemetry/deploy-specs-agg.sh ./deploy/all.sh echo "Waiting for NATS connection..." while ! kubectl --namespace $TFS_K8S_NAMESPACE logs deployment/contextservice -c server 2>&1 | grep -q 'Subscriber is Ready? True'; do sleep 1; done kubectl --namespace $TFS_K8S_NAMESPACE logs deployment/contextservice -c server ;; tfs-ip-ctrl) echo "Deploying TFS IP Controller..." sed -i 's|\(<h2>ETSI TeraFlowSDN Controller\)</h2>|\1 (IP)</h2>|' src/webui/service/templates/main/home.html source ~/tfs-ctrl/src/tests/ecoc25-f5ga-telemetry/deploy-specs-ip.sh ./deploy/all.sh # echo "Waiting for NATS connection..." # while ! kubectl --namespace $TFS_K8S_NAMESPACE logs deployment/contextservice -c server 2>&1 | grep -q 'Subscriber is Ready? True'; do sleep 1; done # kubectl --namespace $TFS_K8S_NAMESPACE logs deployment/contextservice -c server ;; *) echo "Unknown host: $HOSTNAME" echo "No commands to run." ;; esac echo "Ready!" # echo "Starting deployment of MWC26-F5GA test environment..." # echo "Cleaning up..." # docker rm --force simap-server # docker rm --force nce-fan-ctrl # docker rm --force nce-t-ctrl # docker rm --force ai-engine # # echo "Deploying support services..." # docker run --detach --name simap-server --publish 8080:8080 \ # -e INFLUXDB_HOST=10.254.0.9 \ # -e INFLUXDB_PORT=8181 \ # simap-server:mock # docker run --detach --name nce-fan-ctrl --publish 8081:8080 --env SIMAP_ADDRESS=172.17.0.1 --env SIMAP_PORT=8080 nce-fan-ctrl:mock # docker run --detach --name nce-t-ctrl --publish 8082:8080 --env SIMAP_ADDRESS=172.17.0.1 --env SIMAP_PORT=8080 nce-t-ctrl:mock # echo "Deploying AI Analytics Engine..." # docker run --detach --name ai-engine --publish 8084:8080 \ # -e INFLUXDB_HOST=10.254.0.9 -e INFLUXDB_PORT=8181 \ # --env SIMAP_SERVER_ADDRESS=172.17.0.1 --env SIMAP_SERVER_PORT=8080 \ # --env SIMAP_SERVER_USERNAME=admin --env SIMAP_SERVER_PASSWORD=admin \ # ai-engine:latest # # NOTE: If testing, run client (src/tests/tools/simap_server/run_client.sh) to manually populate SIMAP Server with telemetry data. # sleep 2 # docker ps -a # echo "Deployment complete."